agentleFS
aaronfloreyaaronflorey/agent-skills/skills/prd-to-kandev-tasks/SKILL.md

prd-to-kandev-tasks

Skill2 starsChanged 7 months agoMITView on GitHub

Break PRDs, specs, or feature briefs into Kandev task graphs and submit them through MCP or agentctl. Use when asked to decompose product work, create Kandev tasks, slice PRDs into agent-ready work, or submit task graphs without blocking assigned agents.

The file

Show its rules and text

We split this skill into the rules it gives an agent

30 rules. About 0 are common, 22 are distinctive, and 8 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈22

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 8

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use this when a PRD, spec, roadmap item, or feature brief must become actionable Kandev tasks.

    line 15
  2. Distinctive:

    Leave a concise handoff comment or plan summary with created task IDs and unresolved questions.

    line 30
  3. Very specific:

    Read project instructions first: AGENTS.md, CLAUDE.md, .agents/, .opencode/, or equivalent.

    line 36
  4. Very specific:

    Read high-signal docs: README*, docs/specs/INDEX.md, nearby specs, ADRs, and existing plans.

    line 37
  5. Distinctive:

    Check current repo state with git status --short.

    line 39
  6. Distinctive:

    Use Kandev discovery when available: list workspaces, workflows, workflow steps, repositories, agents, executor profiles, and related tasks.

    line 40
  7. Distinctive:

    Stop discovery when you can answer: what repo is being changed, what stack is used, what tests verify it, what conventions apply, and which …

    line 42
  8. Distinctive:

    Create a concise working summary with:

    line 46
  9. Distinctive:

    Ask at most one bundled clarifying question only when the answer affects external interfaces, persisted data, migrations, destructive …

    line 56
  10. Distinctive:

    Do not create a flat checklist.

    line 60
  11. Distinctive:

    Test, QA, review, documentation, and release tasks when they are real deliverables.

    line 65
  12. Distinctive:

    Prefer fewer, stronger tasks over many vague microtasks.

    line 69
  13. Very specific:

    Use references/task-blueprint.md for the required brief format.

    line 73
  14. Distinctive:

    No task lacks acceptance criteria.

    line 90
  15. Distinctive:

    No auto-started task has an empty or generic description.

    line 91
  16. Distinctive:

    No task says only "implement this PRD", "fix bugs", "add tests", or "update docs".

    line 92
  17. Distinctive:

    No task spans unrelated deliverables just to reduce task count.

    line 93
  18. Distinctive:

    No dependency is implicit when parallel execution could conflict.

    line 94
  19. Distinctive:

    No task requires a repo, workflow, agent, or executor ID you have not resolved or intentionally omitted.

    line 95
  20. Distinctive:

    No task asks an agent to make a human/product decision that you could have asked once up front.

    line 96
  21. Distinctive:

    No task depends on local uncommitted changes unless the brief explicitly identifies that risk.

    line 97
  22. Very specific:

    Use MCP when create_task_kandev is available.

    line 101
  23. Very specific:

    Use start_agent: false for backlog/staged tasks or when human approval is needed first.

    line 107
  24. Very specific:

    Use blocked_by for dependency edges when creating tasks with known blockers.

    line 108
  25. Very specific:

    Use default_child_ordering: "sequential" for ordered sibling phases and "parallel" only when tasks are safe to run concurrently.

    line 109
  26. Distinctive:

    Use explicit repository or branch fields for cross-repo work.

    line 110
  27. Distinctive:

    Use CLI when running as a Kandev office agent and MCP mutation tools are unavailable.

    line 132
  28. Distinctive:

    Always post progress before status changes:

    line 142
  29. Very specific:

    If a task is blocked by another task, encode it with blocked_by or sequential child ordering before agents start.

    line 153
  30. Distinctive:

    If you discover that the submission surface cannot carry enough context, stop and report that as the blocker instead of launching vague …

    line 154

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

PRD to Kandev Tasks

Use this when a PRD, spec, roadmap item, or feature brief must become actionable Kandev tasks. Your job is to create a task graph that assigned agents can execute without needing your hidden context.

Preconditions

  • You have the PRD text, file path, or task description that contains the requested product work.
  • You can inspect the current project folder before creating tasks.
  • You have either Kandev MCP tools or $KANDEV_CLI. Prefer MCP when available because it supports rich task descriptions, repositories, workflow IDs, blockers, and auto-start controls.

Workflow

  1. Discover the project from the folder.
  2. Extract requirements and risks from the PRD.
  3. Draft a task graph before creating anything.
  4. Validate every task brief against the quality gates.
  5. Submit with MCP or CLI using the rules below.
  6. Leave a concise handoff comment or plan summary with created task IDs and unresolved questions.

Step 1: Discover the project

Inspect enough local evidence to make task briefs self-contained:

  • Read project instructions first: AGENTS.md, CLAUDE.md, .agents/, .opencode/, or equivalent.
  • Read high-signal docs: README*, docs/specs/INDEX.md, nearby specs, ADRs, and existing plans.
  • Identify stack and commands from manifests: package.json, pnpm-workspace.yaml, go.mod, Cargo.toml, pyproject.toml, Makefile, mise.toml, CI files.
  • Check current repo state with git status --short; do not plan tasks that overwrite unrelated local changes.
  • Use Kandev discovery when available: list workspaces, workflows, workflow steps, repositories, agents, executor profiles, and related tasks.

Stop discovery when you can answer: what repo is being changed, what stack is used, what tests verify it, what conventions apply, and which agents should own each slice.

