> Break a trusted implementation plan (or other provided context) into independently-grabbable, atomic work items, written to a single work-items.md file. Use when the user wants to convert a plan into work items, create implementation tickets or tasks, divide a plan into work units, or break the plan down into grabbable pieces. Do not use when there is no implementation plan yet or the plan is not yet trusted — use plan-implementation to produce the plan or iterative-plan-review to harden it first. Does not sequence work into demoable delivery phases — use plan-a-phased-build for that. Does not write code — use tdd to implement a work item.
npx skills add https://github.com/testdouble/han --skill plan-work-items
find . -maxdepth 1 -name "CLAUDE.md" -type ffind . -maxdepth 3 -name "project-discovery.md" -type ffind . -maxdepth 5 -name "feature-implementation-plan.md" -type fBreak an implementation plan into vertical slices (tracer bullets) and write them as work items to a single work-items.md file.
This skill mostly coordinates: locating the plan or context, resolving where the file goes, printing the breakdown, writing the work-items file. It runs autonomously end to end. Step 5 is where the judgement comes into play, in dividing up the plan.
work-items.md. It does not split work by repository, count repositories, or reason about cross-repository integration. The breakdown is driven only by the plan or context it is given.ui-designs/ subfolder, MUST reference the relevant design screenshots by a relative path from the work-items file to the screenshot. See references/work-item-template.md.Depends on lists other work items in this same file that must complete first, or None.artifacts/ subfolder of the plan that is not a contract or design reference. Restate plan-level decisions inline in the work item with See plan: D-N as the breadcrumb. Full include/exclude list in references/reference-artifact-inventory.md.The breakdown is built from an implementation plan when one exists, or from whatever context the user provided when one does not.
docs/features/<feature-name>/feature-implementation-plan.md (or the equivalent under the project's documentation root).feature-implementation-plan.md results above help here). If there is exactly one, use it. If there are multiple, use the most recently updated one. If there are none, use whatever plan-like context the user supplied inline in the conversation.The skill writes exactly one file: {folder}/work-items.md.
Resolve {folder} in this order:
project-discovery.md, or a Glob fallback (docs/features/<feature>/, docs/plans/, docs/). State the chosen folder in one short line and proceed; do not wait for confirmation.If work-items.md already exists in the chosen folder, do not silently overwrite it and do not stop to ask: write to a timestamp-suffixed name (e.g., work-items-2026-05-18.md) and state which file was written. The existing file is preserved.
If the plan references existing code or boundaries that aren't in your context, explore the affected code. Skip exploration if the plan is self-contained and the boundaries are already clear.
Before drafting work items, list every artifact an implementer of those work items will need. See references/reference-artifact-inventory.md for the include list, exclude list, and screenshot-to-work-item mapping rules.
If an expected artifact is missing (for example, the plan touches an HTTP boundary but no contract file exists), note it in the breakdown report rather than stopping: draft the work items that do not depend on it, and flag the work items it blocks as not draftable until the artifact exists. Stop only if no work items are draftable without the missing artifact.
Launch han-core:project-manager (subagent_type: "han-core:project-manager") with:
Return the han-core:project-manager's output verbatim. Proceed to Step 6.
Give each work item a stable symbolic ID: the prefix W plus a sequential number within this file (W-1, W-2, …). These IDs are for cross-referencing work items within the file and citing them in tickets, threads, and follow-up work. They are stable for the life of the file.
If the user asked for a different prefix (for example, a short feature-derived prefix so IDs stay distinct across multiple features' work-items files), use theirs. Otherwise default to W.
Work item title format: <W-N> — <short descriptive name> (em-dash separator).
Print a numbered list for visibility. For each work item show:
<W-N> — <short descriptive name>NoneD-3, D-7, Work Unit 2)ui-designs/ exists and the work item is UI-bearing, the screenshot filenames that will be referencedThis report is for visibility, not approval. Do not wait for the user's confirmation — proceed directly to Step 8 and write the file.
Write one work-items.md in the folder resolved in Step 2. The file layout (title line, intro, optional shared-artifacts preamble) is specified in references/work-items-file-format.md. Each work item uses the template in references/work-item-template.md.
Write incrementally per the operating principle: write the title and intro first, then append each work item as it is finalized. Save after each.
When the file is complete, give the user a short in-channel summary: the file path, the count of work items by type (HITL / AFK), and the next concrete action (typically "review the breakdown, then start the first AFK work item").
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
Use when implementation is complete, all tests pass, and you need to decide how to integrate the work - guides completion of development work by presenting structured options for merge, PR, or cleanup
Use when implementing any feature or bugfix, before writing implementation code
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes
Use when about to claim work is complete, fixed, or passing, before committing or creating PRs - requires running verification commands and confirming output before making any success claims; evidence before assertions always
Expert guidance for systematic backtesting of trading strategies. Use when developing, testing, stress-testing, or validating quantitative trading strategies. Covers "beating ideas to death" methodology, parameter robustness testing, slippage modeling, bias prevention, and interpreting backtest results. Applicable when user asks about backtesting, strategy validation, robustness testing, avoiding overfitting, or systematic trading development.
Cloud laboratory platform for automated protein testing and validation. Use when designing proteins and needing experimental validation including binding assays, expression testing, thermostability measurements, enzyme activity assays, or protein sequence optimization. Also use for submitting experiments via API, tracking experiment status, downloading results, optimizing protein sequences for better expression using computational tools (NetSolP, SoluProt, SolubleMPNN, ESM), or managing protein design workflows with wet-lab validation.
This skill should be used for time series machine learning tasks including classification, regression, clustering, forecasting, anomaly detection, segmentation, and similarity search. Use when working with temporal data, sequential patterns, or time-indexed observations requiring specialized algorithms beyond standard ML approaches. Particularly suited for univariate and multivariate time series analysis with scikit-learn compatible APIs.
Take testdouble/plan-work-items from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.