dispatch
Skill0 starsChanged 34 days agoApache-2.0View on GitHub
How to dispatch a ready ticket to a builder aspect and CONFIRM it actually started. For the orchestrator, not the builder. The send_chat "ok" is not acceptance — verify the runner took it.
- Commits and pushes
40 other projects use a version of this.
Adopted by
Most recently taken up by
- renzrollon/interlocktheir own version, first seen Nov 5, 2026
- dan-myles/skillstheir own version, first seen Nov 1, 2026
- bestony/skillstheir own version, first seen Nov 1, 2026
- AcKeskin/contexturetheir own version, first seen Nov 1, 2026
- mhlaghari/stuntmantheir own version, first seen Nov 1, 2026
- vu1n/pillboxtheir own version, first seen Oct 26, 2026
Used with
Projects with it also use edge-detection, odds-analysis and 8 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
noahowshSkilledge-detection
Comparing a tennis model's probability with the market: no-vig close, expected value at the best available price, closing line value, fractional Kelly sizing, and the checks that separate an estimated edge from noise. Use when the user has a probability and wants to know whether a price is better than fair, how large a stake is reasonable, or whether an edge is real. Requires a probability the user trusts. Do not use for fetching prices: see odds-explorer. Do not use for devig math alone: see odds-analysis. Do not use for historical testing: see backtesting.
Also in 4 projects that use this
noahowshSkillodds-analysis
Odds math for two-way tennis markets: American to implied probability, margin, devigging (multiplicative, power, Shin), no-vig fair odds, consensus across books, favorite-longshot bias, and expected value of a price. Use when the user asks what a price implies, how to remove the vig, what the true probability is, or how to compare books. Do not use for fetching or comparing live prices: see odds-explorer. Do not use for deciding a bet against a model: see edge-detection.
Also in 4 projects that use this
agiprolabsSkillwalk-forward-validation
Walk-forward validation framework for trading strategies and ML models with time-series-aware splits, overfit detection, and regime-aware validation
Also in 4 projects that use this
Yahmez3Skillbacktesting
Use when backtesting a trading strategy — evaluating a signal series against historical price data and computing performance metrics (Sharpe, Sortino, max drawdown, CAGR, win rate, expectancy). Triggers on "backtest this strategy", "what's the Sharpe on X", "run a walk-forward test", or "compare strategies A and B". Produces equity curves, trade logs, and tear sheets.
Also in 4 projects that use this
ffsshhttiikkSkillfeature-engineering
Machine learning feature engineering
Also in 4 projects that use this
AWSSkillship
Finalize dev work on an issue branch — update docs, push, and open a PR.
Also in 4 projects that use this
- +3 more from noahowsh
Other versions40 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 40
- your-papa/obsidian-Smart2Brain★ 1.3ksame name
- s2b-dev/smart-second-brain★ 1.3ksame name
- bassimeledath/dispatch★ 411same name
- renzrollon/interlock★ 61same name
- fagemx/edda★ 36same name
- phj128/autoworker★ 18same name
- clonable-eden/cekernel★ 17same name
- mhlaghari/stuntman★ 16same name
- YippeeXuXu/dsh-collab-mode★ 5same name
- BigY0shi/super-skills★ 4same name
30 more not listed
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 repository21 other files it gives its agents.
- browserbaseSkill
- cairnSkill
- developmentSkill
- house-styleSkill
- kimi-subagentSkill
- lean-design-standardSkill
- mergeSkill
- nexus-authSkill
- nexus-jiraSkill
- orchestrateSkill
- orchestratorSkill
- planningSkill
- releaseSkill
- remote-opsSkill
- reviewSkill
- securitySkill
- specSkill
- ticket-pipelineSkill
- vision-reviewSkill
- workflow-basicsSkill
- writing-skillsSkill
The file
We split this skill into the rules it gives an agent
3 rules. 0 are common, 1 is distinctive, and 2 are very specific to this project.
0
Common
Most of the 38 edited versions we read keep these.
1
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 39
ALWAYS specify the provider, ATTACHED to the agent with %: anvil%codex, plumb%codex.
- Very specific: line 57
Read the BROKER container (the pod has 3 containers.
- Distinctive: line 70
Only now: mark the ticket In Progress and report it dispatched.
“Common” is measured: kept by at least 6 in 10 of the 38 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
dispatch
You are the orchestrator. You are routing ready work to a builder and you are ACCOUNTABLE for confirming it ran. A dispatch that didn't start is worse than no dispatch — it looks done and isn't.
The one rule that matters
send_chat returning "ok" means the CHAT MESSAGE stored. It does NOT mean the
builder accepted the job. The dispatch can fail milliseconds later in the
runner and you will not be told on the channel you acted on. Never mark a
ticket In Progress or report "dispatched" on the strength of "ok". Verify
against the broker (step 4) first. (Until NEX-640 lands, the system won't
hand you an honest result — you must go get it.)
1. Pick the builder
- Builders = aspects with an
aspect-keyfile-<agent>secret: anvil, plumb (codex builder pods, idle at 0/0 = dispatch-on-demand; the runner launches an ephemeral Job per dispatch — they do NOT need to be scaled up). - One ticket per builder at a time. Builders run in parallel. Alternate anvil/plumb, prefer idle.
2. Write the directive
First line is the directive; everything after is the task brief.
!dispatch <agent>%<provider> repo=<repo> ticket=<KEY> <one-line task>
<full brief on following lines><agent>is the BUILDER (anvil/plumb) — NOT the ticket key. Putting the ticket key in the agent slot is the classic failure: it parses (unknown agents default to enabled), then dies deep in the runner withaspect-keyfile-<KEY> not found.- ALWAYS specify the provider, ATTACHED to the agent with
%:anvil%codex,plumb%codex. Syntax isagent%provider, NO space —anvil %codexas a separate token parses as TASK TEXT, leaving provider empty. Empty provider → the runner DEFAULTS to "claude" (runner.go:614-616) → a codex aspect gets a claude-shaped Job with NO codex-auth init container → codex runs unauthenticated (no /root/.codex/auth.json) → exit 1 → 30m idle → produces NOTHING, no log trail. Silently burned two dispatches on 2026-06-13. anvil/plumb are codex →anvil%codex/plumb%codex. (NEX-647 = fix the runner to read the aspect's configured provider so this stops being needed.) - Set the comms
topicto the ticket key so the builder's replies thread there. - The brief body MUST include the cloud-git-workflow + developer-standards
blocks (clone /work yourself,
cw setup-git github,gh pr create, one ticket per PR, rebase, tests, CI green, reviewer = orchestrator, no self-merge).
3. Submit
Send it. You will get "ok". Ignore it as a success signal. Go to step 4.
4. VERIFY ACCEPTANCE (mandatory gate — do not skip)
Read the BROKER container (the pod has 3 containers; containers[0] is the
tailscale sidecar and will mislead you — always -c broker):
POD=$(kubectl -n nexus get pod -l app=nexus-broker -o jsonpath='{.items[0].metadata.name}')
kubectl -n nexus logs "$POD" -c broker --tail=60 | grep -iE 'dispatch|runner|err='
kubectl -n nexus get jobs,pods | grep run-Require ALL of:
runner.Submit returned ... err=<nil>(NOT a WARN "submit failed").runner: builder job created.- a
builder-<agent>-run-… Runningpod. - ideally the builder's own first ack in the ticket thread (true acceptance).
Only now: mark the ticket In Progress and report it dispatched.
5. Failure playbook (what step 4 catches)
aspect-keyfile-<X> not found→ wrong agent slot (X is the ticket key, not a builder) OR that builder has no keyfile secret. Re-dispatch to a real builder.agent <X> is dispatch-disabled→ enable it or pick another builder.- pod
ImagePullBackOff/CrashLoopBackOff→ builder image or boot problem; escalate. - broker logs
skipping git credential grant; git credential name not configured→ expected; the builder self-provisions viacw setup-git githubper the brief. Only a problem if the builder later can't push.
6. Watch to completion
Acceptance (step 4) ≠ completion. Poll the ticket thread / the repo for the
pushed branch + opened PR. On PR open, switch to the review skill. On a
builder going quiet with no PR after a reasonable window, read its run pod
logs (kubectl -n nexus logs <builder-pod>) — chat-emit can drop a builder's
text on non-zero exit, so absence of a reply is not absence of work.
Why this skill exists
A mis-dispatch (ticket key in the agent slot) once looked successful for an hour because "ok" was trusted and the failure was a buried WARN. NEX-640 makes dispatch first-class — 200 only when the builder is up and has accepted, errors escalated. When that ships, delete step 4's manual verification; until then it is the contract enforced by hand.
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.

