codex/skills/ntm/SKILL.md
Run NTM for multi-agent tmux orchestration, work triage, robot mode, safety, coordination, and local APIs. Use when spawning swarms, dispatching work, or operating `ntm` as an agent or human operator.
npx skillsauth add tkersey/dotfiles ntmInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Core capability: Turn
tmuxinto a structured, recoverable multi-agent workspace.
Read the repo first. If the target repository has
AGENTS.mdorREADME.md, read those before applying this skill. Repo-local instructions override generic NTM advice.
Interactive vs automation:
ntm dashboard,ntm palette, and other TUI surfaces are for humans.- For machine-readable automation, prefer
--robot-*.- Non-interactive CLI commands such as
ntm send,ntm work triage,ntm locks list,ntm pipeline status, andntm serveare fine when they are the clearest tool.
Coordination and isolation:
- Agent Mail reservations are the default coordination primitive.
--worktreesandntm worktrees ...are supported isolation tools when the repo policy allows them.- If a repo
AGENTS.mdprefers reservations-only or has worktree-specific rules, follow that repo.
# Install / sanity check
curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/ntm/main/install.sh?$(date +%s)" | bash -s -- --easy-mode
ntm deps -v
# Create or resolve a project
ntm quick myproject --template=go
# Launch a mixed swarm
ntm spawn myproject --cc=2 --cod=1 --gmi=1
# Dispatch work
ntm send myproject --cc "Map the auth layer and propose a refactor plan."
# Inspect the current work graph and system state
ntm work triage --format=markdown
ntm --robot-snapshot
Use these for day-to-day session lifecycle management:
ntm spawn myproject --cc=3 --cod=2 --gmi=1
ntm spawn myproject --label frontend --cc=2
ntm spawn myproject --label backend --cc=2 --worktrees
ntm add myproject --cc=1
ntm add myproject --label frontend --cod=1
ntm list
ntm status myproject
ntm view myproject
ntm zoom myproject 3
ntm attach myproject
ntm dashboard myproject
ntm palette myproject
Useful spawn patterns:
ntm spawn myproject --prompt "Read AGENTS.md and start on ready work"
ntm spawn myproject -r full-stack
ntm spawn myproject -t red-green
ntm spawn myproject --persona=architect --persona=implementer:2
ntm spawn myproject --stagger-mode=smart --cc=6 --cod=4
High-leverage NTM usage is not just spawn plus send. The real power shows up when
you combine richer dispatch patterns with reusable session and prompt assets.
ntm send myproject --all "Checkpoint and summarize blockers."
ntm send myproject --pane=2 "Own the auth migration."
ntm send --project myproject "Sync to main and report conflicts."
ntm send myproject -c internal/auth/service.go "Review this subsystem"
ntm send myproject -t fix --var issue="nil pointer" --file internal/auth/service.go
ntm send myproject --smart --route=affinity "Take the auth follow-up"
ntm send myproject --distribute --dist-strategy=dependency
ntm recipes list
ntm recipes show full-stack
ntm workflows list
ntm workflows show red-green
ntm template list
ntm template show refactor
ntm session-templates list
ntm session-templates show refactor
User-level and project-level assets both matter. NTM can resolve configuration from
~/.config/ntm/... and project-local .ntm/... trees, so check the repo before
assuming defaults.
NTM is no longer just a pane launcher. It has first-class work selection and assignment:
ntm work triage
ntm work triage --by-track
ntm work alerts
ntm work search "JWT auth"
ntm work impact internal/api/auth.go
ntm work next
ntm work graph
ntm assign myproject --auto --strategy=dependency
ntm assign myproject --beads=br-123,br-124 --agent=codex
Use ntm work ... when you want NTM to wrap bv and present work in operator-friendly form.
Use raw bv --robot-* when you specifically want the graph engine's native robot output.
NTM now exposes the surrounding coordination stack directly:
ntm mail send myproject --all "Report blockers and current file focus."
ntm mail inbox myproject
ntm locks list myproject --all-agents
ntm locks renew myproject
ntm locks force-release myproject 42 --note "agent inactive"
ntm coordinator status myproject
ntm coordinator digest myproject
ntm coordinator conflicts myproject
ntm checkpoint save myproject -m "before risky refactor"
ntm checkpoint list myproject
ntm checkpoint restore myproject
ntm timeline list
ntm timeline show <session-id>
ntm history search "authentication error"
ntm audit show myproject
ntm changes conflicts myproject
ntm resume myproject
Isolation options:
# Coordination-first
ntm locks list myproject
# Isolation-first when policy allows it
ntm spawn myproject --cc=3 --worktrees
ntm worktrees list
ntm worktrees merge claude_1
NTM has built-in safety, policy, and approval surfaces. Use them instead of ad hoc shell habits:
ntm safety status
ntm safety check -- git reset --hard
ntm safety blocked --hours 24
ntm safety install
ntm policy show --all
ntm policy validate
ntm policy edit
ntm policy automation
ntm approve list
ntm approve show abc123
ntm approve abc123
ntm approve deny abc123 --reason "wrong target branch"
If the repo instructions require offloading builds or tests through another tool such as rch, obey the repo instructions.
Start with these:
ntm --robot-help
ntm --robot-capabilities
ntm --robot-status
ntm --robot-snapshot
ntm --robot-plan
ntm --robot-dashboard
ntm --robot-markdown --md-compact
ntm --robot-terse
Common task-specific robot surfaces:
ntm --robot-send=myproject --msg="Summarize blockers." --type=claude
ntm --robot-ack=myproject --ack-timeout=30s
ntm --robot-tail=myproject --lines=50
ntm --robot-mail-check --mail-project=myproject --urgent-only
ntm --robot-cass-search="authentication error"
ntm --robot-beads-list --beads-status=open
ntm --robot-bead-claim=br-123 --bead-assignee=agent1
ntm --robot-bead-close=br-123 --bead-close-reason="Completed"
Operator loop:
1. Bootstrap with --robot-snapshot
2. Tend with --robot-attention or --robot-wait
3. Act with --robot-send, ntm send, ntm assign, ntm locks, or ntm mail
4. Re-bootstrap with --robot-snapshot if the cursor expires
Prefer --robot-* when another agent or script needs structured output.
NTM also exposes local API and durable workflow surfaces:
ntm serve --port 7337
ntm openapi generate
ntm pipeline run .ntm/pipelines/review.yaml --session myproject
ntm pipeline status run-20241230-123456-abcd
ntm pipeline list
ntm pipeline resume run-20241230-123456-abcd
ntm pipeline cleanup --older=7d
Use ntm serve for long-lived local integrations. Use --robot-* for single-shot agent control.
ntm spawn needs a project directory that NTM can resolve.
ntm config get projects_base
ntm quick myproject --template=go
# Or point projects_base at an existing repo layout / create a symlink when needed
The session name usually matches the project directory name. Labels extend the session name as project--label.
Read these when you need deeper detail without bloating the main skill body:
| Topic | Reference |
| --- | --- |
| High-leverage command patterns, output capture, monitoring, reusable assets | COMMANDS.md |
| Attention feed, robot output formats, wait conditions, mail/cass/bead robot flows | ROBOT-MODE.md |
| Human dashboard, palette, keybindings, and TUI implementation notes | DASHBOARD.md |
| Project resolution, projects_base, config paths, and project-local assets | CONFIG.md |
agent-mail for inboxes, contact handshakes, and file reservationsbr for bead state changes and syncingbv for graph-aware task prioritizationcass for prior-session retrievaltools
Convert markdown plans into beads with dependencies using br CLI. Use when creating task graphs, polishing beads before implementation, or bridging planning to agent swarm execution.
development
Orchestrate Codex skill optimization during active sessions through $cas goal control, $shadow single-session evidence, $tune diagnosis/refinement briefs, and the skill-optimizer custom subagent. Trigger for $opt, skill optimization loops, session-driven skill tuning, meta-skill audits, or explicit validated skill edits. Do not use for general code optimization, product optimization, or performance tuning.
development
Run a targeted fresh-eyes blunder pass over code, specs, plans, adjudications, closure gates, skill edits, or negative-evidence ledgers. Trigger when asked to reread with fresh eyes, find obvious bugs, catch mistakes/oversights/omissions, check for embarrassing misses, or perform a second independent blunder pass before closure. Do not use as a substitute for implementation, adjudication, or verification; use it as the final falsification/check pass for those workflows.
development
Explicitly shadow, tail, watch, follow, monitor, supervise, or companion exactly one Codex session id/path through `$seq`, then apply a named target skill as an interpretation/reporting/proposal/action lens until the watched session stops.