coord-assign
Skill0 starsChanged 47 days agoApache-2.0View on GitHub
Assign a coord task's agent and/or model. Narrow — only writes `assigned` and `model_*`, never touches `status`. Use when the user says "/coord-assign", "assign <id> to <agent>", or wants to change the model for a task or specific subtasks.
- Commits and pushes
In this repository20 other files it gives its agents.
- coord-archive-indexSkill
- coord-auditSkill
- coord-checkSkill
- coord-dirtySkill
- coord-discardSkill
- coord-helpSkill
- coord-initSkill
- coord-loop-doctorSkill
- coord-promoteSkill
- coord-refineSkill
- coord-requeueSkill
- coord-reviewSkill
- coord-shape-reviewSkill
- coord-shapeSkill
- coord-splitSkill
- coord-statusSkill
- coord-tokensSkill
- coord-unblockerSkill
- merge-to-mainSkill
- rebase-to-mainSkill
The file
We split this skill into the rules it gives an agent
9 rules. About 0 are common, 0 are distinctive, and 9 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
9
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 6
Write assigned (agent) and/or model_* (per-task or per-subtask) on a coord task.
- Very specific: line 31
If --agent is also supplied, the inferred agent must match it.
- Very specific: line 32
If --agent is not supplied, read current task assigned via python3 "${COORD_TOOLS:-$HOME/Projects/coord-wright}/bin/coord" show <id> and …
- Very specific: line 44
If it exits 3 as off-baseline for the task's complexity, report and stop.
- Very specific: line 46
Read current subtasks block from the task path returned by coord show <id> --path (the ### Subtasks checklist under ## Scope notes).
- Very specific: line 48
Write the modified block to /tmp/coord-assign-subtasks-<id>.txt.
- Very specific: line 50
If any named S<n> does not exist in the current subtask list, stop without committing and report which ids were missing.
- Very specific: line 58
Never touch status. If the user wants to kick a stuck loop, that is /coord-requeue.
- Very specific: line 59
Never use --force or --no-verify.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Write assigned (agent) and/or model_* (per-task or per-subtask) on a coord task. Atomic: edit → commit → push. Never touches status — use /coord-requeue for that.
Project-root preflight:
- Resolve the canonical project checkout before reading, updating, patching, staging, committing, or pushing:
COORD_MAIN=$("${COORD_TOOLS:-$HOME/Projects/coord-wright}/bin/coord-project-root") && cd "$COORD_MAIN" - This is required when the skill is invoked from a sibling task worktree; assignment must update the main queue that the launchd worker reads.
Syntax
/coord-assign <task-id> [S1,S2,...] [--agent=claude|codex] [--model=<name>]
<task-id>: required.[S1,S2,...]: optional subtask list. Only meaningful with--model.--agent=X: set taskassigned: X. Subtask list (if any) is ignored when only--agentis given (agent is task-scoped).--model=Y: model override. Without subtask list → task-defaultmodel_<agent>. With subtask list → per-subtaskmodel_<agent>on each named subtask.
Workflow
- Parse args.
- Extract
<task-id>, optionalS<n>list,--agent,--model. - Reject if neither
--agentnor--modelis supplied — there is nothing to do.
- Extract
- Resolve the agent for
--model.- Infer from model name:
opus|sonnet|haiku|*claude*→claude;gpt-*|*codex*→codex. - If
--agentis also supplied, the inferred agent must match it. Reject mismatches. - If
--agentis not supplied, read current taskassignedviapython3 "${COORD_TOOLS:-$HOME/Projects/coord-wright}/bin/coord" show <id>and require the inferred agent to match. Reject mismatches with a message pointing to/coord-splitif the user wants per-subtask agent splits (not supported here).
- Infer from model name:
- Apply the agent change (if
--agentsupplied).python3 "${COORD_TOOLS:-$HOME/Projects/coord-wright}/bin/coord" update <id> --assigned=<agent> --agents=<agent>coord update --agentssets theagents:frontmatter field through the CLI; no direct file edits needed.- For
roles.coder: read the current roles map fromcoord show <id>, build a merged spec preserving all existing keys (e.g.reviewer:claude), then apply:coord update <id> --roles=coder:<agent>,reviewer:<existing-reviewer>. Only include keys that were already present. Skip--rolesentirely if the task has noroles:block. roles.revieweris intentionally left as-is (often staysclaudefor review quality even on codex-coder tasks).- Each
coord updatecall auto-commits-and-pushes. Do not run manualgit add,git commit, orgit push.
- Apply the model change (if
--modelsupplied).- Task-level (no subtask list):
python3 "${COORD_TOOLS:-$HOME/Projects/coord-wright}/bin/coord" update <id> --model_<agent>=<value>If it exits 3 as off-baseline for the task'scomplexity, report and stop; move the task to another rung only after the user agrees, by changingcomplexityin the same call (--complexity=simple --model_claude=sonnet). - Per-subtask:
- Read current subtasks block from the task path returned by
coord show <id> --path(the### Subtaskschecklist under## Scope notes). - For each named
S<n>, replace itsmodel_<agent>:line with the new value (or insert one if missing). - Write the modified block to
/tmp/coord-assign-subtasks-<id>.txt. python3 "${COORD_TOOLS:-$HOME/Projects/coord-wright}/bin/coord" update <id> --set-subtasks=@/tmp/coord-assign-subtasks-<id>.txt- If any named
S<n>does not exist in the current subtask list, stop without committing and report which ids were missing.
- Read current subtasks block from the task path returned by
- Task-level (no subtask list):
- Report.
- One line summarising the change (agent, model, or both).
- Confirm with
coord show <id>thatassigned,agents, androlesreflect the new values.
Rules
- Never touch
status. If the user wants to kick a stuck loop, that is/coord-requeue. - Never use
--forceor--no-verify. - Cross-agent subtask routing (S3 on a different agent than the task) is intentionally not supported — recommend
/coord-splitinstead.
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.

