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 agentmods add skills/howar31/magi-workflow/commitnpx skills add howar31/magi-workflow --skill commitgit clone --depth 1 https://github.com/howar31/magi-workflowWhat 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 | $0.00116 | $0.04521 |
| Opus 5 | $0.00058 | $0.02261 |
| Sonnet 5 | $0.00023 | $0.00904 |
| Haiku 4.5 | $0.00012 | $0.00452 |
Grade A, and why
commit scanned grade A with 0 findings 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 yesterday.
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.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 436 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/magi:commit — sprint-aware commit (dual-mode)
You are the coordinator. Stage the change set, optionally backfill drift into PLAN/SPEC, optionally sync root docs, generate a Conventional Commits message, then ask the user to confirm. Never commit without explicit confirmation.
0. Preflight
PLUGIN_ROOT="${CLAUDE_PLUGIN_ROOT:-}"
[[ -z "$PLUGIN_ROOT" ]] && PLUGIN_ROOT="$(cd "$(dirname "$BASH_SOURCE[0]")/../.." 2>/dev/null && pwd)"
USER_CONFIG="$HOME/.config/magi-workflow/config.json"
If config missing → tell user to run /magi:setup.
Confirm we are inside a git repo:
git rev-parse --git-dir >/dev/null 2>&1 || { echo "not a git repo"; exit 1; }
0.5. State preflight (auto-refuse if not allowed)
STATE_JSON=$(bash "$PLUGIN_ROOT/scripts/shared/detect-state.sh")
blocked=$(jq -r '.disallowed_skills["commit"] // empty' <<<"$STATE_JSON")
if [[ -n "$blocked" ]]; then
reason=$(jq -r '.disallowed_skills["commit"].reason' <<<"$STATE_JSON")
suggest=$(jq -r '.disallowed_skills["commit"].suggest' <<<"$STATE_JSON")
echo "Cannot run /magi:commit: $reason"
echo "Suggested: $suggest"
exit 1
fi
After preflight passes, surface the stale_drift warning if present —
warn the user that the DRIFT.md is older than current code changes;
recommend re-running /magi:review-code first or pass --skip-review to
proceed anyway.
--force skips preflight (advanced/recovery only).
1. Mode selection (preflight)
Decide between Sprint mode and Standalone mode by inspecting:
# Find the most recent sprint folder
sprint_dir=$(ls -d magi/[0-9]*-*/ 2>/dev/null | sort -r | head -1)
[[ -n "$sprint_dir" ]] && sprint_dir="${sprint_dir%/}"
# Capture changed files
changed_files=$(git diff --name-only HEAD; git diff --staged --name-only)
Apply rules:
| Condition | Mode |
|---|---|
--mode sprint flag |
force Sprint mode |
--mode standalone flag |
force Standalone mode |
--sprint <num>-<slug> flag |
force Sprint mode against that sprint |
sprint folder exists + <sprint_dir>/DRIFT.md exists |
Sprint mode |
| sprint folder exists but no DRIFT.md | warn the user: "DRIFT.md not found in <sprint_dir>/ — recommend /magi:review-code first. Add --skip-review to bypass."; abort unless --skip-review provided |
| no sprint folder anywhere | Standalone mode |
sprint folder exists but changed_files are all outside it (e.g., .github/workflows/* or root files only) |
ask user: "Sprint <sprint_dir> exists but your changes don't touch it. Use Sprint mode anyway, or Standalone?" |
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.
- yesterday First seen · 436 lines · 116 tokens per session scan A b042f3c16863
commit is a skill published in the GitHub repository howar31/magi-workflow (2 stars, last pushed 2d ago), licensed MIT. It adds 116 tokens to every session and 4,521 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
triage
Apply a formal state machine to issues — assign category (bug/enhancement/question/spike) and state (needs-triage → needs-info → ready-for-agent → ready-for-human → wontfix). Issues marked ready-for-agent become inputs to supergraph:plan. Use when processing a backlog, reviewing new issues, or preparing work for…
user-story-generator
Transforms requirements into user stories with Given/When/Then acceptance criteria ready for sprint planning and Jira. Use when user needs to write user stories, create Jira tickets, define acceptance criteria, or says "user stories", "acceptance criteria", "sprint backlog", "Jira tickets", "as a user I want"…
rook-triage
Use when triaging rook (github.com/rook/) issues or PRs — grooming or clearing the backlog, labeling or categorizing issues, finding duplicate issues, cross-linking an issue to a PR (or a PR to the issue it fixes), checking what info a bug report is missing, deciding who should review a PR or requesting reviewers, or…
plan-orchestrator
This skill should be used when the user asks to "generate an ORCHESTRATE file", "turn a spec into a plan", "scaffold a feature breakdown", "scaffold a sprint backlog", "plan a sprint" (when a committed backlog/artifact is wanted, not just strategy advice), "generate roadmap artifacts", "create an implementation plan…
jira
Work with Jira over its REST API (no MCP) — read/search (JQL), look up tickets, my board/sprint, create/comment/@mention/transition/link/worklog, MR investigation, clone the ticket's repo. Use for any read/search/create/update/transition on Jira issues, or references to a remembered board, project, epic, or person.
add-phase
เพิ่ม development phase ใหม่เข้าโปรเจค พร้อมสร้าง phase plan, backlog file และ archive section ใช้ skill นี้เมื่อต้องการแบ่งโปรเจคเป็นช่วงๆ เช่น "เพิ่ม phase ใหม่", "เริ่ม phase ถัดไป".