manage-backlog
Acerca de
Esta Skill de Claude ayuda a los desarrolladores a crear y mantener un backlog de producto priorizado utilizando técnicas como la escritura de historias de usuario y la priorización MoSCoW. Asiste en convertir el alcance del proyecto en elementos accionables, refinar el backlog antes de los sprints y re-priorizar tras recibir retroalimentación. Sus características clave incluyen la división de elementos, seguimiento de estado y gestión de criterios de aceptación con estimaciones.
Instalación rápida
Claude Code
Recomendadonpx 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-backlogCopia y pega este comando en Claude Code para instalar esta habilidad
Documentación
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
Repositorio GitHub
Habilidades relacionadas
content-collections
MetaEsta habilidad proporciona una configuración probada en producción para Content Collections, una herramienta centrada en TypeScript que transforma archivos Markdown/MDX en colecciones de datos con tipado seguro mediante validación Zod. Úsala al construir blogs, sitios de documentación o aplicaciones Vite + React con mucho contenido para garantizar seguridad de tipos y validación automática de contenido. Abarca todo, desde la configuración del plugin de Vite y compilación MDX hasta la optimización de despliegue y validación de esquemas.
polymarket
MetaEsta habilidad permite a los desarrolladores crear aplicaciones con la plataforma de mercados de predicción Polymarket, incluyendo la integración de API para operaciones y datos de mercado. También proporciona transmisión de datos en tiempo real a través de WebSocket para monitorear operaciones en vivo y actividad del mercado. Úsela para implementar estrategias de trading o crear herramientas que procesen actualizaciones de mercado en tiempo real.
creating-opencode-plugins
MetaEsta habilidad ayuda a los desarrolladores a crear complementos de OpenCode que se conectan a más de 25 tipos de eventos, como comandos, archivos y operaciones LSP. Proporciona la estructura del complemento, las especificaciones de la API de eventos y los patrones de implementación para módulos en JavaScript/TypeScript. Úsala cuando necesites interceptar, monitorear o extender el ciclo de vida del asistente de IA de OpenCode con lógica personalizada basada en eventos.
sglang
MetaSGLang es un framework de alto rendimiento para el servicio de LLM que se especializa en generación rápida y estructurada para JSON, expresiones regulares y flujos de trabajo de agentes utilizando su caché de prefijos RadixAttention. Ofrece una inferencia significativamente más rápida, especialmente para tareas con prefijos repetidos, lo que lo hace ideal para salidas complejas y estructuradas, y conversaciones multiturno. Elige SGLang sobre alternativas como vLLM cuando necesites decodificación restringida o estés construyendo aplicaciones con uso extensivo de prefijos compartidos.
