taskflow
CLAUDE.md1 starsChanged 24 days agoMITView on GitHub
Before touching code, create SCOPE.md, TASKS.md, QUESTIONS.md and PROGRESS.md in docs/projects/<project-name>/. Run /plan-start <project-name> to scaffold them. The plan is split into pull requests - one topic each, under 400 changed lines of code and 600 in total counting tests and docs, the lockfile excluded - and each pull request carries acceptance criteria agreed with the repo owner before any of its tasks start. A pull request has one branch; its first task opens it as a draft, its last…
In this repository6 other files it gives its agents.
- bug-red-testSkill
- docs-syncSkill
- init-workflowSkill
- plan-startSkill
- standards-reviewSkill
- task-runSkill
The file
We split this CLAUDE.md into the rules it gives an agent
2 rules. About 0 are common, 0 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 5
Before touching code, create SCOPE.md, TASKS.md, QUESTIONS.md and PROGRESS.md in docs/projects/<project-name>/.
- Very specific: line 40
Commit messages and pull requests carry no AI signature - no Co-Authored-By trailer for an AI, no "Generated with Claude Code" line - …
≈ “Common” is an estimate: at least 1 in 5 of the 26,980 CLAUDE.md 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.
Files
CLAUDE.md
Workflow
Before touching code, create SCOPE.md, TASKS.md, QUESTIONS.md and
PROGRESS.md in docs/projects/<project-name>/. Run /plan-start
<project-name> to scaffold them.
The plan is split into pull requests - one topic each, under 400 changed lines
of code and 600 in total counting tests and docs, the lockfile excluded - and
each pull request carries acceptance criteria agreed with the repo owner before
any of its tasks start. A pull request has one branch; its first task opens it
as a draft, its last marks it ready, and it reaches the default branch only when
the repo owner reviews and merges it. Its branch prefix, title prefix, labels,
assignee and stacking follow pullRequests in
.claude/workflow.json.
One task per commit, applied one at a time. Every task declares the model that must take it, and its change is made by a subagent spawned on that model. Tests come first: each task's tests are derived from the criteria and watched failing for the right reason before the implementation is written to make them pass. The repo owner sees all of a pull request's tests once, up front, with why each matters, and each pull request is reviewed by an independent opus agent before it is marked ready. A task that changes no behaviour says so and why.
| Symbol | Model | Scope |
| 🧠 | opus | Crosses module boundaries, or touches the skill procedures and the workflow.json contract every skill reads. Plans, sequencing and findings also run here |
| ⚙️ | sonnet | One layer, one surface |
| 🔧 | sonnet | Mechanical, proven by the gates alone: rename, copy fix, version bump |
| 🙋 | Human | Only the repo owner can do it: a merge, a login, a credential |
The tier binds the subagent that makes the change, and the mapping lives in
.claude/workflow.json. A task applied on the wrong model is a deviation for the
session log even when the diff is fine.
Gates before every commit: npm run version:check. There is no lint, type
check, unit or e2e suite. The pre-commit hook runs version:check.
Commit messages and pull requests carry no AI signature - no Co-Authored-By
trailer for an AI, no "Generated with Claude Code" line - unless
.claude/workflow.json sets aiSignature: true.
A bug fix ships a test verified failing against the old behaviour. Deviations from the plan go in the session log.
Git force flags are a last resort. Try the way without force first -
--force-with-lease, a stash, a new branch. When force is the only way, the
command's description says why it is necessary, not what it does; the guard
hook refuses a force flag without one.
Open questions live in QUESTIONS.md, each carrying a recommendation - why, a
concrete example per option, the cost, how to reverse it - and a ⬜ / 🚧 / ✅
status that flips the moment it is answered, and sitting in PROGRESS.md
directly above the task it blocks. They are put to the repo owner when the run
reaches that task and not before, and an answer given ahead of time is recorded
with where it came from, rather than re-asked. Questions are for decisions only:
anything this repository can answer, the agent reads for itself. An unanswered
question blocks its task, whatever its mark. The mark sets how the question is
put: 🟦 routine goes over in a line, while ⚠️ critical - hard, unreversible, or
carrying a security consequence - leads with what the wrong answer costs.
Commands
npm run version:check # plugin.json version bumped
npm run check # the pre-commit gatesWhich doc owns what
| Doc | Owns |
CLAUDE.md | the rules: workflow, commands, code standards |
README.md | the plugin: what it does, its skills and agents, how to install it |
examples/workflow.example.json | the shape of .claude/workflow.json every skill reads |
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
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.

