harnessed 1.0.1 → 1.0.2
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/README.md +5 -5
- package/dist/cli.mjs +76 -11
- package/dist/cli.mjs.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/workflows/plan-feature/SKILL.md +56 -0
package/dist/index.mjs
CHANGED
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../package.json","../src/index.ts"],"names":[],"mappings":";AAAA,IAAA,eAAA,GAAA;AAAA,EAEE,OAAA,EAAW,OA6Fb,CAAA;;;AC1FO,IAAM,UAAU,eAAA,CAAI","file":"index.mjs","sourcesContent":["{\n \"name\": \"harnessed\",\n \"version\": \"1.0.
|
|
1
|
+
{"version":3,"sources":["../package.json","../src/index.ts"],"names":[],"mappings":";AAAA,IAAA,eAAA,GAAA;AAAA,EAEE,OAAA,EAAW,OA6Fb,CAAA;;;AC1FO,IAAM,UAAU,eAAA,CAAI","file":"index.mjs","sourcesContent":["{\n \"name\": \"harnessed\",\n \"version\": \"1.0.2\",\n \"description\": \"AI coding harness package manager + composition orchestrator\",\n \"type\": \"module\",\n \"license\": \"Apache-2.0\",\n \"author\": \"easyinplay\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/easyinplay/harnessed.git\"\n },\n \"homepage\": \"https://github.com/easyinplay/harnessed#readme\",\n \"bugs\": \"https://github.com/easyinplay/harnessed/issues\",\n \"keywords\": [\n \"claude-code\",\n \"ai-harness\",\n \"package-manager\",\n \"composition\",\n \"skill-pack\",\n \"mcp\",\n \"orchestrator\"\n ],\n \"engines\": {\n \"node\": \">=22.0.0\"\n },\n \"packageManager\": \"pnpm@10.12.0\",\n \"bin\": {\n \"harnessed\": \"./dist/cli.mjs\"\n },\n \"main\": \"./dist/index.mjs\",\n \"types\": \"./dist/index.d.ts\",\n \"exports\": {\n \".\": {\n \"types\": \"./dist/index.d.ts\",\n \"import\": \"./dist/index.mjs\",\n \"default\": \"./dist/index.mjs\"\n },\n \"./schemas\": {\n \"types\": \"./dist/schemas/index.d.ts\",\n \"import\": \"./dist/schemas/index.mjs\"\n },\n \"./package.json\": \"./package.json\"\n },\n \"files\": [\n \"dist\",\n \"manifests\",\n \"workflows\",\n \"routing\",\n \"config-templates\",\n \"schemas\",\n \"README.md\",\n \"LICENSE\",\n \"NOTICE\"\n ],\n \"scripts\": {\n \"dev\": \"tsup --watch\",\n \"build\": \"tsc --noEmit && tsup\",\n \"build:schema\": \"node ./scripts/build-schema.mjs\",\n \"validate:schema\": \"node ./scripts/validate-schema.mjs\",\n \"typecheck\": \"tsc --noEmit\",\n \"test\": \"vitest run --passWithNoTests\",\n \"test:watch\": \"vitest\",\n \"test:coverage\": \"vitest run --coverage --passWithNoTests\",\n \"bench\": \"vitest bench --run\",\n \"lint\": \"biome check .\",\n \"lint:fix\": \"biome check --write .\",\n \"format\": \"biome format --write .\"\n },\n \"dependencies\": {\n \"@anthropic-ai/claude-agent-sdk\": \"0.3.142\",\n \"@clack/prompts\": \"^0.10.1\",\n \"@sinclair/typebox\": \"^0.34.49\",\n \"ajv\": \"^8.20.0\",\n \"ajv-errors\": \"^3.0.0\",\n \"ajv-formats\": \"^3.0.1\",\n \"commander\": \"^13.0.0\",\n \"diff\": \"^9.0.0\",\n \"picocolors\": \"^1.1.1\",\n \"proper-lockfile\": \"^4.1.2\",\n \"yaml\": \"^2.9.0\"\n },\n \"devDependencies\": {\n \"@biomejs/biome\": \"^2.0.0\",\n \"@types/node\": \"^22.10.0\",\n \"@types/proper-lockfile\": \"^4.1.4\",\n \"@vitest/coverage-v8\": \"^4.0.0\",\n \"tsup\": \"^8.3.0\",\n \"typescript\": \"^5.6.0\",\n \"vitest\": \"^4.0.0\"\n },\n \"pnpm\": {\n \"onlyBuiltDependencies\": [\n \"esbuild\"\n ]\n }\n}\n","// Main library entry — re-exports public APIs.\n// phase 1.1 batch 1: skeleton only; schema validator wired in batch 2 (T3+).\n\nimport pkg from '../package.json' with { type: 'json' }\n\nexport const VERSION = pkg.version\n"]}
|
package/package.json
CHANGED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: plan-feature
|
|
3
|
+
description: |
|
|
4
|
+
plan-feature workflow — 5-phase three-layer-stack composition (gstack governance →
|
|
5
|
+
superpowers brainstorm → GSD discuss → GSD plan → planning-with-files persist).
|
|
6
|
+
Triggered by harnessed CLI `harnessed plan-feature --task <text>` or slash command
|
|
7
|
+
`/plan-feature` after `harnessed setup`.
|
|
8
|
+
trigger_phrases:
|
|
9
|
+
- "plan this feature"
|
|
10
|
+
- "design new feature"
|
|
11
|
+
- "plan-feature workflow"
|
|
12
|
+
- "跑 plan-feature"
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# plan-feature workflow
|
|
16
|
+
|
|
17
|
+
## Overview
|
|
18
|
+
|
|
19
|
+
5-phase chain mapping the user's CLAUDE.md Discuss + Plan discipline onto the harnessed
|
|
20
|
+
runtime (ADR 0011 — SDK + ralph-loop integration):
|
|
21
|
+
|
|
22
|
+
| phase | id | upstream | model | rationale |
|
|
23
|
+
| ----- | -- | -------- | ----- | --------- |
|
|
24
|
+
| 1 | `01-gstack-decision` | `gstack` `/office-hours` governance gate | opus | 多角色决策关卡 (CEO/EM/Designer/Paranoid/QA/CSO) |
|
|
25
|
+
| 2 | `02-brainstorm` | `superpowers brainstorming` + ui-ux-pro-max | sonnet | 任务复杂度澄清 + UI 设计方案 |
|
|
26
|
+
| 3 | `03-gsd-discuss` | `gsd` `/gsd-discuss-phase` | sonnet | 灰色地带澄清 4-question batch |
|
|
27
|
+
| 4 | `04-gsd-plan` | `gsd` `/gsd-plan-phase` | sonnet | Wave A research + Wave B planner + Wave C checker |
|
|
28
|
+
| 5 | `05-persist` | `planning-with-files` | haiku | task_plan.md + progress.md + findings.md 持久化 |
|
|
29
|
+
|
|
30
|
+
Per-phase config loads from `workflows/plan-feature/workflow.yaml`; engine.runRouting
|
|
31
|
+
spawns each phase as a sub-agent via `@anthropic-ai/claude-agent-sdk` 0.3.142+.
|
|
32
|
+
|
|
33
|
+
Phase 1 (gstack governance) uses `on_veto: halt_workflow` — any CEO/EM veto halts the
|
|
34
|
+
entire workflow before proceeding to brainstorm or planning.
|
|
35
|
+
|
|
36
|
+
## CLI invocation
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
# Dry-run preview — arbitrate-only, never spawns SDK.
|
|
40
|
+
harnessed plan-feature --task "<text>" --dry-run --non-interactive
|
|
41
|
+
|
|
42
|
+
# Apply path — real SDK spawn + 5-phase chain.
|
|
43
|
+
harnessed plan-feature --task "<text>" --apply
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Forward-looking note
|
|
47
|
+
|
|
48
|
+
The `trigger_phrases:` frontmatter is active after `harnessed setup` copies this
|
|
49
|
+
SKILL.md to `~/.claude/skills/plan-feature/` — Claude Code then loads the slash
|
|
50
|
+
command `/plan-feature` automatically (Gap B fix — v1.0.2).
|
|
51
|
+
|
|
52
|
+
## References
|
|
53
|
+
|
|
54
|
+
- ADR 0011 — SDK + ralph-loop integration
|
|
55
|
+
- `workflows/plan-feature/workflow.yaml` — 5-phase config
|
|
56
|
+
- `docs/WORKFLOW.md` — 4-stage workflow mermaid + gap analysis
|