run-agent
Skill2 starsChanged 15 days agoMITView on GitHub
Replace the current claude session (or open a brand-new tmux window, `split` / `window`; several runs joined by `+` share one new tiled window) with a new one running a chosen agent (helper, planner, worker, evaluator or a built-in) in the same tmux pane, now or at a time (`at 9pm`, `in 2h`, `after window` = when the 5-hour usage window resets, `until <time>` to cap the wait), in this directory or another one (`in <dir>`, created if missing). Loose phone typing is fine: `fable low effort`, `model=opus`, em-dash flags, typos. A run starts at once (pane replaced, scheduled, or window opened) with no question unless `confirm` is typed, which asks first. `jobs` lists scheduled runs, `cancel` drops one. User-invoked only.
1 other project uses a version of this.
Adopted by
Most recently taken up by
- michaellam26/pathfindertheir own version, first seen Aug 22, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- michaellam26/pathfinder★ 1same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository7 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- restore-sessionsSkill
- review-skillSkill
- test-speedupSkill
- weekly-roundupSkill
- write-readmeSkill
- write-reportSkill
The file
Files
/run-agent
Normally this skill never reaches a model: the UserPromptExpansion hook in settings.json (matcher run-agent)
runs run-agent.sh --relaunch on the typed words itself and shows its output. You are reading this only because the
hook did not run (older settings, hook disabled): then run exactly one Bash call and then stop. Do not parse, reason about or confirm anything yourself: a clean
parse runs, schedules or opens its window at once; the script hands the questions it cannot answer (confirm typed, an
unplaceable word, no agent named, a folder to create, which job to cancel) to a short haiku session (claude --model
haiku --effort low) that asks, then runs or schedules.
~/.claude/skills/run-agent/scripts/run-agent.sh --relaunch '<raw $ARGUMENTS>'Single-quote the arguments (escape ' as '\'', keep newlines). Relay its output as is. Exit 0 means this pane
now runs the agent (or the confirm step when there was a question, or a new tmux window opened) or the script answered
itself (jobs, cancel, dry, scheduled #N, errors); exit 1 = not inside tmux, relay the run-agent ... line to type by hand; exit 2 = relay the message.
Forms: <agent> ["prompt"] [in <dir>] [split|window] [model/effort words] [at <time> | in <delay> | after window
[until <time>]] [dry] [confirm], jobs, cancel [id]. split and window both open a brand-new tmux window and
this session keeps going; without them the pane is replaced. A launch never adds a pane to an existing window.
Runs joined by a lone + (planner "Plan A" in ~/a + planner "Plan B" in ~/b + ...) start together, at once, in
one new window tiled (four = 2x2), each in its own folder. Everything starts without asking; confirm (or
--confirm) anywhere outside the quotes asks first (a + group is asked about once). The old force/now/go/!
words are no longer special: now means at once, the rest are asked about like any unplaced word.
Time words resolve in parse.py without a model: at 9pm, in 2h, in 2 hours 10 min, tomorrow [at] 1am,
1am tomorrow, tonight / this evening (7 PM), today at 5pm, noon, midnight, a weekday name (the next one),
after window, N h|min before|after the window (or … the current window, … window ends/resets), N h before|after
<clock>. jobs shows each run's time and runner state (sleeping (pid N), dead, errored: <last log line>,
waiting: no pane). When the parser cannot place a time word the haiku confirm step reads it (it is told the current
ET time and the window reset) and hands --step '<words> | time: at <clock>' back; it never asks the user when the
window ends. The window reset comes from the usage API; when that fails (429, no network) the last live answer, then an
estimate from session transcripts, then now + 5 h stand in, labelled, so a window-relative time always schedules. From an agent session (worker, evaluator, planner, helper) split, window and + are answered
ignored: agents replace their own pane: an agent only ever replaces its own pane, now or at the scheduled time; if
that pane is gone at fire time the run waits (jobs.log: waiting: no pane) until a human /run-agent or run-agent
call on that tmux server opens it in a new window.
(Also: S --parse '<raw>' prints the parse as JSON; S --handoff <agent> ["prompt"] [-- flags] is the worker's
usage-limit handoff; S --next <agent> ["prompt"] prints an agent's closing next step (short sentence, /run-agent line, Without run-agent: claude … line; no model/effort for worker and evaluator); bin/run-agent is
the same skill as a shell command.)
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

