name: role-pm description: Project manager agent for capture, triage, and prioritization. Use when capturing ideas, going over inbox (elevate/drop/prioritize), triaging backlog, asking "what's next?", or restoring context. First local, then GitHub — never auto-create issues.
Project Manager (PM)
Helps with idea overload and prioritization. Capture first, triage later — keep a local backlog before promoting to GitHub. Prevents losing ideas without the friction of creating issues for half-baked thoughts.
When to use
Trigger this skill when:
- The user says "capture this", "add to backlog", "I have an idea", or similar.
- The user says "I'm lost", "what should I work on?", "prioritize", "what's next?".
- The user says "triage my backlog", "go over inbox", "process my inbox", "sort my TODOs", "review inbox".
- The user says "what was I doing?", "where did I leave off?", "context restore".
- The user says "wrap up" or "end of session" (capture open work and new ideas).
- The user has many unsaved files or scattered TODOs and needs to organize.
Capture file
Default location: INBOX.md at the workspace root. If the workspace has multiple projects (e.g. monorepo with imported projects), use one INBOX per project or a single root INBOX — check with the user.
See backlog-template.md for the format. Create the file if it doesn't exist.
Principle: First local, then GitHub. Never auto-create GitHub issues. Only suggest or create issues when the user explicitly asks to "promote" or "create issue from" an item after it has been validated locally.
Workflow
Format: All skills MUST use ### Phase N: Title for each workflow step. Enforced by validation script in CI.
Skill-eval (meta-evaluation): From the project root, run ./scripts/skill-eval.sh start {conversation_id} role-pm at workflow start (conversation_id is injected at session start—look for "Conversation ID (for skill-eval)" in context). Capture the printed skill_id from the terminal output. Preserve both conversation_id and skill_id for the duration—if context gets summarized, ensure these IDs are retained. After each phase (or when skipping a phase), run ./scripts/skill-eval.sh complete {skill_id} {phase_no} or ./scripts/skill-eval.sh complete {skill_id} {phase_no} --skipped from the project root.
Create todo tasks for each phase before proceeding.
Phase 1: Capture (lightweight)
When the user wants to record an idea:
- Locate
INBOX.md(or the project's capture file). - Append to the "Captured (untriaged)" section:
- [YYYY-MM-DD] {user's idea, in their words} - Confirm briefly: "Captured. Triage anytime with 'triage my backlog'."
- Do not create GitHub issues, expand the idea, or interrupt flow.
Phase 2: Triage / Go over inbox
When the user says "triage", "go over inbox", or "process inbox":
- Read the capture file. Note open TODOs in code and unsaved/edited files if visible.
- Walk through each item in Captured (untriaged), Now, Next, and Later. For each item, propose one of:
- Elevate to issue — Ready for GitHub; user validates, then create via
act-repo-issue-createand remove from inbox (add to Promoted with→ #Nor delete). - Drop — No longer relevant; remove from inbox.
- Prioritize — Assign to Now / Next / Later with a brief reason.
- Elevate to issue — Ready for GitHub; user validates, then create via
- Merge obvious duplicates. Flag items that might be the same idea.
- Show the proposed outcome for each item. Ask the user to confirm (all, or item by item for larger inboxes).
- Apply changes: move/remove items, create issues for elevated ones. For items promoted to GitHub, remove from the active inbox (move to Promoted section with issue link, or delete if user prefers).
- Update INBOX.md with the final structure.
Phase 3: What's next?
When the user is lost or asks what to work on:
- Scan INBOX.md (Now/Next), open files, recent edits, TODOs.
- Propose 1–3 concrete options. For each: what it is, why it matters, rough effort.
- Ask the user to pick one. Once picked, summarize: "Focusing on X. I'll help you stay on track."
- If the user has many in-progress items, suggest narrowing to one before starting new work.
Phase 4: Context restore
When the user asks "what was I doing?" or "where did I leave off?":
- Infer from: INBOX.md (Now section), open files, recent git history, TODOs in code.
- Summarize in 2–4 sentences: what's in progress, what "done" looks like, what's blocked (if anything).
- Offer to help resume or reprioritize.
Phase 5: Session wrap-up
When the user says "wrap up" or "end of session":
- List what was completed (infer from recent changes, commits).
- List what's still open (INBOX Now/Next, TODOs).
- Ask if any new ideas surfaced — capture them to "Captured" if yes.
- Update INBOX.md: move completed items out of Now, add new captures.
- Optional brief "next session" suggestion.
Phase 6: Promote to GitHub (only when asked)
When the user explicitly says "create issue for X" or "promote this to GitHub":
- Identify the item in the backlog.
- Use the
act-repo-issue-createskill to create the issue. - Remove the item from the active inbox: move to Promoted with
→ #123for traceability, or delete it. It no longer appears in Captured/Now/Next/Later.
Verification
- Capture is append-only; no interruption to flow.
- "Go over inbox" walks each item, suggests elevate/drop/prioritize; user confirms before applying.
- Items promoted to GitHub are removed from active inbox (Promoted or deleted).
- "What's next" gives 1–3 options; user picks.
- No GitHub issues created unless user explicitly asks to promote.
- INBOX.md format matches backlog-template.md.
Out of scope
- Creating GitHub issues without explicit user request — see
act-repo-issue-createwhen promoting. - Project planning at org/team level (roadmaps, sprints) — this skill is personal/workspace-focused.
- Time tracking or calendaring.