task-pipeline-skill 0.8.1 → 0.9.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 +24 -0
- package/README.md +22 -0
- package/cursor/rules/task-pipeline.mdc +56 -0
- package/package.json +3 -1
- package/plugins/task-pipeline/.claude-plugin/plugin.json +1 -1
- package/plugins/task-pipeline/skills/task-pipeline/references/artifacts.md +3 -1
- package/plugins/task-pipeline/skills/task-pipeline/references/stages.md +3 -2
- package/templates/README.md +12 -0
- package/templates/brief.md +35 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,29 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## v0.9.0 — 2026-07-23
|
|
4
|
+
|
|
5
|
+
Full structural parity with the sibling `super-ux` per the ssheleg skill canon
|
|
6
|
+
(make-skill): the Cursor channel and a templates dir were the last gaps.
|
|
7
|
+
|
|
8
|
+
- **Cursor channel.** New `cursor/rules/task-pipeline.mdc` — a self-contained,
|
|
9
|
+
agent-requested rule (`alwaysApply: false` + a trigger `description`, no external
|
|
10
|
+
links so it survives being copied into any project) that carries the full
|
|
11
|
+
intake-grill + 9-stage discipline and the super-ux recommendation. Install
|
|
12
|
+
globally via `npx skills add ssheleg/task-pipeline --agent cursor --global`, or
|
|
13
|
+
copy per project into `.cursor/rules/`.
|
|
14
|
+
- **Templates dir.** New `templates/brief.md` — the stage-0 intake-brief skeleton
|
|
15
|
+
this plugin seeds into `docs/superpowers/specs/…-brief.md` (create-if-absent,
|
|
16
|
+
never overwrite), plus `templates/README.md` mapping template → destination →
|
|
17
|
+
stage. Spec/plan and `docs/ux/*` skeletons remain owned by superpowers / super-ux.
|
|
18
|
+
- **Validator + packaging.** The validator now checks every `cursor/rules/*.mdc`
|
|
19
|
+
has `description` + `alwaysApply` frontmatter and that `templates/brief.md`
|
|
20
|
+
exists; `package.json` `files` ships `cursor` and `templates`. All prior gates
|
|
21
|
+
(four-way version sync, config conformance, gate types, release shape, links)
|
|
22
|
+
retained.
|
|
23
|
+
- **Docs.** README gains a Cursor install block and an "Updating everywhere" table
|
|
24
|
+
(one channel per agent — the plugin+plain duplicate caveat spelled out);
|
|
25
|
+
`references/artifacts.md` and stage 0 reference the brief template.
|
|
26
|
+
|
|
3
27
|
## v0.8.1 — 2026-07-23
|
|
4
28
|
|
|
5
29
|
- Docs consistency: the SKILL.md super-ux intro now lists the full current chain
|
package/README.md
CHANGED
|
@@ -97,6 +97,15 @@ npx task-pipeline-skill # from the npm registry
|
|
|
97
97
|
on npm; installs the same skill + `/task-pipeline` command into `~/.claude`,
|
|
98
98
|
idempotent, `--force` to overwrite)
|
|
99
99
|
|
|
100
|
+
**Cursor:**
|
|
101
|
+
```
|
|
102
|
+
npx skills add ssheleg/task-pipeline --agent cursor --global # global, or…
|
|
103
|
+
```
|
|
104
|
+
…or per project, copy `cursor/rules/task-pipeline.mdc` into the repo's
|
|
105
|
+
`.cursor/rules/`. Cursor has no global rules directory — use the skills CLI for a
|
|
106
|
+
global install, the `.mdc` for per-project, or paste it into Cursor Settings →
|
|
107
|
+
Rules. The rule is self-contained (no external links), so it works copied anywhere.
|
|
108
|
+
|
|
100
109
|
**Plain skill:**
|
|
101
110
|
```
|
|
102
111
|
git clone https://github.com/ssheleg/task-pipeline
|
|
@@ -106,6 +115,19 @@ cd task-pipeline && ./install.sh
|
|
|
106
115
|
command into `~/.claude/commands/`; idempotent — rerun skips existing installs,
|
|
107
116
|
`./install.sh --force` overwrites)
|
|
108
117
|
|
|
118
|
+
## Updating everywhere
|
|
119
|
+
|
|
120
|
+
Pick **one** channel per agent (running the plugin and the plain/skills-CLI copy
|
|
121
|
+
on the same Claude Code install yields a duplicate skill).
|
|
122
|
+
|
|
123
|
+
| Agent / channel | Update |
|
|
124
|
+
|---|---|
|
|
125
|
+
| Claude Code (plugin) | `claude plugin marketplace update task-pipeline` → `claude plugin update task-pipeline@task-pipeline` → restart |
|
|
126
|
+
| Any agent (skills CLI) | `npx skills add ssheleg/task-pipeline --agent <name> --global` (re-run overwrites); `--agent '*'` for all |
|
|
127
|
+
| Cursor | skills CLI (above) with `--agent cursor`, or re-copy the `.mdc` per project |
|
|
128
|
+
| npm | `npx task-pipeline-skill@latest` / `npx github:ssheleg/task-pipeline` (ephemeral — always latest) |
|
|
129
|
+
| Plain skill | `git pull && ./install.sh --force` |
|
|
130
|
+
|
|
109
131
|
## Use
|
|
110
132
|
|
|
111
133
|
Say *"run this through the pipeline"* / *"полный цикл"* / *"прогони по конвейеру"*,
|
|
@@ -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,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "task-pipeline-skill",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.9.0",
|
|
4
4
|
"description": "Full-cycle task delivery pipeline orchestrator skill for Claude Code — 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"
|
|
@@ -8,6 +8,8 @@
|
|
|
8
8
|
"files": [
|
|
9
9
|
"bin",
|
|
10
10
|
"plugins",
|
|
11
|
+
"cursor",
|
|
12
|
+
"templates",
|
|
11
13
|
"README.md",
|
|
12
14
|
"LICENSE",
|
|
13
15
|
"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.9.0",
|
|
5
5
|
"author": { "name": "ssheleg" },
|
|
6
6
|
"homepage": "https://github.com/ssheleg/task-pipeline",
|
|
7
7
|
"repository": "https://github.com/ssheleg/task-pipeline",
|
|
@@ -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 `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
|
+
templates/brief.md # skeleton seeded at stage 0
|
|
55
57
|
bin/task-pipeline.js # npx installer (package task-pipeline-skill)
|
|
56
58
|
package.json
|
|
57
59
|
install.sh # POSIX installer
|
|
@@ -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 plugin'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
|
|
@@ -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).
|