harnessed 3.9.16 → 3.9.17
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/dist/cli.mjs +32 -48
- 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/README.md +2 -2
- package/workflows/SCHEMA.md +24 -58
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,QAgGb,CAAA;;;AC7FO,IAAM,UAAU,eAAA,CAAI","file":"index.mjs","sourcesContent":["{\n \"name\": \"harnessed\",\n \"version\": \"3.9.
|
|
1
|
+
{"version":3,"sources":["../package.json","../src/index.ts"],"names":[],"mappings":";AAAA,IAAA,eAAA,GAAA;AAAA,EAEE,OAAA,EAAW,QAgGb,CAAA;;;AC7FO,IAAM,UAAU,eAAA,CAAI","file":"index.mjs","sourcesContent":["{\n \"name\": \"harnessed\",\n \"version\": \"3.9.17\",\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 \"messages\",\n \"workflows\",\n \"routing\",\n \"config-templates\",\n \"schemas\",\n \"README.md\",\n \"LICENSE\",\n \"NOTICE\",\n \"THIRD-PARTY-NOTICES.md\"\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 \"expr-eval\": \"^2.0.2\",\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
package/workflows/README.md
CHANGED
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
## v0.1 MVP Workflows
|
|
6
6
|
|
|
7
7
|
- `research/` — 多源调研路由(Tavily / Exa / ctx7) — v0.1.0
|
|
8
|
-
- `
|
|
9
|
-
- `plan
|
|
8
|
+
- `task/` — 子任务执行(superpowers + karpathy + mattpocock + ralph-loop) — v3.0.0
|
|
9
|
+
- `plan/` — 三层栈编排(gstack + GSD + planning-with-files) — v3.0.0
|
|
10
10
|
|
|
11
11
|
## Phases Schema
|
|
12
12
|
|
package/workflows/SCHEMA.md
CHANGED
|
@@ -69,65 +69,30 @@ phases: # 必填,至少 1 个 phase
|
|
|
69
69
|
|
|
70
70
|
---
|
|
71
71
|
|
|
72
|
-
## 4.
|
|
72
|
+
## 4. Reference implementation
|
|
73
73
|
|
|
74
|
-
|
|
74
|
+
v3 workflow yaml 示例(摘录自 `workflows/verify/paranoid/workflow.yaml`)。所有 v3 sub-workflow 套此范式。
|
|
75
75
|
|
|
76
76
|
```yaml
|
|
77
|
-
# workflows/
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
77
|
+
# workflows/verify/paranoid/workflow.yaml
|
|
78
|
+
schema_version: harnessed.workflow.v3
|
|
79
|
+
workflow: verify-paranoid
|
|
80
|
+
description: |
|
|
81
|
+
Stage ④.c gstack /review Paranoid Staff Engineer
|
|
82
|
+
|
|
83
|
+
disciplines_applied: [karpathy, output-style, language, operational, priority, protocols]
|
|
84
|
+
tools_available: [gstack-review]
|
|
85
|
+
|
|
81
86
|
phases:
|
|
82
|
-
- id: 01-
|
|
83
|
-
|
|
87
|
+
- id: 01-review
|
|
88
|
+
name: gstack-review
|
|
84
89
|
upstream: gstack
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
on_veto: halt_workflow
|
|
90
|
-
|
|
91
|
-
- id: 02-brainstorm
|
|
92
|
-
layer: execution
|
|
93
|
-
upstream: superpowers
|
|
94
|
-
invokes: [brainstorming]
|
|
95
|
-
inputs: [user_request, $01.outputs]
|
|
96
|
-
outputs: .harnessed/checkpoints/02-design-memo.md
|
|
97
|
-
conditional:
|
|
98
|
-
if: ui_task_detected # 来自 routing/ui.md
|
|
99
|
-
then_also_invoke: [ui-ux-pro-max]
|
|
100
|
-
|
|
101
|
-
- id: 03-gsd-discuss
|
|
102
|
-
layer: orchestration
|
|
103
|
-
upstream: GSD
|
|
104
|
-
invokes: [/gsd-discuss-phase]
|
|
105
|
-
inputs: [$01.outputs, $02.outputs]
|
|
106
|
-
outputs: gsd_phase_doc
|
|
107
|
-
|
|
108
|
-
- id: 04-gsd-plan
|
|
109
|
-
layer: orchestration
|
|
110
|
-
upstream: GSD
|
|
111
|
-
invokes: [/gsd-plan-phase]
|
|
112
|
-
inputs: [$03.outputs]
|
|
113
|
-
outputs: [PLAN.md, ROADMAP.md, REQUIREMENTS.md]
|
|
114
|
-
|
|
115
|
-
- id: 05-persist
|
|
116
|
-
layer: execution
|
|
117
|
-
upstream: planning-with-files
|
|
118
|
-
inputs: [$04.outputs]
|
|
119
|
-
outputs: [task_plan.md, progress.md, findings.md]
|
|
120
|
-
pause: human_review
|
|
121
|
-
---
|
|
90
|
+
capability: '{{ capabilities.gstack-review.cmd }}'
|
|
91
|
+
model: opus
|
|
92
|
+
gate: judgments.stage-routing.verify-paranoid-critical.fires
|
|
93
|
+
max_iterations: '{{ defaults.ralph_max_iterations.verify-paranoid.01-review }}'
|
|
122
94
|
```
|
|
123
95
|
|
|
124
|
-
**关键设计点**(决策已敲定,见 WORKFLOWS-MVP § Workflow 3):
|
|
125
|
-
|
|
126
|
-
- gstack 命令前缀通过变量插值 `{{gstack.command_prefix}}/office-hours`,**禁止硬编码** — `harnessed doctor` 探测 plugin 化路径与 git-clone-with-setup 路径,写 `.harnessed/config.json` 供 workflow 引擎读取
|
|
127
|
-
- `01` 阶段 veto → `halt_workflow`,不自动回滚;用户决定是否重新构思
|
|
128
|
-
- `02` 阶段 UI 任务识别完全走 `routing/ui.md` 的 `trigger.keywords` + `file_globs` 规则(B+C 混合)
|
|
129
|
-
- `pause: human_review` 强制 checkpoint compact —— 写 `.harnessed/checkpoints/<id>.md`(≤ 1k token),原文留 `.harnessed/archive/<id>-full.md` 不进后续 context(PROJECT-SPEC § 12)
|
|
130
|
-
|
|
131
96
|
---
|
|
132
97
|
|
|
133
98
|
## 5. 收益(schema-driven 设计动机)
|
|
@@ -137,14 +102,15 @@ schema 校验保证 `upstream` 引用在 manifests/ 真实存在(防"引用一
|
|
|
137
102
|
|
|
138
103
|
---
|
|
139
104
|
|
|
140
|
-
## 6. 当前 status(
|
|
105
|
+
## 6. 当前 status(v3.9.16)
|
|
141
106
|
|
|
142
107
|
- ✅ 字段定义已锁定(本文件 + SPEC § 10)
|
|
143
|
-
-
|
|
144
|
-
-
|
|
145
|
-
-
|
|
108
|
+
- ✅ workflow yaml v3 schema 已实装 (`src/workflow/schema/workflow.ts`)
|
|
109
|
+
- ✅ 24 sub-workflow 已 SHIPPED (discuss/plan/task/verify stages)
|
|
110
|
+
- ✅ workflow validator 已实装 (TypeBox, `src/workflow/schema/`)
|
|
111
|
+
- ❌ JSON Schema artifact `schemas/workflow.v1.schema.json` **未生成** — deferred
|
|
146
112
|
|
|
147
|
-
任何字段语义冲突以本文件 + SPEC § 10 为准;机器层级冲突时(
|
|
113
|
+
任何字段语义冲突以本文件 + SPEC § 10 为准;机器层级冲突时(v3.0+)以 TypeBox schema 为准。
|
|
148
114
|
|
|
149
115
|
---
|
|
150
116
|
|
|
@@ -154,4 +120,4 @@ schema 校验保证 `upstream` 引用在 manifests/ 真实存在(防"引用一
|
|
|
154
120
|
- **三层栈职责**:用户全局 `CLAUDE.md` § "角色与框架定位"
|
|
155
121
|
- **路由 yaml frontmatter SSOT**:`routing/SCHEMA.md`(B+C 共享同一 frontmatter 块)
|
|
156
122
|
- **manifest 上游引用目标**:`manifests/SCHEMA.md`
|
|
157
|
-
- **ROADMAP 落地节奏**:v0.1 = `research`
|
|
123
|
+
- **ROADMAP 落地节奏**:v0.1 = `research` / v0.2 = `task` / v0.3 = `plan` / v3.0 = full stage-based workflow system
|