Step 2: Extract the PRD

Create a concise working summary with:

  • Goal and user-visible outcome.
  • Non-goals and explicit exclusions.
  • Users, roles, permissions, and affected surfaces.
  • Acceptance criteria and success metrics.
  • Technical constraints: APIs, schemas, migrations, background jobs, security, performance, compatibility, rollout.
  • Dependencies and sequencing constraints.
  • Open questions that truly block execution.

Ask at most one bundled clarifying question only when the answer affects external interfaces, persisted data, migrations, destructive actions, legal/security policy, or an irreversible product decision. For routine implementation choices, choose a reasonable default and document it in the relevant task.

Step 3: Build A Task Graph

Do not create a flat checklist. Create tasks with explicit relationships:

  • Discovery or spike tasks only when implementation cannot be scoped from existing evidence.
  • Implementation tasks sized for one coherent agent session and one reviewable diff.
  • Migration or data tasks separated from UI/API work when rollback or ordering matters.
  • Test, QA, review, documentation, and release tasks when they are real deliverables.
  • Human decision tasks only for genuine blockers.
  • Dependency edges through blocked_by or sequential child ordering for work that must not run in parallel.

Prefer fewer, stronger tasks over many vague microtasks. Split when two tasks need different repositories, different owners, different verification commands, or one can run independently while the other waits.

Step 4: Write Each Task Brief

Use references/task-blueprint.md for the required brief format. Every task description must include:

  • Context the assigned agent will not otherwise know.
  • Goal and concrete deliverables.
  • Likely files or code areas to inspect.
  • Constraints and decisions already made.
  • Step-by-step execution guidance.
  • Acceptance criteria.
  • Verification commands.
  • Dependencies, blockers, and expected handoff output.

The description is the sub-agent's launch prompt in MCP-created tasks. Never rely on your private reasoning, current chat history, or a title-only task.

Step 5: Validate Before Creating

Reject and revise the task graph if any gate fails:

  • No task lacks acceptance criteria.
  • No auto-started task has an empty or generic description.
  • No task says only "implement this PRD", "fix bugs", "add tests", or "update docs".
  • No task spans unrelated deliverables just to reduce task count.
  • No dependency is implicit when parallel execution could conflict.
  • No task requires a repo, workflow, agent, or executor ID you have not resolved or intentionally omitted.
  • No task asks an agent to make a human/product decision that you could have asked once up front.
  • No task depends on local uncommitted changes unless the brief explicitly identifies that risk.

Submit With MCP

Use MCP when create_task_kandev is available.

  • In task mode, use parent_id: "self" for decomposition of the current task.
  • For external top-level task creation, omit parent_id and provide repository_id, repository_url, or local_path.
  • Resolve ambiguous workspace_id, workflow_id, workflow_step_id, repositories, agent profiles, and executor profiles before creating tasks.
  • Pass the full task brief as description.
  • Use start_agent: false for backlog/staged tasks or when human approval is needed first.
  • Use blocked_by for dependency edges when creating tasks with known blockers.
  • Use default_child_ordering: "sequential" for ordered sibling phases and "parallel" only when tasks are safe to run concurrently.
  • Use explicit repository or branch fields for cross-repo work; otherwise let subtasks inherit parent repository context.

Common MCP creation shape:

{
  "parent_id": "self",
  "title": "Implement account invite API",
  "description": "<full task brief from references/task-blueprint.md>",
  "repository_id": "<repo-id-if-needed>",
  "workflow_id": "<workflow-id-if-needed>",
  "workflow_step_id": "<start-step-if-needed>",
  "agent_profile_id": "<worker-or-specialist-profile-if-needed>",
  "executor_profile_id": "<executor-profile-if-needed>",
  "start_agent": true,
  "blocked_by": ["<blocking-task-id>"],
  "default_child_ordering": "sequential"
}

Submit With CLI

Use CLI when running as a Kandev office agent and MCP mutation tools are unavailable.

$KANDEV_CLI kandev agents list
$KANDEV_CLI kandev task create --title "Implement account invite API" \
  --parent "$KANDEV_TASK_ID" --assignee "<agent-id>" --blocked-by "<task-id>"

CLI caveat: the current singular task create command supports title, parent, assignee, priority, and blocked-by. If your CLI does not support rich descriptions, do not create auto-started title-only implementation work. Prefer MCP, a native office runtime action, or create a planning/comment handoff and explicitly note that rich task creation is blocked by the CLI surface.

Always post progress before status changes:

$KANDEV_CLI kandev comment add --body "Created PRD task graph: <task IDs and sequencing>. Remaining question: <none or one blocker>."

Blocker Policy

  • Front-load discovery to avoid delegating uncertainty.
  • Make routine technical decisions yourself and write them into task briefs.
  • Bundle product/API/schema questions into one human decision task only when required.
  • If a task is blocked by another task, encode it with blocked_by or sequential child ordering before agents start.
  • If you discover that the submission surface cannot carry enough context, stop and report that as the blocker instead of launching vague tasks.

Examples

See references/examples.md for:

  • Happy-path PRD decomposition.
  • Guarded sequencing with a human decision task.
  • Vague-task anti-patterns and corrected task briefs.

Final Output

Report:

  • Task graph created, including task IDs, owners, and dependencies.
  • Submission method used: MCP, CLI, or blocked fallback.
  • Verification or review tasks created.
  • Any open question, why it blocks, and who owns the answer.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.