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
Invokes Apple's macOS 27 fm command-line tool from a local Mac to use the on-device system model or Private Cloud Compute, including instructions, image prompts, schema-constrained JSON, and noninteractive automation. Use when the user asks to run Apple Foundation Models through fm, compare system versus pcc, generate structured output, or automate fm without Swift or an app.
development
Compile historical Codex sessions into governed counterfactual evidence, evaluate an existing owner-applied candidate through blinded paired HCTP trials, and fold observable evidence into RUN, OBSERVE, or STOP. Use for `$hylo`, CRF extraction, counterfactual replay, source-governed direct or historical trials, sealed evidence, paired baseline/candidate evaluation, causal frontiers, or evidence-governed improvement.
testing
Ensure a `ledger` command is available on PATH; materialize, validate, record, replay, and project requested Actuating artifacts without taking semantic or execution authority; coordinate the shared Learnings/Synesthesia/Negative Ledger lifecycle checkpoint and repo-local source-memory reconciliation; address Universalist plans and receipts; and perform pure artifact validation.
testing
Classify and quotient review findings, failing tests, incidents, bug reports, migration failures, and other witnessed falsifiers against accepted intent and the current Construction. Author counterexample-set/v1 without selecting repairs, counting review credit, or granting mutation.