skills/asana-story/SKILL.md
Format a structured story spec into an Asana-ready task. Used by the product-manager agent to produce the final Asana output — do not gather requirements here, just format them. Also invocable directly when someone says "format this for Asana", "create an Asana task for this", "write this up as an Asana story", or "turn this spec into an Asana ticket".
npx skillsauth add maestria-co/ai-playbook asana-storyInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Receive a structured story spec and format it as a well-formed Asana task. This skill is a formatter only — it does not gather requirements, research the codebase, or make technical decisions. Those steps belong to the product-manager agent upstream.
A structured spec containing some or all of:
If any of these are missing, format what is available and note the gaps in the output's Open Questions section.
Produce a single Markdown block structured for Asana (or save as story.md).
Asana uses a flat task structure — the description field carries all detail.
**Task Name:**
[Action verb] + [outcome] — e.g. "Add date filter to order history"
**Assignee:** [leave blank — to be assigned in grooming]
**Due Date:** [leave blank — to be set in sprint planning]
**Priority:** [High / Medium / Low — if known]
**Tags/Labels:** [feature area, team, or component tags]
---
**Description:**
### Story
As a [specific persona],
I want [goal],
So that [measurable benefit]
### Problem Statement
[What problem this solves and why it matters]
### Acceptance Criteria
- [ ] Given [context], when [action], then [result]
- [ ] Given [context], when [action], then [result]
- [ ] Given [context], when [action], then [result]
[Mark any inferred AC with `(inferred — pending PO confirmation)`]
### Technical Notes
- Affected Components: [list]
- API Changes: [list or "None"]
- Data Model Changes: [list or "None"]
- Key Files: [list]
- Cross-Cutting Concerns: [auth, caching, events — or "None"]
- Complexity Estimate: [S / M / L / XL]
### Dependencies
- Blocking Tasks: [task names/IDs or "None"]
- Required Resources: [list or "None"]
- Approvals Needed: [list or "None"]
### Open Questions
- Q: [question] — Owner: [PO / Tech Lead / etc.] — Assumed: [assumption made]
Story Points: [to be set] so they aren't forgotten- [ ]) — format them that waydevelopment
Writes and runs a test suite for a piece of code, covering happy path, edge cases, error cases, and security cases. Use when: implementation is complete and needs test coverage, a bug needs a reproduction test and fix validation, or code needs coverage before a refactor. Do not use when: the code under test is not yet implemented, or the spec is still unclear.
testing
Use when creating a new skill, editing an existing skill, or helping a user author a skill for this system. Covers structure, discoverability, quality, and discipline hardening.
development
Evidence-based verification process to run before marking any task complete. Use this skill every time you're about to report that work is done — for features, bug fixes, refactoring, or any code change. This catches the most common failure mode: declaring "done" without proof. If you're finishing up and about to tell the user the task is complete, run this checklist first.
development
Teaches agents how to discover, select, and invoke skills from the skill library. Use this skill whenever you're uncertain which skill applies to a task, when composing multiple skills for complex work, or when you need to understand what skills are available. This is your go-to when facing an ambiguous task and need to figure out the right approach before diving into implementation.