8.9 KiB
ClawTeam CLI Complete Reference
Global Options
clawteam [--version] [--json] [--data-dir PATH] <command>
--json— Output JSON instead of human-readable text. Apply before subcommand:clawteam --json team discover--data-dir PATH— Override data directory (default:~/.clawteam)
Environment Variables
ClawTeam agents use these environment variables for identity:
| Variable | Description | Example |
|---|---|---|
CLAWTEAM_AGENT_ID |
Unique agent identifier | a1b2c3d4e5f6 |
CLAWTEAM_AGENT_NAME |
Human-readable agent name | alice |
CLAWTEAM_AGENT_TYPE |
Agent role type | leader, general-purpose, researcher |
CLAWTEAM_TEAM_NAME |
Team the agent belongs to | dev-team |
CLAWTEAM_DATA_DIR |
Override data directory | /tmp/clawteam-data |
When spawning agents via clawteam spawn, these are set automatically.
Team Commands (clawteam team)
team spawn-team
Create a new team and register the leader.
clawteam team spawn-team <name> [options]
| Option | Description | Default |
|---|---|---|
--description, -d |
Team description | "" |
--agent-name, -n |
Leader agent name | "leader" |
--agent-type |
Leader agent type | "leader" |
Example:
clawteam team spawn-team dev-team -d "Backend development team" -n alice
team discover
List all existing teams.
clawteam team discover
clawteam --json team discover
Returns: name, description, leadAgentId, memberCount for each team.
team status
Show team configuration and member list.
clawteam team status <team>
team request-join
Request to join a team. Blocks until leader approves/rejects or timeout.
clawteam team request-join <team> <proposed-name> [options]
| Option | Description | Default |
|---|---|---|
--capabilities, -c |
Agent capabilities description | "" |
--timeout, -t |
Timeout in seconds | 60 |
team approve-join
Approve a pending join request (leader only).
clawteam team approve-join <team> <request-id> [--assigned-name NAME]
team reject-join
Reject a pending join request (leader only).
clawteam team reject-join <team> <request-id> [--reason TEXT]
team cleanup
Delete a team and all its data (config, inboxes, tasks).
clawteam team cleanup <team> [--force]
Inbox Commands (clawteam inbox)
inbox send
Send a point-to-point message to an agent.
clawteam inbox send <team> <to> <content> [options]
| Option | Description | Default |
|---|---|---|
--key, -k |
Routing key | None |
--type |
Message type | "message" |
inbox broadcast
Broadcast a message to all team members (except sender).
clawteam inbox broadcast <team> <content> [options]
inbox receive
Receive and consume messages from inbox (destructive — messages are deleted).
clawteam inbox receive <team> [options]
| Option | Description | Default |
|---|---|---|
--agent, -a |
Agent name (default: from env) | env |
--limit, -l |
Max messages to receive | 10 |
inbox peek
Peek at messages without consuming them (non-destructive).
clawteam inbox peek <team> [--agent NAME]
inbox watch
Watch inbox for new messages in real-time (blocking, Ctrl+C to stop).
clawteam inbox watch <team> [--agent NAME] [--poll-interval 1.0]
Task Commands (clawteam task)
task create
Create a new task.
clawteam task create <team> <subject> [options]
| Option | Description | Default |
|---|---|---|
--description, -d |
Task description | "" |
--owner, -o |
Owner agent name | "" |
--priority, -p |
Task priority: low, medium, high, urgent |
"medium" |
--blocks |
Comma-separated task IDs this blocks | None |
--blocked-by |
Comma-separated task IDs blocking this | None |
Example:
clawteam task create dev-team "Implement auth" -o alice -d "Add JWT authentication"
task get
Get a single task by ID.
clawteam task get <team> <task-id>
task update
Update a task's status, owner, or dependencies.
clawteam task update <team> <task-id> [options]
| Option | Description |
|---|---|
--status, -s |
New status: pending, in_progress, completed, blocked |
--owner, -o |
New owner |
--subject |
New subject |
--description, -d |
New description |
--priority, -p |
New priority: low, medium, high, urgent |
--add-blocks |
Comma-separated task IDs to add to blocks |
--add-blocked-by |
Comma-separated task IDs to add to blocked-by |
--force, -f |
Force override task lock |
When a task is marked completed, any tasks blocked by it are automatically unblocked (moved from blocked to pending if no other blockers remain).
task list
List all tasks for a team, with optional filters.
clawteam task list <team> [--status STATUS] [--owner NAME] [--priority LEVEL] [--sort-priority]
Board Commands (clawteam board)
board show
Show detailed team board data. Human output renders the kanban board; JSON output also includes members with inbox identity fields plus persistent message history from the event log.
clawteam board show <team>
clawteam --json board show <team>
Recent board payloads include member-aware message aliases such as memberKey, inboxName,
fromLabel, and toLabel, which are used by the browser board to filter inbox history.
board overview
Show summary of all teams in a table.
clawteam board overview
clawteam --json board overview
board live
Live-refreshing kanban board. Auto-refreshes at interval. Ctrl+C to stop.
clawteam board live <team> [--interval 2.0]
Plan Commands (clawteam plan)
plan submit
Submit a plan for leader approval. Content can be inline text or a file path.
clawteam plan submit <team> <agent> <plan-content-or-file> [--summary TEXT]
plan approve
Approve a submitted plan.
clawteam plan approve <team> <plan-id> <agent> [--feedback TEXT]
plan reject
Reject a submitted plan.
clawteam plan reject <team> <plan-id> <agent> [--feedback TEXT]
Lifecycle Commands (clawteam lifecycle)
lifecycle request-shutdown
Request an agent to shut down.
clawteam lifecycle request-shutdown <team> <from-agent> <to-agent> [--reason TEXT]
lifecycle approve-shutdown
Agent agrees to shut down.
clawteam lifecycle approve-shutdown <team> <request-id> <agent>
lifecycle reject-shutdown
Agent rejects shutdown request.
clawteam lifecycle reject-shutdown <team> <request-id> <agent> [--reason TEXT]
lifecycle idle
Send idle notification to leader (agent has no more work).
clawteam lifecycle idle <team> [--last-task ID] [--task-status STATUS]
Spawn Command
Spawn a new agent process with team environment variables.
clawteam spawn <backend> <command...> [options]
| Option | Description | Default |
|---|---|---|
--team, -t |
Team name | "default" |
--agent-name, -n |
Agent name | auto-generated |
--agent-type |
Agent type | "general-purpose" |
Backends: subprocess, tmux
Example:
clawteam spawn subprocess claude --team dev-team --agent-name bob --agent-type researcher
Identity Commands (clawteam identity)
identity show
Show current agent identity from environment variables.
clawteam identity show
identity set
Print shell export commands to set identity environment variables.
eval $(clawteam identity set --agent-name alice --team dev-team)
Data Model
Task Statuses
| Status | Description |
|---|---|
pending |
Not yet started |
in_progress |
Currently being worked on |
completed |
Done (auto-unblocks dependents) |
blocked |
Waiting on other tasks |
Message Types
| Type | Description |
|---|---|
message |
General point-to-point message |
broadcast |
Broadcast to all members |
join_request |
Request to join team |
join_approved / join_rejected |
Join response |
plan_approval_request |
Plan submitted for review |
plan_approved / plan_rejected |
Plan response |
shutdown_request |
Shutdown request |
shutdown_approved / shutdown_rejected |
Shutdown response |
idle |
Agent idle notification |
File Storage Layout
~/.clawteam/
├── teams/{team}/
│ ├── config.json # TeamConfig (name, members, leader)
│ └── inboxes/{agent}/ # msg-{timestamp}-{uuid}.json files
├── tasks/{team}/
│ └── task-{id}.json # Individual task files
└── plans/
└── {agent}-{id}.md # Plan documents