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/youngjaedev/my-claude-plugins/update-progressnpx skills add YoungjaeDev/my-claude-plugins --skill update-progressgit clone --depth 1 https://github.com/YoungjaeDev/my-claude-pluginsWrote 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/youngjaedev/my-claude-plugins/update-progress)<a href="https://agentmods.dev/skills/youngjaedev/my-claude-plugins/update-progress"><img src="https://agentmods.dev/badge/skills/youngjaedev/my-claude-plugins/update-progress.svg" alt="Measured on agentmods" 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 | $0.00113 | $0.03401 |
| Opus 5 | $0.00056 | $0.01700 |
| Sonnet 5 | $0.00023 | $0.00680 |
| Haiku 4.5 | $0.00011 | $0.00340 |
Grade B, and why
update-progress scanned grade B with 1 finding 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 3d 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.
Reads agent configuration directoriesmediumAgent snooping
.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.
MILESTONE_NUMBER=$(cat .claude/state/project-tracking-{slug}.json | jq -r '.milestoneId') How it starts
The opening of the file, as written. The whole thing — 336 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Update Progress
Manually sync project progress to GitHub milestones and issues. Regenerates architecture diagrams and updates tracking sections. Follow project guidelines in @CLAUDE.md.
Arguments
- Milestone name (optional): Target milestone to update. If omitted, auto-detect from
.claude/state/project-tracking-*.json
Flags
| Flag | Description |
|---|---|
--all |
Update all active milestones (process every state file) |
--local |
Skip GitHub sync, only update local state and print to terminal |
Usage
/github-dev:update-progress # Auto-detect active milestone
/github-dev:update-progress "v1.0 Auth System" # Specific milestone
/github-dev:update-progress --all # All active milestones
/github-dev:update-progress --local # Local only, no GitHub sync
Workflow
-
Load State File
- If milestone name provided: slugify and load
.claude/state/project-tracking-{slug}.json - If
--all: scan all.claude/state/project-tracking-*.jsonfiles - If no argument: scan for state files, if exactly one found use it, if multiple ask user to select
- If no state file found: inform user to run
/github-dev:decompose-issuefirst to set up tracking
- If milestone name provided: slugify and load
-
Fetch Latest Issue States from GitHub
gh issue list --milestone "<milestoneName>" --state all --json number,title,state,labels --limit 100 -
Diff Local vs GitHub State
- Detect newly closed issues (local=open, GitHub=closed)
- Detect newly opened issues (local=closed, GitHub=open -- reopened)
- Detect new issues added to milestone (not in local state)
- For new issues not mapped to a module: ask user to assign module or create "unassigned" group
-
Recalculate Progress
- For each module:
module.progress = (closed_issues_in_module / total_issues_in_module) * 100 module.status: - "complete" : all issues closed - "in_progress" : at least 1 issue has PR or is closed, and at least 1 is still open - "pending" : all issues open AND no PR exists - Overall:
overall_progress = (total_closed_issues / total_issues) * 100
- For each module:
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.
- 3d ago First seen · 336 lines · 113 tokens per session scan B 176e2c21c4fc
update-progress is a skill published in the GitHub repository YoungjaeDev/my-claude-plugins (2 stars, last pushed 8d ago), licensed MIT. It adds 113 tokens to every session and 3,401 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it B with 1 finding (reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
wayfinder
Plan a huge chunk of work (more than one agent session can hold) as a shared map of decision tickets on your issue tracker, and resolve them one at a time until the way to the destination is clear.
sap-transport-overview
System-wide inventory of open transport requests — every visible modifiable request, who owns it, how big it is, and supported risk signals such as empty/local requests, explicit locks, and confirmed manifest overlaps. Headers-only and cheap; NO source diffs. Use when asked "what transports are open in the system"…
timeline-creator
Create HTML timelines and project roadmaps with Gantt charts, milestones, phase groupings, and progress indicators. Use when users request timelines, roadmaps, Gantt charts, project schedules, or milestone visualizations.
pm-all
Skill "pm-all" from wei63w/pm-manager, covering user input, outline and shared workflow (all /pm- commands).
bootstrap-prd
Set up PRD-driven development infrastructure for a new project, including directory structure, templates, and roadmap.
finn-spec
Interview the user about a raw idea until confident, then file a build-ready issue in Linear. Use when asked to run Finn-loop's spec interview, draft a queue-ready issue, or plan a feature. Interactive — requires the user present; never run unattended.