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.
npx skills add vincentkoc/dotskills --skill tmux-lane-orchestratorgit clone --depth 1 https://github.com/vincentkoc/dotskillsWrote 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.
[](https://agentmods.dev/skills/vincentkoc/dotskills/tmux-lane-orchestrator)<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.
<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>- NVIDIA SkillSpector warn
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.
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.
| Model | Per session | Once 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 |
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.
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; 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.1managesL1.ops.3managesL2.ops.5managesL3.
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
- Set the manager pane title immediately:
tt title "lane<N> orchestrator"ifttexists.- otherwise
tmux select-pane -T "lane<N> orchestrator".
- Infer manager scope:
- from explicit user input first;
- otherwise map current odd
opspane to its lane:1 -> L1,3 -> L2,5 -> L3; - if no odd-pane mapping exists, stop and ask for lane scope.
- 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.
- 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.
- 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.
- 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.
- If the snapshot helper is slow or stale, do not wait on it forever. Fall back to direct
tmux capture-pane, focusedjqreads of recent~/.codex/sessions/YYYY/MM/DD/*.jsonl, and live GitHub/Testbox checks for the panes that matter. - Summarize in manager style:
- one line per pane;
- include current mission, state, evidence, blocker, and next action;
- keep a separate
manager actionsline for anything you will do next. - after the compact status, add a short
manager readwhen judgment matters: what is healthy, what is lying, and where attention should go.
- 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.
- 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.
- When assigning OpenClaw work to a fresh worker, create or verify the requested
gwtworktree first. The worker prompt must name the exact worktree path, forbid touching the main checkout, forbidpnpm installinside Codex worktrees, requirenode_modulessymlink verification, and route broad validation through Testbox. - 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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
lsofandcurlbefore 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.
- For OpenClaw lanes, apply
references/openclaw-lane-matrix.md. - Preserve the lane taxonomy unless the operator overrides it:
L1: fixes and maintainer hygiene.L2: feature work.L3: exploratory work.
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.
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.
- 11d ago First seen · 188 lines · 46 tokens per session scan A 90d6ca96232c
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.
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.
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.
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.
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.
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.
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.