[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-81701":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":15,"forks30d":15,"starsTrendScore":19,"compositeScore":20,"rankGlobal":10,"rankLanguage":10,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":24,"hasPages":22,"topics":25,"createdAt":10,"pushedAt":10,"updatedAt":36,"readmeContent":37,"aiSummary":38,"trendingCount":15,"starSnapshotCount":15,"syncStatus":39,"lastSyncTime":40,"discoverSource":41},81701,"crew44","getcrew44\u002Fcrew44","getcrew44","Orchestrate a crew of specialist AI agents in one local-first workspace.  Each role on its best model, with memory and skills that compound. Free, MIT.","https:\u002F\u002Fcrew44.io",null,"Go",328,19,14,0,6,191,282,61,3.9,"MIT License",false,"main",true,[26,27,28,29,30,31,32,33,34,35],"ai-agents","claude-code","codex","coding-agent","developer-tools","eletron","gemini","local-first","multi-agent","orchestration","2026-06-12 02:04:18","\u003Cdiv align=\"center\">\n\n\u003Cimg src=\"https:\u002F\u002Fcrew44.io\u002Fbrand\u002Fmark44-rust-512.png\" alt=\"Crew44\" width=\"96\" height=\"96\" \u002F>\n\n# Crew44\n\n### A local-first orchestrator for running specialist AI agents on your own machine.\n\n[![CI](https:\u002F\u002Fgithub.com\u002Fgetcrew44\u002Fcrew44\u002Factions\u002Fworkflows\u002Fci.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Fgetcrew44\u002Fcrew44\u002Factions\u002Fworkflows\u002Fci.yml)\n[![License: MIT](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-MIT-c4644a.svg)](LICENSE)\n![Platforms](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fplatforms-macOS%20·%20Windows%20·%20Linux-1c1a17)\n![Free](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fprice-free-5b9c5f.svg)\n\n\n[**Download**](https:\u002F\u002Fcrew44.io\u002Fdownload) · [Website](https:\u002F\u002Fcrew44.io) · [What's new](CHANGELOG.md)\n\n\n\u003Ca href=\"https:\u002F\u002Fwww.producthunt.com\u002Fproducts\u002Fcrew44?embed=true&amp;utm_source=badge-featured&amp;utm_medium=badge&amp;utm_campaign=badge-crew44\" target=\"_blank\" rel=\"noopener noreferrer\">\u003Cimg alt=\"Crew44 - Turn coding agents into specialist teams | Product Hunt\" width=\"250\" height=\"54\" src=\"https:\u002F\u002Fapi.producthunt.com\u002Fwidgets\u002Fembed-image\u002Fv1\u002Ffeatured.svg?post_id=1156940&amp;theme=light&amp;t=1779982023946\">\u003C\u002Fa>\n\u003C\u002Fdiv>\n\n\n---\n\nCrew44 turns the AI agents you already run — Claude Code, Codex, Gemini, Cursor, and more — into a coordinated team. Instead of one generalist agent re-explaining context to itself all day, you assemble specialists, bind each to the model that wins at its job, and let them hand work off to each other inside one shared workspace.\n\nEverything runs on your machine. State is plain files under `~\u002F.crew44\u002F`. No cloud account, no subscription, no telemetry — the only network traffic is whatever your underlying coding agent already makes.\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fce6e5293-6c58-4c37-8e00-74d654d2277c\n\n## Download\n\nGrab a signed desktop build for your platform — **free, no account required:**\n\n| Platform | Format |\n|----------|--------|\n| **macOS** (Apple Silicon) | `.dmg` |\n| **Windows** (x64) | `.exe` installer |\n| **Linux** (ARM64) | `.AppImage` \u002F `.deb` |\n\n→ **[crew44.io\u002Fdownload](https:\u002F\u002Fcrew44.io\u002Fdownload)**\n\nPrefer to build it yourself? See [Getting started](#getting-started).\n\n## Why Crew44\n\n| The old way — one agent | With Crew44 — a crew of specialists |\n|-------------------------|----------------------|\n| A new contractor every morning: never seen your repo, never learned your conventions. | **Per-project memory.** Monday's fix is in the crew's muscle memory by Thursday. |\n| Skills never compound — whatever it figured out is gone by next task. | **Skills that compound.** Capture a workflow once as `SKILL.md`; every agent you attach it to gets it on every turn, across providers. |\n| One generalist plans, builds, and reviews — no deep expertise in any role. | **Specialists in parallel.** Planner drafts while builder codes while reviewer checks. Handovers ship the baton, not the whole context. |\n| Locked to a single model: pays Opus rates for a rename, runs a fast model on a hard call. | **The right model per role.** Opus plans, GPT-5.5 codes, a local model reviews — swap per task, not per app. |\n\n\n\n\n## Supported runtimes\n\nCrew44 detects and routes to any of these installed on your machine:\n\n**Claude Code · Codex · Cursor Agent · Gemini CLI · Hermes · Kimi · OpenCode · OpenClaw · Pi · Qoder · Qwen Code**\n\nThe same skills folder runs across every provider, so you're never locked in. Have another CLI? The runtime layer is a small Go interface — add an adapter under `daemon\u002Finternal\u002Fbackendagent\u002F` and it shows up in the picker.\n\n## Core concepts\n\n| Concept   | What it is                                                                                              |\n|-----------|---------------------------------------------------------------------------------------------------------|\n| Runtime   | A coding-agent CLI on disk (Claude, Codex, Cursor, …) discovered by scanning.                           |\n| Agent     | A named persona bound to one runtime + model, with an instruction and attached skills.                  |\n| Skill     | A file-based capability (`SKILL.md` + assets) injected into the runtime session when its agent runs.    |\n| Project   | A working directory plus the chats that belong to it. Stored under `Documents\u002FCrew44\u002F` or a folder you pick. |\n| Chat      | A turn-by-turn thread. One in-flight response at a time; events are an append-only `events.jsonl`.      |\n| Worktree  | An optional isolated git checkout for a chat. Toggle it on a new task and the crew works on its own `crew\u002F…` branch without touching your working tree. |\n| Handover  | A marker an agent emits to pass the turn to a teammate, with a one-line brief.                          |\n\nThe default crew ships with a **Partner**, an **Engineer**, a **Product Lead**, and a **Designer** — each owning a role, a model, and its own skills folder.\n\n## How it works\n\n```\n┌─────────────────┐  WebSocket JSON-RPC   ┌──────────────────┐    spawn    ┌─────────────────┐\n│  Electron \u002F UI  │ ◄───────────────────► │   Go daemon      │ ──────────► │  agent CLIs     │\n│  React 19       │                       │   127.0.0.1      │             │  (claude, codex,│\n└─────────────────┘                       └──────────────────┘             │   cursor, …)    │\n                                                   │                       └─────────────────┘\n                                                   ▼\n                                          ~\u002F.crew44\u002F  (plain-file state)\n```\n\n- **Daemon** — a single Go process at `daemon\u002F`. Owns runtime discovery, agent\u002Fskill\u002Fchat state, and the JSON-RPC + event-stream surface. Auth is a per-launch bearer token; only `\u002Fhealth` is unauthenticated.\n- **Renderer** — React 19 app in `src\u002F`. Routes for Crew (agents, skills, runtimes), Tasks (chat threads with live streaming), New Task, Auto (suggestions), and Onboarding.\n- **Mobile** — Expo app in `packages\u002Fmobile\u002F` pairs over an end-to-end encrypted Noise tunnel through a small relay, so you can read or nudge a running crew from your phone.\n\n## Privacy\n\n- All UI, state, and orchestration happens on `127.0.0.1`. Crew44 itself does not call out to any remote service.\n- The only outbound traffic is whatever the underlying coding-agent CLI you chose (`claude`, `codex`, …) makes on its own — including the on-demand headless browser, which fetches its Playwright package and Chromium via npm and visits the URLs the agent navigates to.\n- Mobile pairing, when enabled, uses a relay for NAT traversal, but the payload is end-to-end encrypted with Noise, so the relay only sees ciphertext. You can self-host the relay if you prefer; the URL is configurable.\n- No analytics, no error reporting, no phone-home.\n\n## Getting started\n\n### Prerequisites\n\n- macOS, Windows, or Linux\n- Node 20+ and Go 1.26+\n- At least one coding-agent CLI installed (`claude`, `codex`, `cursor`, …)\n\n### Run the desktop app\n\n```bash\nnpm install\nnpm run dev\n```\n\nThis builds the Go daemon, starts Vite, launches Electron, and connects the renderer once the daemon reports healthy.\n\n\n## Project layout\n\n```text\n.\n├── electron\u002F              Electron main process, preload, app assets\n├── src\u002F                   React renderer\n├── packages\u002Fmobile\u002F       Expo mobile app\n├── daemon\u002F                Go module\n│   ├── cmd\u002Fcrew44-daemon  daemon entrypoint\n│   ├── internal\u002F          app, rpc, httpapi, store, runtime, agent adapters\n│   └── test-utils\u002F\n├── docs\u002F                  manual e2e harnesses + design notes\n└── public\u002F                renderer static assets\n```\n\n## Development\n\n```bash\nnpm run dev      # development app\nnpm run build    # renderer build + local app\nnpm run web:dev  # daemon + bare Vite development server\nnpm run test     # Go tests + renderer tests + mobile tests\nnpm run clean    # remove local build artifacts\n```\n\nDaemon configuration via env vars:\n\n| Variable                                      | Default                                | Description                                              |\n|-----------------------------------------------|----------------------------------------|----------------------------------------------------------|\n| `HOST` \u002F `CREW44_DAEMON_HOST`                 | `127.0.0.1`                            | TCP listen host.                                         |\n| `PORT` \u002F `CREW44_DAEMON_PORT`                 | `8080`                                 | TCP listen port.                                         |\n| `AUTH_TOKEN` \u002F `CREW44_AUTH_TOKEN`            | empty                                  | WebSocket bearer subprotocol token. Empty = dev mode.    |\n| `CREW44_STATE_DIR`                            | `~\u002F.crew44`                            | Root directory for persisted state.                      |\n\nWhen auth is enabled, `\u002Frpc` requires WebSocket subprotocols:\n\n```js\nnew WebSocket(\"ws:\u002F\u002F127.0.0.1:8080\u002Frpc\", [\n  \"crew44.rpc.v1\",\n  `crew44.bearer.${token}`,\n])\n```\n\nSee the JSON-RPC method list and skill-injection walkthrough in [`docs\u002F`](docs\u002F).\n\n## License\n\n[MIT](LICENSE) © 2026 Mindive Labs\n\n\u003Cdiv align=\"center\">\n\u003Csub>Built for developers who'd rather lead a crew than babysit a single agent.\u003C\u002Fsub>\n\u003C\u002Fdiv>\n","Crew44 是一个用于在本地运行和协调专业AI代理的工具。它允许用户将不同的AI代理（如Claude Code、Codex等）整合到一个共享工作空间中，每个代理根据其擅长的任务绑定到最佳模型上，并且这些代理之间可以互相传递任务。项目采用Go语言编写，支持macOS、Windows和Linux平台，遵循MIT许可协议。核心功能包括持久化的项目记忆以及可复用的工作流程技能定义，使得团队能够积累经验并提高效率。适用于需要高度定制化AI辅助开发环境或希望离线使用AI编码助手的开发者场景。",2,"2026-06-11 04:06:01","CREATED_QUERY"]