task-pipeline-skill 0.8.1 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +45 -0
- package/README.md +38 -6
- package/cursor/rules/task-pipeline.mdc +56 -0
- package/package.json +3 -2
- package/plugins/task-pipeline/.claude-plugin/plugin.json +1 -1
- package/plugins/task-pipeline/skills/task-pipeline/SKILL.md +1 -1
- package/plugins/task-pipeline/skills/task-pipeline/pipeline.example.json +42 -14
- package/plugins/task-pipeline/skills/task-pipeline/references/artifacts.md +3 -1
- package/plugins/task-pipeline/skills/task-pipeline/references/model-tiering.md +1 -1
- package/plugins/task-pipeline/skills/task-pipeline/references/stages.md +4 -3
- package/plugins/task-pipeline/skills/task-pipeline/templates/README.md +12 -0
- package/plugins/task-pipeline/skills/task-pipeline/templates/brief.md +35 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,50 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## v0.10.0 — 2026-07-25
|
|
4
|
+
|
|
5
|
+
Review pass — doc drift and a distribution defect found by an adversarial audit.
|
|
6
|
+
|
|
7
|
+
- **FIX: the stage-0 brief template never reached 3 of 4 install channels.**
|
|
8
|
+
`templates/brief.md` sat at the repo root, outside the plugin source, so the
|
|
9
|
+
skills CLI / npx / install.sh installs had no such file while `stages.md` told
|
|
10
|
+
the agent to seed from it. Moved to
|
|
11
|
+
`plugins/task-pipeline/skills/task-pipeline/templates/brief.md` — inside the
|
|
12
|
+
skill dir, so every channel ships it.
|
|
13
|
+
- **FIX: stale super-ux chain in `pipeline.example.json`.** Stage 3 still listed
|
|
14
|
+
only `ux-foundation` + `ux-scenarios`; it now runs the current chain
|
|
15
|
+
(`/ux` → `ux-foundation` → **`ux-flows`** → `ux-scenarios` → **`/ux-lint`**),
|
|
16
|
+
matching SKILL.md and `stages.md`. Stage-4 gate now also names `SCR-` screens.
|
|
17
|
+
- **FIX: README documented the old chain** in both languages, and recommended the
|
|
18
|
+
skills CLI for Claude Code (which shadows the plugin). Both corrected; multiple
|
|
19
|
+
agents now shown as repeated `--agent` flags.
|
|
20
|
+
- Description now opens with "Use when …" per canon. `ux-contract` stamp updated
|
|
21
|
+
v2 → v4. Model tiering moved to the current Opus generation (`claude-opus-5`).
|
|
22
|
+
- README gains npm / CI / license badges.
|
|
23
|
+
|
|
24
|
+
## v0.9.0 — 2026-07-23
|
|
25
|
+
|
|
26
|
+
Full structural parity with the sibling `super-ux` per the ssheleg skill canon
|
|
27
|
+
(make-skill): the Cursor channel and a templates dir were the last gaps.
|
|
28
|
+
|
|
29
|
+
- **Cursor channel.** New `cursor/rules/task-pipeline.mdc` — a self-contained,
|
|
30
|
+
agent-requested rule (`alwaysApply: false` + a trigger `description`, no external
|
|
31
|
+
links so it survives being copied into any project) that carries the full
|
|
32
|
+
intake-grill + 9-stage discipline and the super-ux recommendation. Install
|
|
33
|
+
globally via `npx skills add ssheleg/task-pipeline --agent cursor --global`, or
|
|
34
|
+
copy per project into `.cursor/rules/`.
|
|
35
|
+
- **Templates dir.** New `templates/brief.md` — the stage-0 intake-brief skeleton
|
|
36
|
+
this plugin seeds into `docs/superpowers/specs/…-brief.md` (create-if-absent,
|
|
37
|
+
never overwrite), plus `templates/README.md` mapping template → destination →
|
|
38
|
+
stage. Spec/plan and `docs/ux/*` skeletons remain owned by superpowers / super-ux.
|
|
39
|
+
- **Validator + packaging.** The validator now checks every `cursor/rules/*.mdc`
|
|
40
|
+
has `description` + `alwaysApply` frontmatter and that `templates/brief.md`
|
|
41
|
+
exists; `package.json` `files` ships `cursor` and `templates`. All prior gates
|
|
42
|
+
(four-way version sync, config conformance, gate types, release shape, links)
|
|
43
|
+
retained.
|
|
44
|
+
- **Docs.** README gains a Cursor install block and an "Updating everywhere" table
|
|
45
|
+
(one channel per agent — the plugin+plain duplicate caveat spelled out);
|
|
46
|
+
`references/artifacts.md` and stage 0 reference the brief template.
|
|
47
|
+
|
|
3
48
|
## v0.8.1 — 2026-07-23
|
|
4
49
|
|
|
5
50
|
- Docs consistency: the SKILL.md super-ux intro now lists the full current chain
|
package/README.md
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
# task-pipeline
|
|
2
2
|
|
|
3
|
+
[](https://www.npmjs.com/package/task-pipeline-skill)
|
|
4
|
+
[](https://github.com/ssheleg/task-pipeline/actions/workflows/validate.yml)
|
|
5
|
+
[](LICENSE)
|
|
6
|
+
|
|
3
7
|
Full-cycle task delivery pipeline orchestrator for **Claude Code**. One skill that
|
|
4
8
|
runs any substantial task through an up-front **intake grill** + **9 gated stages** —
|
|
5
9
|
built on the [superpowers](https://github.com/obra/superpowers) skills.
|
|
@@ -20,7 +24,7 @@ use. Every gate is typed — **auto** (the orchestrator verifies it, pass/fail)
|
|
|
20
24
|
| 0 | Intake grill | Fable | shared understanding reached; brief locked | manual |
|
|
21
25
|
| 1 | Docs study | Fable | contracts grounded on current docs | auto |
|
|
22
26
|
| 2 | Brainstorm | Fable | design approved; UI verdict recorded | manual |
|
|
23
|
-
| 3 | Spec | Fable | committed + reviewed; UI:
|
|
27
|
+
| 3 | Spec | Fable | committed + reviewed; UI: super-ux chain validated, linter green | manual |
|
|
24
28
|
| 4 | Plan | Fable | parallel-ready, DoD per task | auto |
|
|
25
29
|
| 5 | Dev | Opus | tasks DONE, TDD green per task | auto |
|
|
26
30
|
| 6 | Tests | Opus | full suite green, new code covered | auto |
|
|
@@ -54,7 +58,8 @@ is the **recommended** workflow, detected early in the stage-0 grill. If it's
|
|
|
54
58
|
installed, task-pipeline uses it; if not, it gives you the install line on the spot.
|
|
55
59
|
The spec stage runs it **before any plan is written**: `/ux` (setup check) →
|
|
56
60
|
`ux-foundation` (personas, JTBD, **customer journey maps**, user stories) →
|
|
57
|
-
`ux-
|
|
61
|
+
`ux-flows` (user flows + `screens.md` UI map, Figma frames) → `ux-scenarios`
|
|
62
|
+
(usage scenarios validated against the base, ux-contract v4) → `/ux-lint` (must pass). The
|
|
58
63
|
spec then embeds the UX layer — scenario IDs, CJM stages served, applicable UX
|
|
59
64
|
patterns — and the plan's UI tasks carry scenario IDs in their DoD. Scenarios come
|
|
60
65
|
before interface.
|
|
@@ -83,10 +88,13 @@ before interface.
|
|
|
83
88
|
/plugin install task-pipeline@task-pipeline
|
|
84
89
|
```
|
|
85
90
|
|
|
86
|
-
**Any agent via the skills CLI (
|
|
91
|
+
**Any agent via the skills CLI (Cursor, Codex, OpenCode, 70+ — not Claude Code,
|
|
92
|
+
use the plugin above):**
|
|
87
93
|
```
|
|
88
|
-
npx skills add ssheleg/task-pipeline
|
|
94
|
+
npx skills add ssheleg/task-pipeline --agent cursor --agent codex --global
|
|
89
95
|
```
|
|
96
|
+
(one repeated `--agent` per agent; never include `claude-code` while the plugin is
|
|
97
|
+
installed — the plain copy shadows it)
|
|
90
98
|
|
|
91
99
|
**npm installer (no clone needed):**
|
|
92
100
|
```
|
|
@@ -97,6 +105,15 @@ npx task-pipeline-skill # from the npm registry
|
|
|
97
105
|
on npm; installs the same skill + `/task-pipeline` command into `~/.claude`,
|
|
98
106
|
idempotent, `--force` to overwrite)
|
|
99
107
|
|
|
108
|
+
**Cursor:**
|
|
109
|
+
```
|
|
110
|
+
npx skills add ssheleg/task-pipeline --agent cursor --global # global, or…
|
|
111
|
+
```
|
|
112
|
+
…or per project, copy `cursor/rules/task-pipeline.mdc` into the repo's
|
|
113
|
+
`.cursor/rules/`. Cursor has no global rules directory — use the skills CLI for a
|
|
114
|
+
global install, the `.mdc` for per-project, or paste it into Cursor Settings →
|
|
115
|
+
Rules. The rule is self-contained (no external links), so it works copied anywhere.
|
|
116
|
+
|
|
100
117
|
**Plain skill:**
|
|
101
118
|
```
|
|
102
119
|
git clone https://github.com/ssheleg/task-pipeline
|
|
@@ -106,6 +123,19 @@ cd task-pipeline && ./install.sh
|
|
|
106
123
|
command into `~/.claude/commands/`; idempotent — rerun skips existing installs,
|
|
107
124
|
`./install.sh --force` overwrites)
|
|
108
125
|
|
|
126
|
+
## Updating everywhere
|
|
127
|
+
|
|
128
|
+
Pick **one** channel per agent (running the plugin and the plain/skills-CLI copy
|
|
129
|
+
on the same Claude Code install yields a duplicate skill).
|
|
130
|
+
|
|
131
|
+
| Agent / channel | Update |
|
|
132
|
+
|---|---|
|
|
133
|
+
| Claude Code (plugin) | `claude plugin marketplace update task-pipeline` → `claude plugin update task-pipeline@task-pipeline` → restart |
|
|
134
|
+
| Any agent (skills CLI) | `npx skills update task-pipeline --global --yes`; to add: repeated `--agent <name>` (never `claude-code` when the plugin is installed) |
|
|
135
|
+
| Cursor | skills CLI (above) with `--agent cursor`, or re-copy the `.mdc` per project |
|
|
136
|
+
| npm | `npx task-pipeline-skill@latest` / `npx github:ssheleg/task-pipeline` (ephemeral — always latest) |
|
|
137
|
+
| Plain skill | `git pull && ./install.sh --force` |
|
|
138
|
+
|
|
109
139
|
## Use
|
|
110
140
|
|
|
111
141
|
Say *"run this through the pipeline"* / *"полный цикл"* / *"прогони по конвейеру"*,
|
|
@@ -165,8 +195,10 @@ canonical artifact layout each stage writes to is fixed in
|
|
|
165
195
|
(web/mobile/CLI/TUI), [super-ux](https://github.com/ssheleg/super-ux) —
|
|
166
196
|
рекомендуемый воркфлоу, детектится ещё на гриле; если установлен — используется,
|
|
167
197
|
если нет — сразу даётся строка установки. Стадия спеки гоняет `/ux` →
|
|
168
|
-
`ux-foundation` (персоны, JTBD, CJM) → `ux-
|
|
169
|
-
|
|
198
|
+
`ux-foundation` (персоны, JTBD, CJM) → `ux-flows` (флоу + `screens.md` — карта
|
|
199
|
+
экранов) → `ux-scenarios` (сценарии, ux-contract v4) → `/ux-lint` (линтер должен
|
|
200
|
+
быть зелёным) до написания плана; спека включает ID сценариев, `SCR-` экраны,
|
|
201
|
+
стадии CJM и UX-паттерны.
|
|
170
202
|
Сценарии — до интерфейса.
|
|
171
203
|
- Каждая стадия напоминает, какую модель включить (`/model`): 0–4 — Fable,
|
|
172
204
|
5–6 — Opus, 7–9 — наследуется. Это только напоминание — модель переключает
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: "task-pipeline: run a substantial task through a disciplined, gated delivery cycle — an intake grill that expands the request, then docs→brainstorm→spec→plan→build→tests→lint/deploy→post-deploy→docs. Apply when the user asks to run a task through the pipeline, the full cycle / полный цикл / прогони по конвейеру, or starts any substantial feature/fix/build."
|
|
3
|
+
alwaysApply: false
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# task-pipeline — gated delivery cycle (Cursor)
|
|
7
|
+
|
|
8
|
+
Self-contained rule (Cursor copies this file into projects — no external links).
|
|
9
|
+
Run a substantial task through an up-front **intake grill + 9 gated stages**. No
|
|
10
|
+
stage advances until its **gate** passes. Each gate is `auto` (verify it yourself,
|
|
11
|
+
pass/fail) or `manual` (wait for the user's explicit go).
|
|
12
|
+
|
|
13
|
+
## Stage 0 — intake grill (do this FIRST)
|
|
14
|
+
|
|
15
|
+
A one-line task ("build feature X") is not enough to finish autonomously. Grill the
|
|
16
|
+
user up front, then run the rest without mid-flight questions:
|
|
17
|
+
1. One question per turn — never bundle.
|
|
18
|
+
2. Give a recommended answer with every question (+ one-line rationale).
|
|
19
|
+
3. Explore the codebase before asking — if a search/read answers it, do that.
|
|
20
|
+
4. Walk the decision tree depth-first; ask prerequisite decisions first.
|
|
21
|
+
5. Reconcile contradictions; chase dodges ("decide later" → "latest you can decide
|
|
22
|
+
and still ship?").
|
|
23
|
+
Stop when shared understanding is reached (every branch answered or explicitly
|
|
24
|
+
deferred) and lock the answers into a short brief the user confirms. Only then start.
|
|
25
|
+
|
|
26
|
+
## Stages 1→9
|
|
27
|
+
|
|
28
|
+
1. **Docs study** (auto) — ground every external lib/API on current docs, not recall.
|
|
29
|
+
2. **Brainstorm** (manual) — 2–3 approaches + a recommendation; design approved.
|
|
30
|
+
Record whether the task touches a user-facing surface (UI verdict).
|
|
31
|
+
3. **Spec** (manual) — write and commit the design; lock shared contracts. For UI
|
|
32
|
+
tasks, run the UX chain FIRST (see super-ux below) and embed it.
|
|
33
|
+
4. **Plan** (auto) — zero-context tasks, exact paths, TDD steps, DoD each,
|
|
34
|
+
dependency graph + parallel groups, non-overlapping file ownership.
|
|
35
|
+
5. **Dev** (auto) — isolate (worktree), TDD per task (failing test → minimal impl →
|
|
36
|
+
green → commit); two-stage review (spec compliance, then code quality).
|
|
37
|
+
6. **Tests** (auto) — full suite green (not just new tests); new/changed code
|
|
38
|
+
covered; no skip/xfail hiding red.
|
|
39
|
+
7. **Lint + deploy** (manual) — lint clean AND suite green before deploy; deploy is
|
|
40
|
+
outward → explicit user go.
|
|
41
|
+
8. **Post-deploy** (auto) — tail logs / health-check; clean boot or an honest
|
|
42
|
+
degradation report (never silent success).
|
|
43
|
+
9. **Docs** (auto) — update module docs/runbooks in the SAME change.
|
|
44
|
+
|
|
45
|
+
Cross-cutting: track tasks, conventional commits, honest degradation (never claim a
|
|
46
|
+
failed/skipped step succeeded), and get explicit go before any outward/irreversible
|
|
47
|
+
action (deploy, publish, repo create).
|
|
48
|
+
|
|
49
|
+
## super-ux for user-facing tasks (recommended)
|
|
50
|
+
|
|
51
|
+
If the task touches any UI (web/mobile/CLI/TUI), the WHY→UI→scenario chain comes
|
|
52
|
+
BEFORE interface code. If super-ux is available, use it: foundation (personas,
|
|
53
|
+
JTBD, customer journey maps, user stories) → flows + screens → scenarios (the
|
|
54
|
+
source of truth) → run its linter. Otherwise still design that chain, get it
|
|
55
|
+
approved, and trace every user-facing requirement to a scenario before building.
|
|
56
|
+
Install (Cursor/Claude/others): `npx skills add ssheleg/super-ux`.
|
package/package.json
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "task-pipeline-skill",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Full-cycle task delivery pipeline orchestrator skill for Claude Code
|
|
3
|
+
"version": "0.10.0",
|
|
4
|
+
"description": "Full-cycle task delivery pipeline orchestrator skill for Claude Code \u2014 an intake grill + 9 gated stages (docs, brainstorm, spec, plan, build, tests, deploy, post-deploy, docs/wiki) built on the superpowers skills, with a super-ux UX track for user-facing tasks and toggleable release automation. This package is the installer CLI.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"task-pipeline": "bin/task-pipeline.js"
|
|
7
7
|
},
|
|
8
8
|
"files": [
|
|
9
9
|
"bin",
|
|
10
10
|
"plugins",
|
|
11
|
+
"cursor",
|
|
11
12
|
"README.md",
|
|
12
13
|
"LICENSE",
|
|
13
14
|
"CHANGELOG.md"
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "task-pipeline",
|
|
3
3
|
"description": "Thin orchestrator: an intake grill expands the task, then docs study, brainstorm, spec, plan, subagent build, tests, lint/deploy, post-deploy log check, docs/wiki sync — typed auto/manual gates, per-stage model reminders, a super-ux UX track for user-facing tasks, and toggleable project-configurable release automation. Built on the superpowers skills; generic-portable.",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.10.0",
|
|
5
5
|
"author": { "name": "ssheleg" },
|
|
6
6
|
"homepage": "https://github.com/ssheleg/task-pipeline",
|
|
7
7
|
"repository": "https://github.com/ssheleg/task-pipeline",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: task-pipeline
|
|
3
|
-
description: "
|
|
3
|
+
description: "Use when running a substantial task through the full end-to-end delivery pipeline — an up-front intake grill that expands the request into a complete brief, then docs study, brainstorm, spec, plan, subagent-driven build, test suite, lint/deploy, post-deploy log check, and docs/wiki sync — as gated stages built on the superpowers skills. Use when the user wants to run a task through the pipeline, asks for the full cycle / полный цикл / прогони по конвейеру, invokes /task-pipeline, or starts any substantial feature, fix, or build that should follow the disciplined cycle rather than ad-hoc coding. Grills the operator first so the rest runs autonomously; recommends super-ux for any user-facing task; reminds which model to switch to per stage; reads host-project conventions for deploy/docs/wiki so it stays project-agnostic."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# task-pipeline
|
|
@@ -8,7 +8,10 @@
|
|
|
8
8
|
"state": "intake",
|
|
9
9
|
"name": "Intake grill",
|
|
10
10
|
"model": "claude-fable-5",
|
|
11
|
-
"skills": [
|
|
11
|
+
"skills": [
|
|
12
|
+
"grill-me",
|
|
13
|
+
"grilling"
|
|
14
|
+
],
|
|
12
15
|
"gate": {
|
|
13
16
|
"type": "manual",
|
|
14
17
|
"check": "grill the operator one question at a time (recommended answer per question; explore codebase/docs before asking) until shared understanding is reached — every decision branch has a recorded answer or explicit deferral, no open contradictions; UI verdict recorded (arms super-ux); decisions locked into a committed task brief the operator confirms before stage 1"
|
|
@@ -19,7 +22,10 @@
|
|
|
19
22
|
"state": "docs-study",
|
|
20
23
|
"name": "Docs study",
|
|
21
24
|
"model": "claude-fable-5",
|
|
22
|
-
"skills": [
|
|
25
|
+
"skills": [
|
|
26
|
+
"context7",
|
|
27
|
+
"context7-docs"
|
|
28
|
+
],
|
|
23
29
|
"gate": {
|
|
24
30
|
"type": "auto",
|
|
25
31
|
"check": "every contract the design will lock is grounded in fetched docs, not recall; unresolvable libraries are flagged in the spec"
|
|
@@ -30,7 +36,9 @@
|
|
|
30
36
|
"state": "brainstorm",
|
|
31
37
|
"name": "Brainstorm",
|
|
32
38
|
"model": "claude-fable-5",
|
|
33
|
-
"skills": [
|
|
39
|
+
"skills": [
|
|
40
|
+
"superpowers:brainstorming"
|
|
41
|
+
],
|
|
34
42
|
"gate": {
|
|
35
43
|
"type": "manual",
|
|
36
44
|
"check": "the user approves the design AND the UI verdict is recorded (does the task touch a user-facing surface — web/mobile/CLI/TUI? this arms the stage-3 UX track)"
|
|
@@ -41,10 +49,15 @@
|
|
|
41
49
|
"state": "spec",
|
|
42
50
|
"name": "Spec",
|
|
43
51
|
"model": "claude-fable-5",
|
|
44
|
-
"skills": [
|
|
52
|
+
"skills": [
|
|
53
|
+
"super-ux:ux-foundation",
|
|
54
|
+
"super-ux:ux-flows",
|
|
55
|
+
"super-ux:ux-scenarios",
|
|
56
|
+
"superpowers:brainstorming"
|
|
57
|
+
],
|
|
45
58
|
"gate": {
|
|
46
59
|
"type": "manual",
|
|
47
|
-
"check": "
|
|
60
|
+
"check": "UX track ran FIRST for user-facing tasks (/ux -> ux-foundation CJM -> ux-flows screens -> ux-scenarios -> /ux-lint green); spec committed and user-reviewed; every user-facing requirement traces to a scenario ID"
|
|
48
61
|
}
|
|
49
62
|
},
|
|
50
63
|
{
|
|
@@ -52,18 +65,23 @@
|
|
|
52
65
|
"state": "plan",
|
|
53
66
|
"name": "Plan",
|
|
54
67
|
"model": "claude-fable-5",
|
|
55
|
-
"skills": [
|
|
68
|
+
"skills": [
|
|
69
|
+
"superpowers:writing-plans"
|
|
70
|
+
],
|
|
56
71
|
"gate": {
|
|
57
72
|
"type": "auto",
|
|
58
|
-
"check": "every spec requirement maps to a task; no placeholders; parallel-group tasks share no files;
|
|
73
|
+
"check": "every spec requirement maps to a task; no placeholders; parallel-group tasks share no files; UI tasks name the scenario ID(s) and SCR- screen(s) they implement in their DoD"
|
|
59
74
|
}
|
|
60
75
|
},
|
|
61
76
|
{
|
|
62
77
|
"id": 5,
|
|
63
78
|
"state": "dev",
|
|
64
79
|
"name": "Dev",
|
|
65
|
-
"model": "claude-opus-
|
|
66
|
-
"skills": [
|
|
80
|
+
"model": "claude-opus-5",
|
|
81
|
+
"skills": [
|
|
82
|
+
"superpowers:using-git-worktrees",
|
|
83
|
+
"superpowers:subagent-driven-development"
|
|
84
|
+
],
|
|
67
85
|
"gate": {
|
|
68
86
|
"type": "auto",
|
|
69
87
|
"check": "all plan tasks DONE (two-stage review: spec compliance, then code quality); full test suite green"
|
|
@@ -73,8 +91,10 @@
|
|
|
73
91
|
"id": 6,
|
|
74
92
|
"state": "tests",
|
|
75
93
|
"name": "Tests",
|
|
76
|
-
"model": "claude-opus-
|
|
77
|
-
"skills": [
|
|
94
|
+
"model": "claude-opus-5",
|
|
95
|
+
"skills": [
|
|
96
|
+
"superpowers:test-driven-development"
|
|
97
|
+
],
|
|
78
98
|
"gate": {
|
|
79
99
|
"type": "auto",
|
|
80
100
|
"check": "full suite green (not just new tests); new/changed code covered; no skip/xfail smuggling a red suite past the gate"
|
|
@@ -85,7 +105,10 @@
|
|
|
85
105
|
"state": "lint-deploy",
|
|
86
106
|
"name": "Lint + deploy",
|
|
87
107
|
"model": "inherit",
|
|
88
|
-
"skills": [
|
|
108
|
+
"skills": [
|
|
109
|
+
"host:lint",
|
|
110
|
+
"host:deploy"
|
|
111
|
+
],
|
|
89
112
|
"gate": {
|
|
90
113
|
"type": "manual",
|
|
91
114
|
"check": "lint clean and full suite green before deploy; deploy is outward and needs explicit operator go"
|
|
@@ -96,7 +119,9 @@
|
|
|
96
119
|
"state": "post-deploy",
|
|
97
120
|
"name": "Post-deploy",
|
|
98
121
|
"model": "inherit",
|
|
99
|
-
"skills": [
|
|
122
|
+
"skills": [
|
|
123
|
+
"host:health-check"
|
|
124
|
+
],
|
|
100
125
|
"gate": {
|
|
101
126
|
"type": "auto",
|
|
102
127
|
"check": "clean boot confirmed (no error spike, live subsystems healthy), or an honest degradation report with next steps"
|
|
@@ -107,7 +132,10 @@
|
|
|
107
132
|
"state": "docs-wiki",
|
|
108
133
|
"name": "Docs + wiki",
|
|
109
134
|
"model": "inherit",
|
|
110
|
-
"skills": [
|
|
135
|
+
"skills": [
|
|
136
|
+
"host:module-docs",
|
|
137
|
+
"wiki-update"
|
|
138
|
+
],
|
|
111
139
|
"gate": {
|
|
112
140
|
"type": "auto",
|
|
113
141
|
"check": "docs in sync with code in the same change; wiki synced; dangling links fixed"
|
|
@@ -33,7 +33,7 @@ design → plan is traceable at a glance.
|
|
|
33
33
|
|
|
34
34
|
| Stage | Writes | Consumed by |
|
|
35
35
|
|---|---|---|
|
|
36
|
-
| 0 Intake | `specs/<topic>-brief.md` | stages 2–4 |
|
|
36
|
+
| 0 Intake | `specs/<topic>-brief.md` (seed from the skill's `templates/brief.md`) | stages 2–4 |
|
|
37
37
|
| 3 Spec | `specs/<topic>-design.md` (+ links `docs/ux/*` for UI) | stage 4 |
|
|
38
38
|
| 4 Plan | `plans/<topic>.md` | stage 5 |
|
|
39
39
|
| 3 UX track | `docs/ux/{foundation,flows,screens,scenarios}.md` | stages 4–9 + `/ux-lint` |
|
|
@@ -52,6 +52,8 @@ plugins/task-pipeline/
|
|
|
52
52
|
pipeline.schema.json # generic pipeline contract
|
|
53
53
|
pipeline.example.json # this plugin's own flow, as config
|
|
54
54
|
references/{stages,model-tiering,conventions,artifacts,companion-skills}.md
|
|
55
|
+
cursor/rules/task-pipeline.mdc # Cursor channel (self-contained rule)
|
|
56
|
+
plugins/task-pipeline/skills/task-pipeline/templates/brief.md # stage-0 skeleton (ships on every channel)
|
|
55
57
|
bin/task-pipeline.js # npx installer (package task-pipeline-skill)
|
|
56
58
|
package.json
|
|
57
59
|
install.sh # POSIX installer
|
|
@@ -6,7 +6,7 @@ lack one, keep your current model; the pipeline still runs.
|
|
|
6
6
|
| Stages | Recommended | id |
|
|
7
7
|
|---|---|---|
|
|
8
8
|
| 0–4 (intake grill, docs, brainstorm, spec, plan) | Fable 5 | `claude-fable-5` |
|
|
9
|
-
| 5–6 (subagent dev, tests) | Opus
|
|
9
|
+
| 5–6 (subagent dev, tests) | Opus 5 | `claude-opus-5` |
|
|
10
10
|
| 7–9 (lint/deploy, logs, docs) | inherit current | — |
|
|
11
11
|
|
|
12
12
|
## Mechanic
|
|
@@ -45,8 +45,9 @@ stages/agents/types (see SKILL.md → *Bring your own skills*).
|
|
|
45
45
|
*Prerequisites*); this arms the stage-3 UX track.
|
|
46
46
|
- **Artifact:** lock the resolved decisions into a **task brief** committed at
|
|
47
47
|
`docs/superpowers/specs/YYYY-MM-DD-<topic>-brief.md` (scope, users/UI verdict,
|
|
48
|
-
constraints, assumptions, explicitly-deferred items, done-criteria).
|
|
49
|
-
|
|
48
|
+
constraints, assumptions, explicitly-deferred items, done-criteria). Seed it from
|
|
49
|
+
the skill's `templates/brief.md` skeleton — but only when absent, never
|
|
50
|
+
overwrite an existing brief. Stages 2–4 build on this brief.
|
|
50
51
|
- **GATE (manual):** shared understanding reached — every detected branch has a
|
|
51
52
|
recorded answer or an explicit deferral, no open contradictions, and the
|
|
52
53
|
operator confirms the brief. Stop when a re-scan surfaces no new branches
|
|
@@ -88,7 +89,7 @@ stages/agents/types (see SKILL.md → *Bring your own skills*).
|
|
|
88
89
|
screen + state with wireframe and (Figma on) a Figma frame link.
|
|
89
90
|
4. `ux-scenarios` → `docs/ux/scenarios.md` — the **WHAT** (source of truth for
|
|
90
91
|
behavior): scenarios validated per the format contract (`scenario-format.md`,
|
|
91
|
-
ux-contract
|
|
92
|
+
ux-contract v4) — IDs, statuses, `Traces:` to stories/journey stages/flows,
|
|
92
93
|
edge/error states enumerated.
|
|
93
94
|
5. **Run the super-ux linter** (`/ux-lint` or `python3 docs/ux/lint.py`) — it
|
|
94
95
|
must pass: no drift, no orphans, no broken traces or stale Figma links.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# templates
|
|
2
|
+
|
|
3
|
+
Skeletons task-pipeline seeds into a host project. Only the **brief** is owned by
|
|
4
|
+
this plugin (it is the stage-0 intake artifact); the spec and plan skeletons come
|
|
5
|
+
from the `superpowers` skills, and the `docs/ux/*` skeletons from `super-ux`.
|
|
6
|
+
|
|
7
|
+
| Template | Seeded to | Stage |
|
|
8
|
+
|---|---|---|
|
|
9
|
+
| `brief.md` | `docs/superpowers/specs/YYYY-MM-DD-<topic>-brief.md` | 0 — intake grill |
|
|
10
|
+
|
|
11
|
+
Seeding rule (per the ssheleg canon): create a template copy **only when the
|
|
12
|
+
target is absent**; never overwrite an existing brief.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Task brief — <topic>
|
|
2
|
+
|
|
3
|
+
> Stage-0 intake artifact. The grill fills this in and the operator confirms it
|
|
4
|
+
> before stage 1. Copy to `docs/superpowers/specs/YYYY-MM-DD-<topic>-brief.md`.
|
|
5
|
+
> Every field is a resolved decision or an explicit deferral — no open unknowns.
|
|
6
|
+
|
|
7
|
+
- **Date:** YYYY-MM-DD
|
|
8
|
+
- **Task (one line):** <what the operator asked for, restated>
|
|
9
|
+
- **UI verdict:** yes / no — does this touch a user-facing surface (web/mobile/CLI/TUI)?
|
|
10
|
+
If yes, the stage-3 super-ux UX track is armed.
|
|
11
|
+
|
|
12
|
+
## Scope
|
|
13
|
+
|
|
14
|
+
- **In scope:** …
|
|
15
|
+
- **Out of scope / explicitly deferred:** … (with the reason and, for deferrals,
|
|
16
|
+
the latest moment the decision can still be made)
|
|
17
|
+
|
|
18
|
+
## Users & context
|
|
19
|
+
|
|
20
|
+
- **Who / for what:** … (personas, the job being done)
|
|
21
|
+
- **Where it runs / constraints:** platform, runtime, data, integrations, limits
|
|
22
|
+
|
|
23
|
+
## Decisions locked (the grill's output)
|
|
24
|
+
|
|
25
|
+
| # | Decision | Chosen | Rationale |
|
|
26
|
+
|---|---|---|---|
|
|
27
|
+
| 1 | … | … | … |
|
|
28
|
+
|
|
29
|
+
## Done-criteria
|
|
30
|
+
|
|
31
|
+
- Observable, verifiable conditions that mean "this task is finished".
|
|
32
|
+
|
|
33
|
+
## Open assumptions / risks
|
|
34
|
+
|
|
35
|
+
- Assumption → how it's validated (or flagged risky-untested).
|