# Planning And Task Breakdown > Divide el trabajo en tareas ordenadas. Úsalo cuando tengas un spec o requisitos claros y necesites descomponer el trabajo en tareas implementables, estimar alcance o paralelizar. Fuente: https://skillsagentes.com/skills/addyosmani/agent-skills/planning-and-task-breakdown Markdown: https://skillsagentes.com/skills/addyosmani/agent-skills/planning-and-task-breakdown.md Repositorio: https://github.com/addyosmani/agent-skills Autor: addyosmani Licencia: MIT Actualizado: hace 4 días Coste de contexto: 59 tok instalada, 2.4k tok al activarse, 2.4k tok con todos los archivos del bundle Bundle: 1 archivo, 9 KB Permisos que pide: ninguno declarado ## Instalación Un skill son archivos markdown: los mismos archivos valen para cualquier agente y lo único que cambia es el directorio de destino, es decir la bandera `--agent`. Añade `-g` para instalarlo en todos los proyectos de la máquina. ```bash # Claude Code npx -y skills add addyosmani/agent-skills --skill planning-and-task-breakdown --agent claude-code # Cursor npx -y skills add addyosmani/agent-skills --skill planning-and-task-breakdown --agent cursor # Codex npx -y skills add addyosmani/agent-skills --skill planning-and-task-breakdown --agent codex # Gemini CLI npx -y skills add addyosmani/agent-skills --skill planning-and-task-breakdown --agent gemini # Windsurf npx -y skills add addyosmani/agent-skills --skill planning-and-task-breakdown --agent windsurf # Cline npx -y skills add addyosmani/agent-skills --skill planning-and-task-breakdown --agent cline ``` ## Qué hace - Descompone un spec o requisitos en tareas pequeñas y verificables con criterios de aceptación - Mapea el grafo de dependencias y ordena las tareas de abajo hacia arriba - Genera slicing vertical de features en lugar de horizontal por capas - Guarda el plan en tasks/plan.md y las tareas en tasks/todo.md o en un tracker externo - Añade checkpoints de verificación cada 2-3 tareas ## Cuándo usarla - Tienes un spec y necesitas dividirlo en unidades implementables - Una tarea se siente demasiado grande o vaga para empezar - El trabajo se puede paralelizar entre varios agentes o sesiones - Necesitas comunicar el alcance a un humano o el orden de implementación no es obvio ## Cuándo no - Cambios de un solo archivo con alcance obvio - El spec ya contiene tareas bien definidas ## Qué la activa - "Divide este spec en tareas implementables con criterios de aceptación" - "Esta tarea es demasiado grande, ayúdame a partirla en piezas más pequeñas" - "Necesito un plan de implementación con checkpoints para este feature" ## Archivos - SKILL.md — 9 KB ## SKILL.md Reproducido tal cual desde addyosmani/agent-skills bajo MIT. Esta sección es el documento original y está en inglés. # Planning and Task Breakdown ## Overview Decompose work into small, verifiable tasks with explicit acceptance criteria. Good task breakdown is the difference between an agent that completes work reliably and one that produces a tangled mess. Every task should be small enough to implement, test, and verify in a single focused session. ## When to Use - You have a spec and need to break it into implementable units - A task feels too large or vague to start - Work needs to be parallelized across multiple agents or sessions - You need to communicate scope to a human - The implementation order isn't obvious **When NOT to use:** Single-file changes with obvious scope, or when the spec already contains well-defined tasks. ## The Planning Process ### Step 1: Enter Plan Mode Before writing any code, operate in read-only mode: - Read the spec and relevant codebase sections - Identify existing patterns and conventions - Map dependencies between components - Note risks and unknowns **Do NOT write code during planning.** The output is a plan document saved to `tasks/plan.md` and a task list recorded in the task list target (see Output Files; default `tasks/todo.md`), not implementation. ### Step 2: Identify the Dependency Graph Map what depends on what: ``` Database schema │ ├── API models/types │ │ │ ├── API endpoints │ │ │ │ │ └── Frontend API client │ │ │ │ │ └── UI components │ │ │ └── Validation logic │ └── Seed data / migrations ``` Implementation order follows the dependency graph bottom-up: build foundations first. ### Step 3: Slice Vertically Instead of building all the database, then all the API, then all the UI — build one complete feature path at a time: **Bad (horizontal slicing):** ``` Task 1: Build entire database schema Task 2: Build all API endpoints Task 3: Build all UI components Task 4: Connect everything ``` **Good (vertical slicing):** ``` Task 1: User can create an account (schema + API + UI for registration) Task 2: User can log in (auth schema + API + UI for login) Task 3: User can create a task (task schema + API + UI for creation) Task 4: User can view task list (query + API + UI for list view) ``` Each vertical slice delivers working, testable functionality. ### Step 4: Write Tasks Each task follows this structure, whether it lands in the markdown task list or as an item in an external tracker (see Output Files): ```markdown ## Task [N]: [Short descriptive title] **Description:** One paragraph explaining what this task accomplishes. **Acceptance criteria:** - [ ] [Specific, testable condition] - [ ] [Specific, testable condition] **Verification:** - [ ] Tests pass: [the repository's focused-test command] - [ ] Build succeeds: [the repository's build command] - [ ] Manual check: [description of what to verify] **Dependencies:** [Task numbers this depends on, or "None"] **Files likely touched:** - `src/path/to/file.ts` - `tests/path/to/test.ts` **Estimated scope:** [Small: 1-2 files | Medium: 3-5 files | Large: 5+ files] ``` ### Step 5: Order and Checkpoint Arrange tasks so that: 1. Dependencies are satisfied (build foundation first) 2. Each task leaves the system in a working state 3. Verification checkpoints occur after every 2-3 tasks 4. High-risk tasks are early (fail fast) Add explicit checkpoints to the task list target: ```markdown ## Checkpoint: After Tasks 1-3 - [ ] All tests pass - [ ] Application builds without errors - [ ] Core user flow works end-to-end - [ ] Review with human before proceeding ``` ## Task Sizing Guidelines | Size | Files | Scope | Example | |------|-------|-------|---------| | **XS** | 1 | Single function or config change | Add a validation rule | | **S** | 1-2 | One component or endpoint | Add a new API endpoint | | **M** | 3-5 | One feature slice | User registration flow | | **L** | 5-8 | Multi-component feature | Search with filtering and pagination | | **XL** | 8+ | **Too large — break it down further** | — | If a task is L or larger, it should be broken into smaller tasks. An agent performs best on S and M tasks. **When to break a task down further:** - It would take more than one focused session (roughly 2+ hours of agent work) - You cannot describe the acceptance criteria in 3 or fewer bullet points - It touches two or more independent subsystems (e.g., auth and billing) - You find yourself writing "and" in the task title (a sign it is two tasks) ## Output Files - **Plan document:** Save the implementation plan to `tasks/plan.md`. This is always a markdown file — design decisions, risks, and open questions don't map cleanly onto individual tracker issues. - **Task list:** Record each task in the **task list target** (defined below). Create the `tasks/` directory if it does not exist. ### Task List Target The task list target is where tasks and checkpoints are recorded. It is defined once, here; every other reference in this skill defers to it. - **Default: a checklist-style markdown file at `tasks/todo.md`.** This is the convention the `/build` command and other downstream tooling expect. Use it unless the project says otherwise. - **External tracker:** if the project's agent rules (`CLAUDE.md`, `AGENTS.md`, etc.) or the user designate an issue tracker (e.g. GitHub Issues, Jira, Linear, `bd`/beads), create one tracker item per task instead of writing `tasks/todo.md`. Map the Step 4 structure onto the tracker's fields: acceptance criteria and verification steps in the item body, dependencies via the tracker's linking mechanism (`bd dep add`, "blocked by", etc.). Record Step 5 checkpoints as tracker items too, or as a checklist in the plan document if the tracker has no natural equivalent. When using an external tracker, note it in `tasks/plan.md` (e.g. "Tasks tracked in Linear project FOO") so downstream steps and future sessions know where to look, and keep the plan document's Task List section as an ordered index of tracker item IDs or links rather than a duplicate checklist. ## Plan Document Template ```markdown # Implementation Plan: [Feature/Project Name] ## Overview [One paragraph summary of what we're building] ## Architecture Decisions - [Key decision 1 and rationale] - [Key decision 2 and rationale] ## Task List ### Phase 1: Foundation - [ ] Task 1: ... - [ ] Task 2: ... ### Checkpoint: Foundation - [ ] Tests pass, builds clean ### Phase 2: Core Features - [ ] Task 3: ... - [ ] Task 4: ... ### Checkpoint: Core Features - [ ] End-to-end flow works ### Phase 3: Polish - [ ] Task 5: ... - [ ] Task 6: ... ### Checkpoint: Complete - [ ] All acceptance criteria met - [ ] Ready for review ## Risks and Mitigations | Risk | Impact | Mitigation | |------|--------|------------| | [Risk] | [High/Med/Low] | [Strategy] | ## Open Questions - [Question needing human input] ``` When tasks live in an external tracker, keep the Task List section above as an ordered index of tracker item IDs or links instead of a duplicate checklist. ## Parallelization Opportunities When multiple agents or sessions are available: - **Safe to parallelize:** Independent feature slices, tests for already-implemented features, documentation - **Must be sequential:** Database migrations, shared state changes, dependency chains - **Needs coordination:** Features that share an API contract (define the contract first, then parallelize) ## Common Rationalizations | Rationalization | Reality | |---|---| | "I'll figure it out as I go" | That's how you end up with a tangled mess and rework. 10 minutes of planning saves hours. | | "The tasks are obvious" | Write them down anyway. Explicit tasks surface hidden dependencies and forgotten edge cases. | | "Planning is overhead" | Planning is the task. Implementation without a plan is just typing. | | "I can hold it all in my head" | Context windows are finite. Written plans survive session boundaries and compaction. | ## Red Flags - Starting implementation without a written task list - Writing `tasks/todo.md` when the project has designated an external tracker (or scattering tasks across both) - Tasks that say "implement the feature" without acceptance criteria - No verification steps in the plan - All tasks are XL-sized - No checkpoints between tasks - Dependency order isn't considered ## Verification Before starting implementation, confirm: - [ ] Every task has acceptance criteria - [ ] Every task has a verification step - [ ] Task dependencies are identified and ordered correctly - [ ] Tasks are recorded in the task list target (default `tasks/todo.md`) - [ ] No task touches more than ~5 files - [ ] Checkpoints exist between major phases - [ ] The human has reviewed and approved the plan ## See Also Acceptance criteria are per-task and answer "did we build the right thing?". They sit on top of the project-wide Definition of Done, the standing bar every task clears before it counts as done. See `../../references/definition-of-done.md`. ## Dónde encaja - Categoría: [Productividad](https://skillsagentes.com/categorias/productividad.md) — Planificación, toma de notas y automatización de flujos personales. - Creador: [addyosmani](https://skillsagentes.com/creators/addyosmani.md) — 5 skills en el directorio - [Todas las skills](https://skillsagentes.com/skills.md) - [Ranking de instalaciones](https://skillsagentes.com/ranking.md) ## Otras skills del mismo repositorio - [Security And Hardening](https://skillsagentes.com/skills/addyosmani/agent-skills/security-and-hardening.md): Endurece el código contra vulnerabilidades. Úsalo al manejar entrada de usuario, autenticación, almacenamiento de datos, integraciones externas o datos personales (GDPR, CCPA). - [Spec Driven Development](https://skillsagentes.com/skills/addyosmani/agent-skills/spec-driven-development.md): Crea especificaciones antes de programar: úsalo al iniciar un proyecto o cambio sin spec, cuando los requisitos son ambiguos, o cuando un requerimiento debe descomponerse en un mapa de módulos. - [Code Review And Quality](https://skillsagentes.com/skills/addyosmani/agent-skills/code-review-and-quality.md): Realiza revisión de código en múltiples ejes. Úsalo antes de fusionar cualquier cambio, sea escrito por ti, otro agente o una persona, para evaluar la calidad antes de entrar a la rama principal. - [Observability And Instrumentation](https://skillsagentes.com/skills/addyosmani/agent-skills/observability-and-instrumentation.md): Instrumenta el código para que el comportamiento en producción sea visible y diagnosticable, con logging, métricas, tracing y alertas. - [Using Agent Skills](https://skillsagentes.com/skills/addyosmani/agent-skills/using-agent-skills.md): Descubre e invoca las skills de agente adecuadas; es la meta-skill que gobierna cómo se descubren y aplican todas las demás skills según la fase de desarrollo. --- Skills Agentes · [Índice de páginas en markdown](https://skillsagentes.com/sitemap.md) · [Inicio](https://skillsagentes.com/index.md)