Docs Project Management
docs-project-management/
Manage a whole project inside the repo's docs/ folder: roadmap, PRDs, epics, user stories, test cases and bugs as linked Markdown files with a status lifecycle. No issue tracker needed.

Run an entire project from the repo's
docs/folder, no external issue tracker, no ticket system.
Why use it
- Project state lives in a tracker the code doesn't know about, and the two drift apart the day after kickoff.
- Agents invent their own folders, link wording and status values, so nothing cross-references.
- "What was actually done?" has no answer that a reviewer can read in the diff.
What it does
- The work-item taxonomy: roadmap → PRD → TRD → epics → user stories → test cases → bugs, each in its own
docs/folder. - The link graph as relative markdown links, user story
part ofepic, test caseis tested bystory, bugblocksstory, PRD↔TRD. - The YAML-frontmatter status lifecycle + the bookend rule: move
status:forward when you start, again when you finish. - The mandatory test-case template and the bug + RCA report format.
- The team work-reporting convention: one session folder per run, every agent bookends a start/completion report there.
Benefits
- Your tracker ships with your code. Work item = markdown file. Status = a diff. History = git.
- Nothing drifts. Requirements, tests and bugs live next to what they describe.
- Reviewable progress. "What got done?" is answered by the PR itself.
- Still navigable at 300 files, because every agent writes to the same model.
- Zero tooling cost. No tracker, no license, no sync job, day one of a new project.
Install
Download this skill and copy the docs-project-management folder to .claude/skills/docs-project-management/ in your project, or to ~/.claude/skills/docs-project-management/ to use it in every project. Claude Code finds it on its own; you can also call it with /docs-project-management.
Part of the Agent Engineering bundle. To get the whole set as a Claude Code plugin: /plugin marketplace add endorphin-ai/hasbrains-agent-kit, then /plugin install agent-engineering@hasbrains-agent-kit.
Source: endorphin-ai/hasbrains-agent-kit. License: MIT.
Files (16)
Files
---
id: test-case-template
title: The Test Case Template (mandatory)
summary: The mandatory field-by-field shape every docs/test_cases/ file must follow, plus its required is-tested-by link to the User Story.
tags: [docs-pm/test-case, docs-pm/model]
load_when: When authoring or reviewing a Test Case file in docs/test_cases/.
links: [[link-graph]], [[work-item-taxonomy]], [[status-lifecycle]], [[conventions-recap]]
---
# The Test Case Template (mandatory)
> Every Test Case in docs/test_cases/ MUST carry an "is tested by" link to its User Story
> (see [[link-graph]]) AND be authored to this template. All fields required; mark `n/a` only where
> genuinely inapplicable.
TABLE test_case_template
COLUMNS: Field, What it holds
ROW: Test Case ID/Key | The tc-NNN filename key; carries an external work-item ref in frontmatter if one exists
ROW: Title | Concise behavior under test — e.g. `TC-042: Paid article body is absent for an unpaid user`
ROW: Linked User Story | Parent User Story, linked via **"is tested by"** ([[link-graph]])
ROW: Preconditions | State/fixtures/access-state required before the steps
ROW: Test Steps | NUMBERED navigate → action → expected steps
ROW: Test Data | Concrete inputs/fixtures/event ids used by the steps
ROW: Expected Result | The single pass condition for the whole case
ROW: Priority | High / Medium / Low
ROW: Type | manual or automated
ROW: Linked automated test | The automated test name that covers this case — unit/integration/e2e (e.g. a Playwright spec) — or n/a if manual-only
> Test Cases live in docs/test_cases/ ([[work-item-taxonomy]]) and track their own status per
> [[status-lifecycle]] (draft → ready → automated).