From fenix
Workflow for finalizing a story after all tasks pass review. Verifies completeness, closes the story, updates documentation, and cleans up. Use when all tasks are done and reviewed.
How this skill is triggered — by the user, by Claude, or both
Slash command
/fenix:fenix-technical-deliveryThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill guides you through the final steps of delivering a story: verifying all tasks are complete, closing the story, updating documentation, and saving a final delivery memory.
This skill guides you through the final steps of delivering a story: verifying all tasks are complete, closing the story, updating documentation, and saving a final delivery memory.
Use this when: all tasks for a story are implemented and reviewed, and the user is ready to finalize delivery.
Verify all tasks done → Close story → Update documentation → Clean up TODOs → Save delivery memory
Check that every task under the story is done:
work_children(id: "{story uuid}")
Do NOT close the story if any task is not in "done" status.
Every task must be completed and verified before the story can be delivered.
If tasks are incomplete, go back to Technical Development or Technical Review.
For each task, confirm:
Move the story to done:
work_status_done(id: "{story uuid}")
This sets the story's status to the "done" category and records completed_at.
If the story is part of a feature, check if the feature is now complete:
work_children(id: "{feature uuid}")
If all stories under the feature are done, close the feature too:
work_status_done(id: "{feature uuid}")
If the delivered work introduced or changed functionality that should be documented:
memory_search(query: "documentation {feature/story key}")
doc_full_tree()
For new functionality:
doc_create(
doc_title: "{Feature Name}",
doc_type: "page",
doc_emoji: "📄",
doc_content: "## Overview\n{what this feature does}\n\n## Usage\n{how to use it}\n\n## Technical Details\n{relevant implementation details}\n\n## API Reference\n{endpoints, parameters, responses — if applicable}",
doc_parent_id: "{parent folder uuid if applicable}"
)
For updates to existing functionality:
doc_update(
id: "{doc uuid}",
doc_content: "{updated content}"
)
Not everything needs docs. Skip if:
Check for any TODOs that were created during development:
todo_list()
For each TODO related to this story:
todo_update(id: "{todo uuid}", todo_completed: true)todo_delete(id: "{todo uuid}")Save a final summary of what was delivered:
memory_save(
title: "Delivered — {STORY-KEY} {story title}",
content: "## What was delivered\n{summary of the feature/change}\n\n## Tasks completed\n- {TASK-1}: {title}\n- {TASK-2}: {title}\n- {TASK-3}: {title}\n\n## Key decisions\n{important decisions from planning and implementation}\n\n## Documentation\n{what was documented, or 'No documentation needed'}\n\n## Lessons learned\n{anything worth remembering for similar work in the future}",
tags: ["delivery", "completed", "{story-key}", "{feature-key}"],
work_item_id: "{story uuid}",
sprint_id: "{sprint uuid if applicable}"
)
The story is delivered. The user can:
fenix-technical-planning)fenix-product-planning)npx claudepluginhub fenix-assistant/fenix-plugin --plugin fenixFinalizes task or workflow closeout after completion gate approval by syncing state, generating release notes/changelogs, and creating handoff packs.
Creates and manages task documentation including implementation plans, task IDs, and archiving completed work. Useful when starting a new feature or finishing one.
Executes configurable BMAD story delivery pipeline using subagents: create story, ATDD tests, development, code review, trace coverage. Auto-selects next todo story from sprint-status.yaml.