tmux-ide

Commands

CLI commands reference

tmux-ide

Launch the IDE from the current directory. Reads ide.yml and creates a tmux session.

tmux-ide

You can also point it at a different directory:

tmux-ide ~/Developer/other-project

If a session with the same name already exists, it will reattach to it instead of recreating it. To force a fresh session, run tmux-ide stop first.

tmux-ide init

Scaffold a new ide.yml in the current directory. Auto-detects your project stack and picks the right template.

cd ~/Developer/my-project
tmux-ide init
# → Detected next + convex. Created ide.yml for "my-project".

Force a specific template:

tmux-ide init --template nextjs

Available templates: default, nextjs, convex, vite, python, go, agent-team, agent-team-nextjs, agent-team-monorepo

Will refuse to overwrite an existing ide.yml.

tmux-ide stop

Kill the tmux session for the current project.

tmux-ide stop

Reads the session name from ide.yml. If no config is found, uses the directory name as the session name.

tmux-ide restart

Stop the current session and immediately relaunch it. Equivalent to running tmux-ide stop followed by tmux-ide.

tmux-ide restart

Useful when you've changed your ide.yml and want to apply the new layout.

tmux-ide attach

Reattach to a running tmux-ide session.

tmux-ide attach

If the session isn't running, it will suggest starting it with tmux-ide.

tmux-ide ls

List all running tmux sessions.

tmux-ide ls

Shows session name, creation time, and whether it's currently attached.

tmux-ide doctor

Check that your system meets all requirements.

tmux-ide doctor

Checks:

  • tmux installed
  • tmux version ≥ 3.0
  • Node.js ≥ 18
  • 256-color terminal
  • ide.yml exists in current directory

tmux-ide status

Show the status of the current IDE session.

tmux-ide status
tmux-ide status --json

Returns session name, running state, config existence, and pane details.

tmux-ide inspect

Show the effective project config and current runtime state in one place.

tmux-ide inspect
tmux-ide inspect --json

Returns:

  • resolved config path and session name
  • validation status and errors
  • row and pane counts
  • focus target
  • team and theme config
  • live tmux pane state when the session is running

tmux-ide validate

Validate your ide.yml config file.

tmux-ide validate
tmux-ide validate --json

Checks structure and types: config is an object, rows is a non-empty array, each row has panes, all pane fields have correct types (title/command/dir are strings, focus is boolean, env is an object with string/number values), theme fields are strings, and sizes require a % suffix with values between 1–100%.

tmux-ide detect

Analyze the current project and suggest an ide.yml config.

tmux-ide detect            # show what was detected
tmux-ide detect --json     # structured output
tmux-ide detect --write    # write suggested config to ide.yml

Detects: package manager (npm/pnpm/yarn/bun), frameworks (Next.js, Vite, Convex, Remix, Nuxt, FastAPI, Django, Flask, Go, Rust), and dev commands.

detect also explains why it reached those conclusions. Human output includes a Reasoning: section, and JSON output includes a reasons array under detected.

tmux-ide config

Read and modify your ide.yml programmatically.

Dump config

tmux-ide config            # print config
tmux-ide config --json     # as JSON

Set a value

tmux-ide config set name "my-app"
tmux-ide config set rows.0.size "70%"
tmux-ide config set rows.1.panes.0.command "npm run dev"

Add a pane

tmux-ide config add-pane --row 1 --title "Tests" --command "pnpm test"

Remove a pane

tmux-ide config remove-pane --row 1 --pane 2

Add a row

tmux-ide config add-row --size "30%"

Enable agent teams

tmux-ide config enable-team --name "my-team"

Finds all command: claude panes and assigns the first as lead, the rest as teammate. Adds a team block to the config. See Agent Teams for details.

Disable agent teams

tmux-ide config disable-team

Removes the team config and all role/task fields from panes.

tmux-ide mission

Manage the project mission for autonomous orchestration.

