tmux-lane-orchestrator

tmux-lane-orchestrator is a skill for Codex from vincentkoc/dotskills. It costs 46 tokens per session (3,271 once invoked), scanned A, original, MIT.

A management workflow for one tmux agent lane, where tmux is a terminal tool that keeps multiple worker sessions running in panes.

In plain words
What is it for?
Use it to monitor, summarize, restart, or coordinate workers in one assigned lane, including reconstructing their state from live panes and logs.
Why use it?
It keeps a manager informed about worker activity, blockers, and next actions without taking responsibility for unrelated lanes.

Skill for Codex

Written for Codex: agents/openai.yaml present. Also seen: mentions Codex; built for openclaw.

Good fit Use it to monitor, summarize, restart, or coordinate workers in one assigned lane, including reconstructing their state from live panes and logs.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/vincentkoc/dotskills/tmux-lane-orchestrator
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add vincentkoc/dotskills --skill tmux-lane-orchestrator
Clone the repo
git clone --depth 1 https://github.com/vincentkoc/dotskills

Made for: Codex.

Its marketplace also offers this one on its own, as the plugin tmux-lane-orchestrator/plugin install tmux-lane-orchestrator after adding the marketplace above.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for tmux-lane-orchestrator

README.md
[![agentmods](https://agentmods.dev/badge/skills/vincentkoc/dotskills/tmux-lane-orchestrator/github.svg)](https://agentmods.dev/skills/vincentkoc/dotskills/tmux-lane-orchestrator)
Your own site
<a href="https://agentmods.dev/skills/vincentkoc/dotskills/tmux-lane-orchestrator"><img src="https://agentmods.dev/badge/skills/vincentkoc/dotskills/tmux-lane-orchestrator/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for tmux-lane-orchestrator

Your own site · 80×15
<a href="https://agentmods.dev/skills/vincentkoc/dotskills/tmux-lane-orchestrator"><img src="https://agentmods.dev/badge/skills/vincentkoc/dotskills/tmux-lane-orchestrator.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 46 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,271 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector warn 7 Sept 2026
SkillSpector: 1 finding, up to medium

These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →

  • medium Excessive Agency · line 72
    Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
    Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00046 $0.03271
Opus 5 $0.00023 $0.01636
Sonnet 5 $0.00009 $0.00654
Haiku 4.5 $0.00005 $0.00327

Measured 11d ago against content hash 90d6ca96232c, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade A, and why

tmux-lane-orchestrator scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (scripts/lane_snapshot.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

- verify the tunnel with `lsof` and `curl` before handoff, and report the local URL plus SSH tunnel PID;
skills/tmux-lane-orchestrator/SKILL.md · 188 lines

How it starts

The opening of the file, as written. The whole thing — 188 lines — stays where its author put it; the contents beside it link to each section on GitHub.

tmux Lane Orchestrator

Purpose

Act as the manager for one tmux worker lane. Keep visibility over the lane's panes, infer what each worker is doing from tmux and Codex logs, surface blockers, and give the operator short status summaries with concrete next actions.

The manager owns only its lane by default. Current cockpit topology uses odd ops panes as lane managers:

  • ops.1 manages L1.
  • ops.3 manages L2.
  • ops.5 manages L3.

Treat even-numbered ops panes as spare shells unless the operator explicitly assigns them. Do not inspect or steer another lane unless the operator expands scope.

Read references/factory-model.md when setting up or revising lane responsibilities. Read references/openclaw-lane-matrix.md for OpenClaw-specific worker interpretation.

When to use

  • The operator asks to manage, monitor, summarize, restart, or coordinate a tmux lane.
  • A lane manager cold-starts and must reconstruct worker state from live panes and Codex logs.
  • The operator gives a lane map such as L1.1, L1.2, etc. and wants periodic summaries.
  • OpenClaw or adjacent maintainer work is running across tmux panes and needs traffic control.
  • A worker appears stuck, duplicated, idle, or working on a risky external action.
  • A worker or remote pane has started a dev server, preview, web UI, fixture, or browser-test surface that needs to be reachable from the operator's main local machine.

Workflow

  1. Set the manager pane title immediately:
    • tt title "lane<N> orchestrator" if tt exists.
    • otherwise tmux select-pane -T "lane<N> orchestrator".
  2. Infer manager scope:
    • from explicit user input first;
    • otherwise map current odd ops pane to its lane: 1 -> L1, 3 -> L2, 5 -> L3;
    • if no odd-pane mapping exists, stop and ask for lane scope.
  3. Run the cold-start snapshot:
    • python3 skills/tmux-lane-orchestrator/scripts/lane_snapshot.py --lane <N>
    • add --session <name> when not in the active tmux session.
  4. Read the operator-provided lane map and treat it as the mission source of truth. If IDs are duplicated or missing, call that out as a warning instead of silently rewriting it.
  5. For each worker pane, classify state:
    • active-progress: recent output, running command, or current test/log movement.
    • waiting: watching a check, waiting on Testbox/GitHub/CI capacity, or idle by design.
    • blocked: error shown, local setup mismatch, auth failure, merge conflict, missing dependency, or failed check.
    • idle: shell prompt and no assigned mission.
    • unknown: tmux and logs disagree or evidence is too stale.
  6. Cross-check live panes against Codex logs before summarizing. Pane titles alone are weak evidence; logs often contain the real task, branch, Testbox id, run id, and latest failure.
  7. If the snapshot helper is slow or stale, do not wait on it forever. Fall back to direct tmux capture-pane, focused jq reads of recent ~/.codex/sessions/YYYY/MM/DD/*.jsonl, and live GitHub/Testbox checks for the panes that matter.
  8. Summarize in manager style:
    • one line per pane;
    • include current mission, state, evidence, blocker, and next action;
    • keep a separate manager actions line for anything you will do next.
    • after the compact status, add a short manager read when judgment matters: what is healthy, what is lying, and where attention should go.
  9. When asked to intervene, prefer low-risk coordination first:
    • inspect logs and process state;
    • avoid killing processes unless the operator authorizes the exact process/tree;
    • do not start duplicate heavy checks;
    • do not mutate GitHub or worker panes unless explicitly asked.
  10. When launching workers into panes:
  • prefer creating a prompt file, then passing its contents as the Codex initial prompt argument from the target cwd;
  • use codex --dangerously-bypass-approvals-and-sandbox --no-alt-screen "$(cat prompt-file)";
  • do not feed Codex TUI worker prompts through stdin; it can reject stdin as non-terminal after pane launch;
  • default worker jobs to YOLO mode / no sandbox / no approval prompts unless the operator says to use a safer mode;
  • avoid multi-line here-doc paste directly into multiple panes because tmux can interleave input and corrupt both commands;
  • set a useful pane title before launch, then verify cwd, command, first screen, and trust prompts from scrollback;
  • after launch, submit the staged prompt with Enter/CR if Codex has not begun responding; do not leave the prompt sitting in the input area;
  • if Codex asks for directory trust and the target repo is intended, clear that prompt once and record it in the summary.
  1. When assigning OpenClaw work to a fresh worker, create or verify the requested gwt worktree first. The worker prompt must name the exact worktree path, forbid touching the main checkout, forbid pnpm install inside Codex worktrees, require node_modules symlink verification, and route broad validation through Testbox.
  2. When launching a review-first worker:
  • say explicitly that the worker must not edit code unless the operator asks after the review;
  • allow only the external mutations required to prepare the review, usually clone/pull/fetch;
  • require context checks before conclusions: cwd, repo root, branch, status, remote, free disk, repo instructions, README/package metadata, CI, and tests;
  • keep repo-instruction discovery bounded to the target repo and ancestors, not broad sibling scans;
  • if dependencies are missing, verify documented install/test paths in a temp environment outside the checkout and clean it up;
  • for package or CLI repos, check the installed artifact path, not just editable/source-checkout tests; editable installs can hide missing package data;
  • ask for findings first with file/line evidence, commands run, pass/fail results, quick wins, strategic risks, and a ship/hold/fix-first recommendation.
  • when the review finishes, summarize only the top severity, main recommendation, and whether implementation needs a new explicit go-ahead; keep the worker open for follow-up.
  1. When reallocating active work:
  • name exactly which pane is now the sole coordinator for final integration or push;
  • tell superseded panes to finish only their already-running command, then stop/report branch HEAD, check result, and blockers;
  • preserve useful in-flight Testbox or CI evidence, but do not start duplicate broad gates;
  • coordinator must re-verify cwd, branch, status, symlinks, drift, cheap checks, and final rebase before pushing.
  1. When running a multi-job queue:
  • keep a visible queue with job URL/id, assigned pane, worktree, state, and next action;
  • do live metadata before assignment because "merge as-is" can become conflicts, failed checks, or unresolved review comments;
  • batch merge/closure jobs conservatively to avoid rebase churn;
  • each worker prompt must include exact scope, review/comment obligations, merge/closure policy, and final report shape.
  1. When deciding whether to allocate more work:
  • scrape live lane state first;
  • allocate only when there is idle capacity and a concrete next slice;
  • do not allocate just to use empty panes; more workers without a crisp slice creates coordination sludge;
  • if the right next action is waiting for CI/CodeQL/Testbox or one closeout watcher, say that and leave panes idle;
  • when fresh scanners or runners were just added, validate the live result set before assigning fixers. If new analyses report zero results and open alerts are old-profile residue, allocate closeout/dismissal buckets or a watcher, not implementation lanes.
  1. For metric tracking:
  • store baseline and samples in a local TSV or similar lightweight artifact when the operator asks to track progress over time;
  • report absolute counts plus deltas from baseline, not vibes;
  • verify the tracker process is still alive before relying on it, and restart or sample manually if it died;
  • if new automation is opening work while workers close work, call out the slope honestly.
  1. For secrets and repo settings:
  • do not print, quote back, or store secrets in prompt files;
  • prefer setting secrets with gh secret set <NAME> --repo <owner/repo> using stdin from a shell variable, then unset the variable;
  • record only the secret name, repo, and result, never the value;
  • ask for the narrowest required token permissions when the operator asks.
  • after repo/workflow setup, verify the full path: local checks, remote CI, workflow registration, live smoke, and external service permissions;
  • when an external service blocks on namespace/org permission, report the exact error and prefer manual resource creation over widening token permissions;
  • after the operator changes token or external-service permissions, rerun the exact failed workflow/run/SHA first and pull the fresh log. Do not rebuild the whole setup or broaden permissions until the new failure proves a different boundary.
  1. When broadcasting updates to active workers:
  • send the update to every assigned pane, not only the active pane;
  • if Codex shows "tab to queue message" or similar, queue the message, press Enter/CR, and then verify the update appears in that worker's log;
  • for urgent validation policy changes, ask each worker to report any already-started command and whether it was stopped, completed, or moved to the correct surface;
  • scan processes after the broadcast and stop only the specific disallowed validation commands you own, not the whole worker.
  1. For watch loops:
  • use the operator's requested cadence;
  • keep the job open and keep messages short, like the L2 operator style;
  • stay silent unless a lane needs attention, finishes, blocks, begins risky external mutation, or the operator asks for a floor read;
  • stop or replace old local watch loops before starting a new monitoring mode;
  • track which evidence is fresh vs memory-derived.
  1. When a worker reports broad test or sweep findings:
  • separate confirmed product/plugin defects from harness, fixture, Testbox, sparse-checkout, dependency, and stale-analysis noise;
  • name the evidence that makes each issue real, and say when a suspicious result is not confirmed yet.
  1. For remote preview ports:
  • treat reachability as part of the deliverable, not a nice-to-have afterthought;
  • first identify the remote host, remote port, bind address, owning process, and whether the manager is on the operator's main local machine or inside the remote machine;
  • remember that mosh does not forward TCP ports; use a separate SSH tunnel;
  • from the main local machine, prefer ssh -4 -fN -o ExitOnForwardFailure=yes -o ServerAliveInterval=15 -o ServerAliveCountMax=3 -L 127.0.0.1:<localPort>:127.0.0.1:<remotePort> <host>;
  • from inside the remote machine, use reverse forwarding only when a known main-local SSH target or explicit operator instruction exists; otherwise give the exact main-local forwarding command and mark the tunnel as blocked on main-local access;
  • avoid local port collisions by checking lsof -nP -iTCP:<localPort> -sTCP:LISTEN; if the requested port is occupied, choose the next obvious port and say so;
  • verify the tunnel with lsof and curl before handoff, and report the local URL plus SSH tunnel PID;
  • do not kill existing tunnels unless they were created by the current task or the operator names the PID/scope.
  1. For OpenClaw lanes, apply references/openclaw-lane-matrix.md.
  2. Preserve the lane taxonomy unless the operator overrides it:
  • L1: fixes and maintainer hygiene.
  • L2: feature work.
  • L3: exploratory work.

Read the full file on GitHub · 188 lines

Files

What ships with it

5 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 11d ago First seen · 188 lines · 46 tokens per session scan A 90d6ca96232c

Subscribe to this mod's changes

tmux-lane-orchestrator is a skill published in the GitHub repository vincentkoc/dotskills (102 stars, last pushed yesterday), licensed MIT. It adds 46 tokens to every session and 3,271 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

taiyi-plan

A TaiyiForge planning step that turns a README, product requirements document, or technical plan into a list of separate project changes. Each change includes a suggested work profile, dependencies, and priority.

Dong90/oh-my-taiyiforge · 52 tokens

taiyi-integration

A project workflow skill for closing a TaiyiForge change and recording it in a CHANGELOG.md file. It checks review results, tests, and the state of the working tree before archiving the change.

Dong90/oh-my-taiyiforge · 27 tokens

taiyi-requirement

A requirements-analysis process that turns a proposed change into a REQUIREMENT.md document. It records user needs, acceptance checks, terminology, triggers, and dependencies, with different levels of detail for different project sizes.

Dong90/oh-my-taiyiforge · 27 tokens

security-compliance

Guides security professionals in implementing defense-in-depth security architectures, achieving compliance with industry frameworks (SOC2, ISO27001, GDPR, HIPAA), conducting threat modeling and risk assessments, managing security operations and incident response, and embedding security throughout the SDLC.

sangrokjung/claude-forge · 56 tokens

taiyi-change

A TaiyiForge workflow stage for writing a change proposal in CHANGE.md, with checks for scope, risks, success criteria, and related project documents.

Dong90/oh-my-taiyiforge · 25 tokens

taiyi-test

A project workflow skill for verifying an implementation and producing a TEST.md record. TDD means writing a failing test, implementing the change, and then making the test pass; this skill checks that process and other regression cases.

Dong90/oh-my-taiyiforge · 24 tokens