Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 6 additions & 4 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,12 @@ This file provides guidance to coding agents when working with code in this repo

## What this is

`crew` is a local coordination CLI for terminal coding agents (Claude Code, Codex CLI,
Gemini CLI, Copilot CLI, Antigravity CLI, Pi CLI, opencode CLI). It gives independently running sessions a shared inbox, a
reviewed task workflow, and an optional tmux launcher. **crew never calls a model
provider itself** — it only coordinates via a workspace-local SQLite database.
`crew` is a local coordination CLI for terminal coding agents — the eight Participant CLIs
listed in `src/participants.ts` (Claude Code, Codex CLI, Gemini CLI, Copilot CLI,
Antigravity CLI, Pi CLI, Little Coder, opencode CLI). It gives independently running
sessions a shared inbox, a reviewed task workflow, and an optional tmux launcher. **crew
never calls a model provider itself** — it only coordinates via a workspace-local SQLite
database.

The package publishes as `@dichovsky/crew` but the installed executable is `crew` (the
unscoped npm name was unavailable — see DEC-7 in `docs/design/decisions.md`).
Expand Down
10 changes: 6 additions & 4 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,12 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co

## What this is

`crew` is a local coordination CLI for terminal coding agents (Claude Code, Codex CLI,
Gemini CLI, Copilot CLI, Antigravity CLI, Pi CLI, opencode CLI). It gives independently running sessions a shared inbox, a
reviewed task workflow, and an optional tmux launcher. **crew never calls a model
provider itself** — it only coordinates via a workspace-local SQLite database.
`crew` is a local coordination CLI for terminal coding agents — the eight Participant CLIs
listed in `src/participants.ts` (Claude Code, Codex CLI, Gemini CLI, Copilot CLI,
Antigravity CLI, Pi CLI, Little Coder, opencode CLI). It gives independently running
sessions a shared inbox, a reviewed task workflow, and an optional tmux launcher. **crew
never calls a model provider itself** — it only coordinates via a workspace-local SQLite
database.