tmux-ide mission create "Build auth system" -d "JWT + refresh tokens"
tmux-ide mission plan-complete          # transition planning → active
tmux-ide mission status [--json]        # show progress: milestones, tasks, validation
tmux-ide mission show [--json]          # full mission detail
tmux-ide mission set "title" [-d "..."] # set mission (status: active)
tmux-ide mission clear                  # clear the mission

create sets the mission status to planning, which triggers the orchestrator to dispatch planning to the lead pane. plan-complete activates the first milestone and starts autonomous dispatch.

tmux-ide milestone

Manage sequential execution phases within a mission.

tmux-ide milestone create "Foundation" --sequence 1 [-d "description"]
tmux-ide milestone list [--json]
tmux-ide milestone show <id> [--json]
tmux-ide milestone update <id> --status active|done|locked

Milestones gate task dispatch — tasks with a milestone only dispatch when that milestone is active and all predecessors are done.

tmux-ide task

Create and manage tasks within a mission.

tmux-ide task create "title" [--goal NN] [--priority N] [--milestone M1] [--assign "Agent"]
tmux-ide task list [--status todo] [--json]
tmux-ide task show <id> [--json]
tmux-ide task update <id> --status review
tmux-ide task claim <id> --assign "Agent Name"
tmux-ide task done <id> --proof "description"
tmux-ide task delete <id>

Task creation flags

Link a task to validation assertions with --fulfills:

tmux-ide task create "Implement login endpoint" --fulfills "VAL-AUTH-001,VAL-AUTH-002"

Route a task to a specialist agent with --specialty:

tmux-ide task create "Build login page" --specialty frontend

The --proof flag accepts plain text or a JSON object:

tmux-ide task done 003 --proof "All tests passing"
tmux-ide task done 003 --proof '{"tests":{"passed":10,"total":10},"notes":"CI green"}'

tmux-ide validate

Manage validation contracts and assertion verification. Also validates ide.yml config when called without a subcommand.

tmux-ide validate                      # validate ide.yml config
tmux-ide validate show [--json]        # show contract + assertion state
tmux-ide validate assert <ID> --status passing|failing|blocked [--evidence "..."]
tmux-ide validate report [--json]      # summary: passing/failing/pending/blocked counts
tmux-ide validate coverage [--json]    # check assertion coverage gaps

The coverage subcommand checks that every assertion ID in .tasks/validation-contract.md is claimed by at least one task's --fulfills.

tmux-ide skill

Manage agent skill definitions.

tmux-ide skill list [--json]           # list all loaded skills (project + personal)
tmux-ide skill show <name> [--json]    # show full skill detail with body
tmux-ide skill create <name>           # scaffold new skill from template
tmux-ide skill validate                # check pane skill: references resolve

Skills are loaded from .tmux-ide/skills/ (project) and ~/.tmux-ide/skills/ (personal). Project skills take precedence.

tmux-ide research

Manage the researcher agent for continuous internal auditing.

tmux-ide research status [--json]      # current research state
tmux-ide research trigger <type>       # manually trigger an audit

tmux-ide metrics

Session, task, agent, and mission telemetry.

tmux-ide metrics [--json]              # session summary
tmux-ide metrics agents [--json]       # per-agent utilization table
tmux-ide metrics timeline [--json]     # activity timeline (5-min samples)
tmux-ide metrics eval [--json]         # bottleneck milestones, high-retry agents
tmux-ide metrics history [--json]      # cross-mission comparison

tmux-ide orchestrator

Show the current orchestrator state.

tmux-ide orchestrator [--json]
tmux-ide orch                          # alias

tmux-ide send

Send a message to a pane by name, title, role, or ID.

tmux-ide send <target> <message>
tmux-ide send --to "Agent 1" <message>
tmux-ide send <target> --no-enter msg  # send text without pressing Enter
echo "msg" | tmux-ide send <target>    # pipe from stdin

Messages longer than 150 characters are automatically written to a dispatch file to avoid paste-mode issues in agent TUIs.

Global Flags

FlagDescription
--jsonOutput as structured JSON (all commands)
--template <name>Use a specific template for init
--writeWrite detected config for detect

On this page