manage-backlog
À propos
Cette compétence Claude aide les développeurs à créer et maintenir un backlog produit priorisé en utilisant des techniques telles que la rédaction de récits utilisateurs et la priorisation MoSCoW. Elle aide à convertir le périmètre du projet en éléments actionnables, à affiner le backlog avant les sprints et à reprioriser après les retours. Les fonctionnalités clés incluent la division des éléments, le suivi des statuts et la gestion des critères d'acceptation avec des estimations.
Installation rapide
Claude Code
Recommandénpx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/manage-backlogCopiez et collez cette commande dans Claude Code pour installer cette compétence
Documentation
Manage a Product Backlog
Create, prioritize, maintain backlog of work items = single source of truth for what needs doing. Applicable agile + classic PM.
Use When
- Start new project → convert scope → actionable items
- Ongoing grooming before sprint planning
- Re-prioritize after stakeholder feedback / scope changes
- Split oversized items
- Review + archive completed / cancelled
In
- Req: Project scope (charter, WBS, stakeholder)
- Opt: Existing BACKLOG.md to update
- Opt: Framework pref (MoSCoW, value/effort, WSJF)
- Opt: Estimation scale (pts, T-shirt, person-days)
- Opt: Sprint/iteration feedback requiring updates
Do
Step 1: Create / Load Structure
No backlog → create BACKLOG.md w/ std cols. Exists → read + validate.
# Product Backlog: [Project Name]
## Last Updated: [YYYY-MM-DD]
### Summary
- **Total Items**: [N]
- **Ready for Sprint**: [N]
- **In Progress**: [N]
- **Done**: [N]
- **Cancelled**: [N]
### Backlog Items
| ID | Title | Type | Priority | Estimate | Status | Sprint |
|----|-------|------|----------|----------|--------|--------|
| B-001 | [Title] | Feature | Must | 5 | Ready | — |
| B-002 | [Title] | Bug | Should | 2 | Ready | — |
| B-003 | [Title] | Task | Could | 3 | New | — |
### Item Details
#### B-001: [Title]
- **Type**: Feature | Bug | Task | Spike | Tech Debt
- **Priority**: Must | Should | Could | Won't
- **Estimate**: [Points or size]
- **Status**: New | Ready | In Progress | Done | Cancelled
- **Acceptance Criteria**:
- [ ] [Criterion 1]
- [ ] [Criterion 2]
- **Notes**: [Context, links, dependencies]
#### B-002: [Title]
...
→ BACKLOG.md w/ valid structure + summary stats.
If err: Malformed → restructure preserving existing item data.
Step 2: Write / Refine Items
Each new item as user story / requirement:
- User story: "As a [role], I want [capability] so that [benefit]"
- Requirement: "[System/Component] shall [behavior] when [condition]"
Each item needs:
- Unique ID (B-NNN, incrementing)
- Clear title (imperative verb form)
- Type classification
- ≥2 acceptance criteria (testable, binary pass/fail)
Example:
#### B-005: Enable User Login with OAuth
- **Type**: Feature
- **Priority**: Must
- **Estimate**: 5
- **Status**: Ready
- **Acceptance Criteria**:
- [ ] User can log in using GitHub OAuth
- [ ] User session persists for 24 hours
- [ ] Failed login shows clear error message
- **Notes**: Requires OAuth app registration in GitHub
→ All items have titles, types, acceptance criteria.
If err: No acceptance criteria → Status: New (not Ready). Can't enter sprint.
Step 3: Prioritize (MoSCoW / Value-Effort)
MoSCoW (default):
- Must: Project fails without. Non-negotiable.
- Should: Important but project succeeds without. Include if capacity.
- Could: Nice to have. Only if no impact on Must/Should.
- Won't: Explicitly excluded. Documented for future.
Value/Effort Matrix (alt):
| Low Effort | High Effort | |
|---|---|---|
| High Value | Do First (Quick Wins) | Do Second (Big Bets) |
| Low Value | Do Third (Fill-ins) | Don't Do (Money Pits) |
Sort table: Must first (by value within Must), Should, Could.
→ Every item has priority. Backlog sorted by priority.
If err: Stakeholders disagree on priorities → escalate Must vs Should to sponsor.
Step 4: Groom — Split, Estimate, Refine
Review for sprint-readiness. Per item:
- Split if estimate > 8 pts (or > 1 week) → 2-4 smaller
- Estimate using chosen scale
- Refine vague criteria → testable conditions
- Mark Ready when has title, criteria, estimate, no blockers
Document splitting:
**Split**: B-003 split into B-003a, B-003b, B-003c (original archived)
#### B-003a: Set Up Database Schema
- **Type**: Task
- **Priority**: Must
- **Estimate**: 3
- **Status**: Ready
- **Acceptance Criteria**:
- [ ] Users table created with email, name fields
- [ ] Migrations run successfully on dev environment
#### B-003b: Implement User CRUD Operations
- **Type**: Task
- **Priority**: Must
- **Estimate**: 5
- **Status**: Ready
- **Acceptance Criteria**:
- [ ] Create user endpoint returns 201 with user object
- [ ] Update user endpoint validates required fields
→ All Must + Should → Ready.
If err: Can't estimate → need Spike (time-boxed research task) in backlog.
Step 5: Update Summary + Archive
Update summary stats. Move Done + Cancelled → archive:
### Archive
| ID | Title | Status | Sprint | Completed |
|----|-------|--------|--------|-----------|
| B-001 | Enable User Login with OAuth | Done | S-003 | 2025-03-15 |
| B-004 | Add Dark Mode Theme | Cancelled | — | 2025-03-10 |
Update summary by counting per status:
# Count Ready items
grep "| Ready |" BACKLOG.md | wc -l
# Count In Progress items
grep "| In Progress |" BACKLOG.md | wc -l
# Count Done items
grep "| Done |" BACKLOG.md | wc -l
→ Stats match actual counts. Archive has all closed items.
If err: Counts don't match → recount by grepping Status + update summary manually.
Check
- BACKLOG.md w/ std structure
- Every item has unique ID, title, type, priority, status
- All Must + Should have criteria
- Items sorted by priority (Must, Should, Could)
- No item > 8 pts w/o split
- Summary stats accurate
- Done/Cancelled archived
Traps
- No acceptance criteria: Items w/o criteria can't verify done. Every item ≥2 testable criteria.
- Everything Must: >50% Must → priorities not real. Force-rank within Must.
- Zombie items: Sitting months w/o progress → re-evaluate / cancel.
- Estimates w/o ctx: Story pts relative → team needs ref item (e.g., "B-001 = our 3-pt reference").
- Splitting creates fragments: Split → each child indep deliverable + valuable.
- Backlog as dumping ground: Not wish list. Prune items no longer aligned.
- Missing deps: Note blocking in Notes. Blocked item ≠ Ready.
→
draft-project-charter— charter scope → initial backlog creationcreate-work-breakdown-structure— WBS work pkgs → backlog itemsplan-sprint— sprint planning selects from top of backloggenerate-status-report— backlog burn-down → status reportsconduct-retrospective— retro improvement items → backlog
Dépôt GitHub
Compétences associées
content-collections
MétaCette compétence propose une configuration éprouvée en production pour Content Collections, un outil axé sur TypeScript qui transforme des fichiers Markdown/MDX en collections de données typées de manière sûre avec une validation Zod. Utilisez-la lors de la création de blogs, de sites de documentation ou d'applications Vite + React riches en contenu pour garantir la sécurité de typage et la validation automatique du contenu. Elle couvre tout, de la configuration du plugin Vite et de la compilation MDX à l'optimisation des déploiements et la validation des schémas.
polymarket
MétaCette compétence permet aux développeurs de créer des applications avec la plateforme de marchés prédictifs Polymarket, incluant l'intégration d'API pour le trading et les données de marché. Elle fournit également une diffusion de données en temps réel via WebSocket pour surveiller les transactions en direct et l'activité du marché. Utilisez-la pour mettre en œuvre des stratégies de trading ou pour créer des outils traitant les mises à jour de marché en direct.
creating-opencode-plugins
MétaCette compétence aide les développeurs à créer des plugins OpenCode qui s'interconnectent avec plus de 25 types d'événements tels que les commandes, les fichiers et les opérations LSP. Elle fournit la structure du plugin, les spécifications de l'API événementielle et les modèles d'implémentation pour les modules JavaScript/TypeScript. Utilisez-la lorsque vous avez besoin d'intercepter, de surveiller ou d'étendre le cycle de vie de l'assistant IA OpenCode avec une logique personnalisée pilotée par les événements.
sglang
MétaSGLang est un framework de service LLM haute performance spécialisé dans la génération rapide et structurée pour les workflows JSON, regex et agentiques grâce à son cache de préfixe RadixAttention. Il offre une inférence nettement plus rapide, particulièrement pour les tâches avec des préfixes répétés, ce qui le rend idéal pour les sorties complexes et structurées ainsi que les conversations multi-tours. Choisissez SGLang plutôt que des alternatives comme vLLM lorsque vous avez besoin d'un décodage contraint ou que vous construisez des applications avec un partage étendu de préfixes.