The package publishes as `@dichovsky/crew` but the installed executable is `crew` (the
unscoped npm name was unavailable — see DEC-7 in `docs/design/decisions.md`).
Expand Down
25 changes: 15 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,12 @@
[![Node](https://img.shields.io/badge/node-%3E%3D24.15-brightgreen.svg)](https://nodejs.org)

crew is a command-line tool that coordinates AI coding assistants running in a terminal.
Tools such as Claude Code, Codex CLI, Gemini CLI, GitHub Copilot CLI, and Little Coder each
run as their own independent terminal session; crew gives those sessions a shared inbox for
notes, a task workflow where finished work must pass a separate review, and an optional
launcher that opens all of them side by side. crew never contacts an AI model provider
itself — it only passes coordination data between the sessions.
The eight supported tools — Claude Code, Codex CLI, Gemini CLI, GitHub Copilot CLI,
Antigravity CLI, Pi CLI, Little Coder, and opencode CLI — each run as their own independent
terminal session; crew gives those sessions a shared inbox for notes, a task workflow where
finished work must pass a separate review, and an optional launcher that opens all of them
side by side. crew never contacts an AI model provider itself — it only passes coordination
data between the sessions.

**[Interactive documentation →](https://dichovsky.github.io/crew/)** — how crew works, what it is
built from, and where its limits are, explained with diagrams you can step through.
Expand All @@ -22,9 +23,10 @@ built from, and where its limits are, explained with diagrams you can step throu
- **A task isn't done because the agent says so.** The Worker (the agent assigned the work)
finishing and the reviewer accepting the result are two separate, enforced steps
(`submitted` then `completed`), so a Worker can't mark its own work accepted.
- **Not locked to one vendor.** Claude Code, Codex CLI, Gemini CLI, Copilot CLI, Little
Coder, and locally hosted models can all join the same Crew — the group of agents sharing
one project's state. crew coordinates them; it doesn't replace them.
- **Not locked to one vendor.** Claude Code, Codex CLI, Gemini CLI, Copilot CLI, Antigravity
CLI, Pi CLI, Little Coder, opencode CLI, and locally hosted models can all join the same
Crew — the group of agents sharing one project's state. crew coordinates them; it doesn't
replace them.
- **Both a human and a script can drive it.** Every command has a plain-text form for
reading and a `--json` form that prints one complete JSON object per line for scripts to
parse — there is no separate API to learn.
Expand Down Expand Up @@ -188,7 +190,10 @@ flowchart TB
A2["Codex CLI"]
A3["Gemini CLI"]
A4["Copilot CLI"]
A5["Little Coder"]
A5["Antigravity CLI"]
A6["Pi CLI"]
A7["Little Coder"]
A8["opencode CLI"]
end

subgraph crewcli["crew CLI - one-shot process, exits after every command"]
Expand All @@ -208,7 +213,7 @@ flowchart TB
TMUX["tmux session<br/>one pane per Agent + Relay window"]
BROWSER["Browser dashboard<br/>127.0.0.1 - token-auth - SSE"]

A1 & A2 & A3 & A4 -- "crew join / send / receive / task ..." --> BIN
A1 & A2 & A3 & A4 & A5 & A6 & A7 & A8 -- "crew join / send / receive / task ..." --> BIN
BIN --> RUN --> CMD
CMD --> FMT
CMD --> WS
Expand Down
3 changes: 2 additions & 1 deletion docs/design/product-spec.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,8 @@ requires one process that stays alive for as long as the tmux session does.
- Built-in Manager, Worker, and Inspector Roles, plus per-project overrides.
- Team definitions and manual command rendering.
- An optional tmux launch (all panes running the same Participant CLI) and a session Relay.
- Explicit setup generators for Claude Code, Codex CLI, Gemini CLI, and Copilot CLI.
- Explicit setup generators for each of the eight Participant CLIs (Claude Code, Codex CLI,
Gemini CLI, Copilot CLI, Antigravity CLI, Pi CLI, Little Coder, and opencode CLI).
- Checked setup recipes for Ollama and LM Studio as Model Backends (inference servers that a
Participant CLI may use; crew itself never contacts them).
- Human-readable output and JSON output where each line is one complete JSON object, stable
Expand Down
21 changes: 12 additions & 9 deletions docs/design/srs.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,12 +49,14 @@ is expanded here into consecutive ids, tracked in
### 1.1 Purpose (§9.5.1)

crew is a command-line tool that runs on your own machine and coordinates terminal coding
agents (Claude Code, Codex CLI, Gemini CLI, Copilot CLI). This SRS specifies **all v1 software
requirements**, plus the post-v1 additions for the Console and for stopping and resuming a Team —
functional and non-functional — in enough detail to design and test against. crew coordinates
Participant CLIs (the AI command-line apps that act as Agents) that are already running; they
share one State Store, an SQLite database file inside the project's Workspace. crew **never
calls a model provider** and runs no AI model itself.
agents (the eight Participant CLIs named in
[Appendix A](#appendix-a--assumptions-dependencies-and-tbd-items), as recorded in the platform
registry). This SRS specifies **all v1 software requirements**, plus the post-v1 additions for
the Console and for stopping and resuming a Team — functional and non-functional — in enough
detail to design and test against. crew coordinates Participant CLIs (the AI command-line apps
that act as Agents) that are already running; they share one State Store, an SQLite database
file inside the project's Workspace. crew **never calls a model provider** and runs no AI model
itself.

### 1.2 Scope (§9.5.2)

Expand Down Expand Up @@ -82,7 +84,8 @@ calls a model provider** and runs no AI model itself.
crew is a standalone command-line program that other software (Participant CLIs) and a human
operator invoke. Its boundaries with the outside world:

- **System interface** — Participant CLIs (Claude Code, Codex CLI, Gemini CLI, Copilot CLI)
- **System interface** — Participant CLIs (the eight named in
[Appendix A](#appendix-a--assumptions-dependencies-and-tbd-items))
invoke `crew` subcommands; crew never invokes a model provider.
- **User interface** — a text CLI with two equally supported output formats (a human
table/line format, and `--json` output where each line is one complete JSON object —
Expand Down Expand Up @@ -508,8 +511,8 @@ rather than restating them.
or that someone edited since crew wrote it, shall require `--force` and a backup. *Verify:
automated test — `tests/integration/commands/setup.test.ts`, `tests/unit/setup-fs.test.ts`.*
- **FR-G07 — Actual invocation.** Setup output shall state the real invocation (Claude,
Gemini, Pi, Little Coder, and opencode `/crew`; Codex `$crew`; Copilot `/agent` selection
plus prompt). *Verify: automated test — `tests/unit/platforms.test.ts`.*
Gemini, Antigravity, Pi, Little Coder, and opencode `/crew`; Codex `$crew`; Copilot
`/agent` selection plus prompt). *Verify: automated test — `tests/unit/platforms.test.ts`.*
- **FR-G08 — Scoped permission guidance.** Setup guidance shall prefer permission limited to the
`crew` command. *Verify: inspection — setup-integration.md; `src/platforms/shared.ts`.*
- **FR-G09 — No automatic bypass flags.** Blunt permission-bypass flags shall never be enabled
Expand Down
5 changes: 4 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@dichovsky/crew",
"version": "0.1.1",
"description": "Local coordination for terminal coding agents (Claude Code, Codex, Gemini, Copilot, Little Coder) via a workspace-local SQLite inbox and reviewed task workflow — no daemon, no model provider.",
"description": "Local coordination for terminal coding agents (Claude Code, Codex, Gemini, Copilot, Antigravity, Pi, Little Coder, opencode) via a workspace-local SQLite inbox and reviewed task workflow — no daemon, no model provider.",
"type": "module",
"license": "MIT",
"publishConfig": {
Expand All @@ -17,7 +17,10 @@
"codex",
"gemini-cli",
"copilot-cli",
"antigravity",
"pi",
"little-coder",
"opencode",
"inbox",
"agents"
],
Expand Down
Loading