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 marcusgoll/Spec-Flow --skill task-status-syncgit clone --depth 1 https://github.com/marcusgoll/Spec-FlowWrote 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/marcusgoll/spec-flow/task-status-sync)<a href="https://agentmods.dev/skills/marcusgoll/spec-flow/task-status-sync"><img src="https://agentmods.dev/badge/skills/marcusgoll/spec-flow/task-status-sync/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/marcusgoll/spec-flow/task-status-sync"><img src="https://agentmods.dev/badge/skills/marcusgoll/spec-flow/task-status-sync.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.00076 | $0.02850 |
| Opus 5 | $0.00038 | $0.01425 |
| Sonnet 5 | $0.00015 | $0.00570 |
| Haiku 4.5 | $0.00008 | $0.00285 |
Grade A, and why
task-status-sync 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 5d 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.
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 — 366 lines — stays where its author put it; the contents beside it link to each section on GitHub.
<quick_start> <enforcement_model> Intercept and convert manual edits to task-tracker commands:
- Detect attempt: Monitor for Edit/Write tool usage on NOTES.md or tasks.md
- Extract intent: Parse what change the user/Claude wants to make
- Convert to command: Generate equivalent task-tracker command
- Execute atomically: Run task-tracker to update both files simultaneously
- Provide feedback: Explain the conversion and show the result
Example workflow:
User: "Mark T001 as completed"
❌ BLOCKED: Direct edit to tasks.md
✅ AUTO-CONVERTED: .spec-flow/scripts/bash/task-tracker.sh mark-done-with-notes -TaskId T001
Result:
- tasks.md: - [X] T001 Create database schema
- NOTES.md: ✅ T001: Create database schema - est (2025-11-19 10:30)
</enforcement_model>
<allowed_operations> ✅ Permitted (read-only):
- Read NOTES.md to understand progress
- Read tasks.md to see task list
- Read error-log.md to diagnose failures
✅ Permitted (through task-tracker):
- Mark tasks complete:
mark-done-with-notes - Mark tasks in progress:
mark-in-progress - Mark tasks failed:
mark-failed - Sync status:
sync-status - Get next task:
next - Get summary:
summary - Validate:
validate
❌ Blocked (auto-converted):
- Direct Edit/Write to tasks.md
- Direct Edit/Write to NOTES.md
- Manual checkbox changes ([ ] → [X])
- Manual completion markers (✅ T001) </allowed_operations>
<task_tracker_commands> Available task-tracker.sh / task-tracker.ps1 actions:
# Get current status
.spec-flow/scripts/bash/task-tracker.sh status -Json
# Mark task completed with full details
.spec-flow/scripts/bash/task-tracker.sh mark-done-with-notes \
-TaskId T001 \
-Notes "Created Message model with validation" \
-Evidence "pytest: 25/25 passing" \
-Coverage "92% (+8%)" \
-CommitHash "abc123" \
-Duration "15min"
# Mark task in progress
.spec-flow/scripts/bash/task-tracker.sh mark-in-progress -TaskId T002
# Mark task failed
.spec-flow/scripts/bash/task-tracker.sh mark-failed \
-TaskId T003 \
-ErrorMessage "Tests failing: ImportError on MessageService"
# Sync tasks.md to NOTES.md (migration utility)
.spec-flow/scripts/bash/task-tracker.sh sync-status
# Get next available task
.spec-flow/scripts/bash/task-tracker.sh next -Json
# Get phase-wise summary
.spec-flow/scripts/bash/task-tracker.sh summary -Json
# Validate task file structure
.spec-flow/scripts/bash/task-tracker.sh validate -Json
See references/task-tracker-api.md for complete API reference. </task_tracker_commands> </quick_start>
Watch for these patterns that indicate task status updates:
Direct file edits:
Edit(file_path: "*/tasks.md", ...)Edit(file_path: "*/NOTES.md", ...)Write(file_path: "*/tasks.md", ...)Write(file_path: "*/NOTES.md", ...)
Verbal indicators:
- "Mark T001 as complete"
- "Update task status for T002"
- "Task T003 is done"
- "Completed T004"
- "T005 failed"
Checkbox change patterns:
old_string: "- [ ] T001"→new_string: "- [X] T001"- Adding ✅ markers to NOTES.md manually </detection_phase>
<interception_phase> 2. Intercept and Block Manual Edits
When Edit/Write detected on tasks.md or NOTES.md:
⛔ MANUAL EDIT BLOCKED
File: specs/001-feature/tasks.md
Attempted change: Mark T001 as [X] completed
❌ Reason: Manual edits break atomic sync between tasks.md and NOTES.md
✅ Solution: Use task-tracker command instead
Auto-converting to:
.spec-flow/scripts/bash/task-tracker.sh mark-done-with-notes -TaskId T001
This atomically updates:
- tasks.md checkbox: - [X] T001
- NOTES.md marker: ✅ T001: ... - est (2025-11-19 10:30)
- Progress summary in tasks.md (if update-tasks-summary.ps1 exists)
What ships with it
4 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.
- 5d ago First seen · 366 lines · 76 tokens per session scan A a42c515692d6
task-status-sync is a skill published in the GitHub repository marcusgoll/Spec-Flow (92 stars, last pushed 4mo ago), licensed MIT. It adds 76 tokens to every session and 2,850 once invoked, about $0.0004 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-09-03.
Other skills, from other repositories
worker
Team worker protocol (ACK, mailbox, task lifecycle) for tmux-based OMX teams.
rule-prd-generator
A rule-based workflow for turning interviews, requirements, feedback, or rough proposals into a formal product requirements document (PRD). A PRD explains what a product should do so business, design, development, testing, and operations teams can review it.
spec-driven-dev
A guide for planning software changes in specification documents before implementation. Spec-Driven Development means proposing, reviewing, implementing, verifying, and archiving a change in defined stages.
requirement-assistant
A guide for writing clear requirements, user stories, and feature specifications. A user story describes a need from a user's point of view and the reason it matters.
team
N coordinated agents on shared task list using tmux-based orchestration.
implement-project
Full-lifecycle project workflow. Takes batched tickets, implements via /implement-batch, runs smoke tests, then executes a comprehensive quality pipeline (refactor, review-arch, review-test, tidy-docs, review-release). Maximizes autonomy with andon cord escape.