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/anettodev/github-planner/epic-to-projectnpx skills add anettodev/github-planner --skill epic-to-projectgit clone --depth 1 https://github.com/anettodev/github-plannerWrote 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/anettodev/github-planner/epic-to-project)<a href="https://agentmods.dev/skills/anettodev/github-planner/epic-to-project"><img src="https://agentmods.dev/badge/skills/anettodev/github-planner/epic-to-project.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.00000 | $0.01454 |
| Opus 5 | $0.00000 | $0.00727 |
| Sonnet 5 | $0.00000 | $0.00291 |
| Haiku 4.5 | $0.00000 | $0.00145 |
Grade A, and why
epic-to-project 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 4d 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 — 147 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Epic-to-Project Skill
You are an expert at structuring GitHub Projects (v2) from planning documents. You extract the high-level project structure — phases, priorities, custom fields — and map issues into a board layout.
What You Parse
This skill works alongside plan-to-issues (which extracts individual issues). You extract the project-level structure:
- Project title and description from the document heading or epic name
- Phases from document sections → become a GitHub Milestone AND a Phase custom field on the board
- Priority levels from task signals → become a custom field
- Issue groupings with their field value assignments
Custom Field Schema
Every project gets three standard fields:
Priority (Single Select)
| Value | Color | Mapped From |
|---|---|---|
| Critical | #B60205 (red) |
"CRITICAL", "P0", "Priority 1", "Blocker" |
| High | #D93F0B (orange) |
"HIGH", "P1", "Priority 2", "Must have" |
| Medium | #FBCA04 (yellow) |
"MEDIUM", "P2", "Priority 3-4", "Should have" |
| Low | #0E8A16 (green) |
"LOW", "P3+", "Priority 5-6", "Nice to have" |
Phase (Single Select)
Values are extracted dynamically from the document. Examples:
- "Phase 1: Quick Wins" → field value
Phase 1 - "Sprint 3" → field value
Sprint 3 - "Milestone: Auth Overhaul" → field value
Auth Overhaul
Each Phase value also maps to a GitHub Milestone of the same name (see Milestone Handling below).
Status (Single Select)
Standard kanban values (always the same). GitHub Projects creates Todo/In Progress/Done by default — always extend with In Review:
| Value | Color | Notes |
|---|---|---|
| Todo | #0075CA (blue) |
Default GitHub option |
| In Progress | #FBCA04 (yellow) |
Default GitHub option |
| In Review | #5319E7 (purple) |
Must be added via updateProjectV2Field |
| Done | #0E8A16 (green) |
Default GitHub option |
Milestone Handling
Every Phase in the document corresponds to a GitHub Milestone. The agent must:
- List existing milestones before creating any:
gh milestone list --repo OWNER/REPO --state open --json number,title - Match by title (case-insensitive, trimmed). If a milestone with the same name already exists, reuse it — do not create a duplicate.
- Create only if missing:
gh api repos/OWNER/REPO/milestones \ --method POST \ --field title="Phase 1" \ --field description="Phase 1 from epic: EPIC_TITLE" - Assign the milestone to each issue when linking:
gh issue edit N --milestone "Phase 1" --repo OWNER/REPO - In link-only mode: read the issue's existing milestone (if any) and map it to the Phase field — do not overwrite an existing milestone unless the user explicitly asks.
What ships with it
1 file 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.
- 4d ago First seen · 147 lines · 0 tokens per session scan A b7fff4fc21c5
epic-to-project is a skill published in the GitHub repository anettodev/github-planner (2 stars, last pushed 5mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,454 tokens. 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
gr-product-dev-ops
🇺🇸 Your dev team ships features nobody asked for while user-reported bugs pile up for months. Operations blames engineering for ignoring users; engineering blames operations for not understanding technical constraints. This gives you the complete Product × Engineering × Operations alignment SOP — from unified…
pm-portfolio-v1
Portfolio and roadmap batch intake, turn a pile of asks into a prioritised verdict. Use when someone hands a BATCH and wants a decision: "prioritise this backlog", "score these requests", "batch verdict", "what goes in the next sprint or quarter", "turn this backlog document into a roadmap", "sprint recommendation"…
pm-start
THE front door for product, strategy and go-to-market work, use this when someone wants product work done and has not named a specific verb: "new feature", "write a PRD", "prioritize this backlog", "build the roadmap", "growth plan", "verify the release", "user stories for ", "interview case exercise", or any…
sdlc-studio
The antidote to vibe coding: a full software engineering team at your fingertips. Create or reverse-engineer PRDs, TRDs, personas, epics, and user stories with acceptance criteria, then plan, implement, test, and verify code against them - plus an autonomous Goal-Driven sprint loop that drives a prioritised batch to a…
bugpack-list-bugs
List all tracked bugs from BugPack with status and project filtering. Use when: user asks about bugs, pending issues, bug lists, or wants to see what needs fixing. NOT for: viewing detailed bug context (use bugpack-view-bug) or fixing bugs (use bugpack-fix-bug).
ship-execute
Execute the current sprint in test-first waves.