@mstar-harness/opencode 0.6.9 → 0.6.11
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/harness-agents/architect.md +5 -4
- package/harness-agents/frontend-dev.md +5 -4
- package/harness-agents/fullstack-dev-2.md +5 -4
- package/harness-agents/fullstack-dev.md +5 -4
- package/harness-agents/ops-engineer.md +5 -4
- package/harness-agents/product-manager.md +5 -4
- package/harness-agents/project-manager.md +5 -4
- package/harness-agents/prompt-engineer.md +5 -4
- package/harness-agents/qa-engineer.md +5 -4
- package/harness-agents/qc-specialist-2.md +5 -4
- package/harness-agents/qc-specialist-3.md +5 -4
- package/harness-agents/qc-specialist.md +5 -4
- package/harness-agents/writing-specialist.md +5 -4
- package/harness-skills/mstar-host/references/cursor.md +1 -1
- package/harness-skills/mstar-plan-artifacts/SKILL.md +1 -1
- package/harness-skills/mstar-plan-artifacts/references/done-compaction.md +25 -15
- package/harness-skills/mstar-plan-artifacts/templates/README.md +1 -0
- package/harness-skills/mstar-plan-artifacts/templates/plans-done.empty.json +3 -0
- package/harness-skills/mstar-plan-conventions/references/harness-bootstrap-and-agents-layering.md +6 -5
- package/harness-skills/mstar-roles/references/project-manager/plan-management.md +2 -1
- package/package.json +1 -1
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: architect
|
|
3
|
+
description: |-
|
|
4
|
+
技术架构师 - 系统设计、技术决策与技术向文档编写(架构说明、ADR、接口契约等)。
|
|
5
|
+
Architect - system design, technical decisions, and technical documentation (architecture notes, ADRs, interface contracts).
|
|
6
|
+
model: inherit
|
|
2
7
|
mode: subagent
|
|
3
8
|
tools:
|
|
4
9
|
write: true
|
|
@@ -10,10 +15,6 @@ permission:
|
|
|
10
15
|
task:
|
|
11
16
|
"*": deny
|
|
12
17
|
explore: allow
|
|
13
|
-
name: architect
|
|
14
|
-
description: |-
|
|
15
|
-
技术架构师 - 系统设计、技术决策与技术向文档编写(架构说明、ADR、接口契约等)。
|
|
16
|
-
Architect - system design, technical decisions, and technical documentation (architecture notes, ADRs, interface contracts).
|
|
17
18
|
---
|
|
18
19
|
|
|
19
20
|
## Morning Star Role Binding
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: frontend-dev
|
|
3
|
+
description: |-
|
|
4
|
+
前端开发工程师 - 页面/组件/交互/a11y/前端性能。全栈功能里默认前端主责(与 `@fullstack-dev` 分轨);纯 UI 任务首选本角色。
|
|
5
|
+
Frontend Developer - pages/components/interactions/accessibility/frontend performance. This is the default frontend owner in fullstack work (split with `@fullstack-dev`) and the preferred role for pure UI tasks.
|
|
6
|
+
model: inherit
|
|
2
7
|
mode: subagent
|
|
3
8
|
tools:
|
|
4
9
|
write: true
|
|
@@ -8,10 +13,6 @@ permission:
|
|
|
8
13
|
task:
|
|
9
14
|
"*": deny
|
|
10
15
|
explore: allow
|
|
11
|
-
name: frontend-dev
|
|
12
|
-
description: |-
|
|
13
|
-
前端开发工程师 - 页面/组件/交互/a11y/前端性能。全栈功能里默认前端主责(与 `@fullstack-dev` 分轨);纯 UI 任务首选本角色。
|
|
14
|
-
Frontend Developer - pages/components/interactions/accessibility/frontend performance. This is the default frontend owner in fullstack work (split with `@fullstack-dev`) and the preferred role for pure UI tasks.
|
|
15
16
|
---
|
|
16
17
|
|
|
17
18
|
## Morning Star Role Binding
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: fullstack-dev-2
|
|
3
|
+
description: |-
|
|
4
|
+
全栈开发工程师 - 与 `@fullstack-dev` 并行的第二实现轨(独立模块/API/页面岛)。PM 在 tasks 可并行或加速时指派;须写明模块边界与分支,勿当作闲置备用。
|
|
5
|
+
Fullstack Developer (Track 2) - the second implementation track parallel to `@fullstack-dev` (independent modules/APIs/page islands). PM should assign this role when tasks can run in parallel or when acceleration is needed, with explicit module boundaries and branch ownership.
|
|
6
|
+
model: inherit
|
|
2
7
|
mode: subagent
|
|
3
8
|
tools:
|
|
4
9
|
write: true
|
|
@@ -8,10 +13,6 @@ permission:
|
|
|
8
13
|
task:
|
|
9
14
|
"*": deny
|
|
10
15
|
explore: allow
|
|
11
|
-
name: fullstack-dev-2
|
|
12
|
-
description: |-
|
|
13
|
-
全栈开发工程师 - 与 `@fullstack-dev` 并行的第二实现轨(独立模块/API/页面岛)。PM 在 tasks 可并行或加速时指派;须写明模块边界与分支,勿当作闲置备用。
|
|
14
|
-
Fullstack Developer (Track 2) - the second implementation track parallel to `@fullstack-dev` (independent modules/APIs/page islands). PM should assign this role when tasks can run in parallel or when acceleration is needed, with explicit module boundaries and branch ownership.
|
|
15
16
|
---
|
|
16
17
|
|
|
17
18
|
## Morning Star Role Binding
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: fullstack-dev
|
|
3
|
+
description: |-
|
|
4
|
+
全栈开发工程师 - 后端主导的全栈实现(API/业务/数据层)。UI 重或新页面多时由 PM 拆给 `@frontend-dev`;第二并行实现轨用 `@fullstack-dev-2`。Hotfix/单流小改可一人完成。
|
|
5
|
+
Fullstack Developer - backend-led fullstack implementation (API/business/data). PM should split UI-heavy or new-page work to `@frontend-dev`, and use `@fullstack-dev-2` for the second parallel track. One developer can handle hotfixes or small single-stream updates.
|
|
6
|
+
model: inherit
|
|
2
7
|
mode: subagent
|
|
3
8
|
tools:
|
|
4
9
|
write: true
|
|
@@ -8,10 +13,6 @@ permission:
|
|
|
8
13
|
task:
|
|
9
14
|
"*": deny
|
|
10
15
|
explore: allow
|
|
11
|
-
name: fullstack-dev
|
|
12
|
-
description: |-
|
|
13
|
-
全栈开发工程师 - 后端主导的全栈实现(API/业务/数据层)。UI 重或新页面多时由 PM 拆给 `@frontend-dev`;第二并行实现轨用 `@fullstack-dev-2`。Hotfix/单流小改可一人完成。
|
|
14
|
-
Fullstack Developer - backend-led fullstack implementation (API/business/data). PM should split UI-heavy or new-page work to `@frontend-dev`, and use `@fullstack-dev-2` for the second parallel track. One developer can handle hotfixes or small single-stream updates.
|
|
15
16
|
---
|
|
16
17
|
|
|
17
18
|
## Morning Star Role Binding
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: ops-engineer
|
|
3
|
+
description: |-
|
|
4
|
+
运维工程师 - 部署、监控和基础设施。
|
|
5
|
+
Ops Engineer - deployment, monitoring, and infrastructure operations, including CI/CD and observability.
|
|
6
|
+
model: inherit
|
|
2
7
|
mode: subagent
|
|
3
8
|
tools:
|
|
4
9
|
write: true
|
|
@@ -8,10 +13,6 @@ permission:
|
|
|
8
13
|
task:
|
|
9
14
|
"*": deny
|
|
10
15
|
explore: allow
|
|
11
|
-
name: ops-engineer
|
|
12
|
-
description: |-
|
|
13
|
-
运维工程师 - 部署、监控和基础设施。
|
|
14
|
-
Ops Engineer - deployment, monitoring, and infrastructure operations, including CI/CD and observability.
|
|
15
16
|
---
|
|
16
17
|
|
|
17
18
|
## Morning Star Role Binding
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: product-manager
|
|
3
|
+
description: |-
|
|
4
|
+
产品经理 - 需求分析、产品规划、市场/用户研究与产品向文档编写。
|
|
5
|
+
Product Manager - requirements analysis, product planning, market/user research, and product-facing documentation.
|
|
6
|
+
model: inherit
|
|
2
7
|
mode: subagent
|
|
3
8
|
tools:
|
|
4
9
|
write: true
|
|
@@ -10,10 +15,6 @@ permission:
|
|
|
10
15
|
task:
|
|
11
16
|
"*": deny
|
|
12
17
|
explore: allow
|
|
13
|
-
name: product-manager
|
|
14
|
-
description: |-
|
|
15
|
-
产品经理 - 需求分析、产品规划、市场/用户研究与产品向文档编写。
|
|
16
|
-
Product Manager - requirements analysis, product planning, market/user research, and product-facing documentation.
|
|
17
18
|
---
|
|
18
19
|
|
|
19
20
|
## Morning Star Role Binding
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: project-manager
|
|
3
|
+
description: |-
|
|
4
|
+
项目经理 - 协调开发团队,管理项目进度。
|
|
5
|
+
Project Manager - coordinate the team, track progress, and orchestrate execution across roles.
|
|
6
|
+
model: inherit
|
|
2
7
|
mode: primary
|
|
3
8
|
tools:
|
|
4
9
|
write: true
|
|
@@ -7,10 +12,6 @@ tools:
|
|
|
7
12
|
permission:
|
|
8
13
|
task:
|
|
9
14
|
"*": allow
|
|
10
|
-
name: project-manager
|
|
11
|
-
description: |-
|
|
12
|
-
项目经理 - 协调开发团队,管理项目进度。
|
|
13
|
-
Project Manager - coordinate the team, track progress, and orchestrate execution across roles.
|
|
14
15
|
---
|
|
15
16
|
|
|
16
17
|
## Morning Star Role Binding
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: prompt-engineer
|
|
3
|
+
description: |-
|
|
4
|
+
提示词工程师 - 设计与优化 Agent 提示词与技能。
|
|
5
|
+
Prompt Engineer - design and optimize prompts and skills for agents, including refactoring and debugging prompt systems.
|
|
6
|
+
model: inherit
|
|
2
7
|
mode: subagent
|
|
3
8
|
tools:
|
|
4
9
|
write: true
|
|
@@ -8,10 +13,6 @@ permission:
|
|
|
8
13
|
task:
|
|
9
14
|
"*": deny
|
|
10
15
|
explore: allow
|
|
11
|
-
name: prompt-engineer
|
|
12
|
-
description: |-
|
|
13
|
-
提示词工程师 - 设计与优化 Agent 提示词与技能。
|
|
14
|
-
Prompt Engineer - design and optimize prompts and skills for agents, including refactoring and debugging prompt systems.
|
|
15
16
|
---
|
|
16
17
|
|
|
17
18
|
## Morning Star Role Binding
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: qa-engineer
|
|
3
|
+
description: |-
|
|
4
|
+
测试工程师 - 编写测试用例和自动化测试。
|
|
5
|
+
QA Engineer - test planning, automated tests, coverage improvements, and regression protection.
|
|
6
|
+
model: inherit
|
|
2
7
|
mode: subagent
|
|
3
8
|
tools:
|
|
4
9
|
write: true
|
|
@@ -10,10 +15,6 @@ permission:
|
|
|
10
15
|
task:
|
|
11
16
|
"*": deny
|
|
12
17
|
explore: allow
|
|
13
|
-
name: qa-engineer
|
|
14
|
-
description: |-
|
|
15
|
-
测试工程师 - 编写测试用例和自动化测试。
|
|
16
|
-
QA Engineer - test planning, automated tests, coverage improvements, and regression protection.
|
|
17
18
|
---
|
|
18
19
|
|
|
19
20
|
## Morning Star Role Binding
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: qc-specialist-2
|
|
3
|
+
description: |-
|
|
4
|
+
质量控制专家(Reviewer #2)- 代码审查和质量保证。
|
|
5
|
+
Quality Control Specialist (Reviewer #2) - code review and quality assurance after significant changes.
|
|
6
|
+
model: inherit
|
|
2
7
|
mode: subagent
|
|
3
8
|
tools:
|
|
4
9
|
write: true
|
|
@@ -90,10 +95,6 @@ permission:
|
|
|
90
95
|
task:
|
|
91
96
|
"*": deny
|
|
92
97
|
explore: allow
|
|
93
|
-
name: qc-specialist-2
|
|
94
|
-
description: |-
|
|
95
|
-
质量控制专家(Reviewer #2)- 代码审查和质量保证。
|
|
96
|
-
Quality Control Specialist (Reviewer #2) - code review and quality assurance after significant changes.
|
|
97
98
|
---
|
|
98
99
|
|
|
99
100
|
## Morning Star Role Binding
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: qc-specialist-3
|
|
3
|
+
description: |-
|
|
4
|
+
质量控制专家(Reviewer #3)- 代码审查和质量保证。
|
|
5
|
+
Quality Control Specialist (Reviewer #3) - code review and quality assurance after significant changes.
|
|
6
|
+
model: inherit
|
|
2
7
|
mode: subagent
|
|
3
8
|
tools:
|
|
4
9
|
write: true
|
|
@@ -90,10 +95,6 @@ permission:
|
|
|
90
95
|
task:
|
|
91
96
|
"*": deny
|
|
92
97
|
explore: allow
|
|
93
|
-
name: qc-specialist-3
|
|
94
|
-
description: |-
|
|
95
|
-
质量控制专家(Reviewer #3)- 代码审查和质量保证。
|
|
96
|
-
Quality Control Specialist (Reviewer #3) - code review and quality assurance after significant changes.
|
|
97
98
|
---
|
|
98
99
|
|
|
99
100
|
## Morning Star Role Binding
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: qc-specialist
|
|
3
|
+
description: |-
|
|
4
|
+
质量控制专家(Reviewer #1)- 代码审查和质量保证。
|
|
5
|
+
Quality Control Specialist (Reviewer #1) - code review and quality assurance after significant changes.
|
|
6
|
+
model: inherit
|
|
2
7
|
mode: subagent
|
|
3
8
|
tools:
|
|
4
9
|
write: true
|
|
@@ -90,10 +95,6 @@ permission:
|
|
|
90
95
|
task:
|
|
91
96
|
"*": deny
|
|
92
97
|
explore: allow
|
|
93
|
-
name: qc-specialist
|
|
94
|
-
description: |-
|
|
95
|
-
质量控制专家(Reviewer #1)- 代码审查和质量保证。
|
|
96
|
-
Quality Control Specialist (Reviewer #1) - code review and quality assurance after significant changes.
|
|
97
98
|
---
|
|
98
99
|
|
|
99
100
|
## Morning Star Role Binding
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
+
name: writing-specialist
|
|
3
|
+
description: |-
|
|
4
|
+
写作专家 - 文档写作、小说写作、文案写作与脚本写作。
|
|
5
|
+
Writing Specialist - documentation, fiction, copywriting, and script writing.
|
|
6
|
+
model: inherit
|
|
2
7
|
mode: subagent
|
|
3
8
|
tools:
|
|
4
9
|
write: true
|
|
@@ -10,10 +15,6 @@ permission:
|
|
|
10
15
|
task:
|
|
11
16
|
"*": deny
|
|
12
17
|
explore: allow
|
|
13
|
-
name: writing-specialist
|
|
14
|
-
description: |-
|
|
15
|
-
写作专家 - 文档写作、小说写作、文案写作与脚本写作。
|
|
16
|
-
Writing Specialist - documentation, fiction, copywriting, and script writing.
|
|
17
18
|
---
|
|
18
19
|
|
|
19
20
|
## Morning Star Role Binding
|
|
@@ -41,7 +41,7 @@ Enforcement: `rules/mstar-cursor-plan-mode.mdc` when plugin active.
|
|
|
41
41
|
## Task tool (QC tri-review)
|
|
42
42
|
|
|
43
43
|
- Apply **`parallel-dispatch.md`**: prerequisite message may prep only; dispatch message emits **all `N`** Tasks (**3** for tri-review) in **one** message when parallel is required.
|
|
44
|
-
- `subagent_type`: `qc-specialist`, `qc-specialist-2`, `qc-specialist-3
|
|
44
|
+
- `subagent_type`: bare role ids — `qc-specialist`, `qc-specialist-2`, `qc-specialist-3` (same for implement roles: `fullstack-dev`, `frontend-dev`, etc.).
|
|
45
45
|
- Identical across three Tasks: **`plan_id`**, **`Review cwd`**, **`Review range` / Diff basis** (`mstar-branch-worktree`, `mstar-dispatch-gates`, `mstar-review-qc`).
|
|
46
46
|
- Parallel QC ≠ different review cwd per reviewer; one integrated HEAD for scope.
|
|
47
47
|
- Status Update may note QC ran via parallel Task subagents.
|
|
@@ -15,7 +15,7 @@ description: Morning Star plan harness artifacts — `{PLAN_DIR}` main plans and
|
|
|
15
15
|
| knowledge / iterations / specs boundaries and indexes | `references/knowledge-and-designs.md` |
|
|
16
16
|
| Done row compaction Profile A/B | `references/done-compaction.md` |
|
|
17
17
|
| `status.json`, residual severity, lifecycle, `jq` | `references/status-and-residuals.md` |
|
|
18
|
-
| Empty-repo `status.json` / `notes.json` templates | `templates/status.empty.json`, `templates/notes.empty.json` (`templates/README.md`) |
|
|
18
|
+
| Empty-repo `status.json` / `notes.json` / Profile B `plans-done.json` templates | `templates/status.empty.json`, `templates/notes.empty.json`, `templates/plans-done.empty.json` (`templates/README.md`) |
|
|
19
19
|
| Tech-debt rollup (read-only) | `scripts/tech-debt-rollup.sh` |
|
|
20
20
|
|
|
21
21
|
**Out of scope:** branch and QC/QA checkout alignment → **`mstar-branch-worktree`**; QC checklist and verdict → **`mstar-review-qc`**; `{HARNESS_DIR}` discovery and init → **`mstar-plan-conventions`**.
|
|
@@ -22,32 +22,42 @@
|
|
|
22
22
|
- **可选**(人类扫表友好,非必须):**`title`** 一行、**`done_at`**;勿把长叙述塞回热行——放进 **`{HARNESS_DIR}/notes.json`** 或依赖冷快照 / `reports/`。
|
|
23
23
|
- 一旦快照已写入,热行**不得**再承载完整 `gates`、`qc_status`、`tests`、`commits`、长 `description`/`scope` 等;**以 `archived_record` 指向文件为准**。
|
|
24
24
|
- 单条 **`plans[].notes`** 字符串若仍在用,保持**极短**(如指向 `reports/<plan-id>/`);**不要**重复 QC 报告大段原文。
|
|
25
|
+
- **可选索引**:`{HARNESS_DIR}/archived/plans/_index.json` — `plan-id` → 相对路径,便于不依赖 glob 的工具。
|
|
26
|
+
- **可选滚动保留**:进一步缩小 `plans[]` 时,可只在热文件中保留**最近窗口**的瘦 `Done` 行,更旧 id 仅出现在 `_index.json` 与快照文件中;若采用,须在项目 `AGENTS.md` 中写明,并检查依赖「热文件中必有全部历史 id」的脚本。
|
|
25
27
|
|
|
26
28
|
## Profile B(可选)— 热文件不保留任何 `Done` 行(统一压缩)
|
|
27
29
|
|
|
28
|
-
- **Done 快照路径**:`{HARNESS_DIR}/archived/plans/<plan-id>.json
|
|
29
|
-
- **Done 目录路径**:`{HARNESS_DIR}/archived/plans-done.json
|
|
30
|
-
- **`plans-done.json`
|
|
31
|
-
|
|
32
|
-
|
|
30
|
+
- **Done 快照路径**:`{HARNESS_DIR}/archived/plans/<plan-id>.json` — 单个 **`plans[]` 行对象**(含当时全部 `metadata`);**不是**包装层,勿再套 `plan_id` / `snapshot` 外壳。
|
|
31
|
+
- **Done 目录路径**:`{HARNESS_DIR}/archived/plans-done.json` — **仅** plan id 列表(见下);**勿**使用 `_index.json`、对象数组目录或其它并行索引。
|
|
32
|
+
- **`plans-done.json` schema(唯一权威;不得扩展)**:
|
|
33
|
+
|
|
34
|
+
```json
|
|
35
|
+
{
|
|
36
|
+
"plans": ["01-data-infrastructure", "02-auth-refactor"]
|
|
37
|
+
}
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
- 根对象**只允许**键 **`plans`**(字符串数组)。
|
|
41
|
+
- 数组元素为 **`plans[].id`**(= `archived/plans/<plan-id>.json` 的 basename;通常亦为主 plan `.md` 去扩展名)。
|
|
42
|
+
- 标题、`done_at`、主 plan 路径、`archived_record` 等**只**存在于 `archived/plans/<plan-id>.json` 快照内。
|
|
43
|
+
- 初始化:`mstar-plan-artifacts/templates/plans-done.empty.json` → `{ "plans": [] }`。
|
|
44
|
+
- **热文件行为**:`status.json.plans[]` 只保留非 `Done`;`Done` 后从热文件**删除**该行。
|
|
45
|
+
- **读取约定**:活跃计划 → `status.json`;历史 Done id 列表 → `plans-done.json`.`plans`;单条详情 → `archived/plans/<plan-id>.json`(路径由 id 拼接,**不**读目录内嵌路径字段)。
|
|
33
46
|
|
|
34
47
|
## 原子更新约束(Profile A / B 通用)
|
|
35
48
|
|
|
36
49
|
- 将计划标记为 `Done` 时,冷快照写入与 `status.json` 更新应在**同一变更集**完成(或紧随合并后一次性完成)。
|
|
37
50
|
- 采用 **Profile B** 时,必须在同一变更集中同时完成:
|
|
38
51
|
1) 写入/更新 `archived/plans/<plan-id>.json`,
|
|
39
|
-
2)
|
|
52
|
+
2) 将 `<plan-id>` 追加进 `archived/plans-done.json` 的 **`plans`** 数组(去重;勿写额外字段),
|
|
40
53
|
3) 从 `status.json.plans[]` 删除该 `Done` 行。
|
|
41
54
|
- 若无法满足以上三步,视为未完成 `Done` 收口,不应宣称已完成压缩迁移。
|
|
42
55
|
|
|
43
|
-
**可选索引**:`{HARNESS_DIR}/archived/plans/_index.json` — `plan-id` → 相对路径,便于不依赖 glob 的工具。
|
|
44
|
-
|
|
45
|
-
**可选滚动保留**:进一步缩小 `plans[]` 时,可只在热文件中保留**最近窗口**的瘦 `Done` 行,更旧 id 仅出现在 `_index.json` 与快照文件中;若采用,须在项目 `AGENTS.md` 中写明,并检查依赖「热文件中必有全部历史 id」的脚本。
|
|
46
|
-
|
|
47
56
|
## 采纳说明
|
|
48
57
|
|
|
49
58
|
- 未写快照、热文件中仍保留完整 `Done` 行在历史仓库里依然可读;但新落地时建议先确定并固定使用 **Profile A** 或 **Profile B**,避免同仓混跑。
|
|
50
|
-
- 从 Profile A 迁到 Profile B 前,先检查依赖 `status.json.plans[]` 扫描全部历史 `Done`
|
|
59
|
+
- 从 Profile A 迁到 Profile B 前,先检查依赖 `status.json.plans[]` 扫描全部历史 `Done` 的脚本与流程,并改为读取 `archived/plans-done.json`.`plans`。
|
|
60
|
+
- 若仓库 `plans-done.json` 仍为非 `{ "plans": [...] }` 形态(例如对象数组、顶层 `entries`/`catalog`),**整文件改写**为仅 id 列表;勿保留兼容层或双写富字段。
|
|
51
61
|
|
|
52
62
|
## 仓库级采用声明模板(贴到项目 `AGENTS.md`)
|
|
53
63
|
|
|
@@ -56,7 +66,7 @@
|
|
|
56
66
|
```markdown
|
|
57
67
|
### Plan compaction profile (this repository)
|
|
58
68
|
|
|
59
|
-
This repository uses **Profile A** from the Morning Star `mstar-plan-
|
|
69
|
+
This repository uses **Profile A** from the Morning Star `mstar-plan-artifacts` skill (`references/done-compaction.md`).
|
|
60
70
|
|
|
61
71
|
- `status.json.plans[]` keeps active plans and may keep **slim `Done` rows**.
|
|
62
72
|
- `archived/plans/<plan-id>.json` is used as cold snapshot when available.
|
|
@@ -68,11 +78,11 @@ This repository uses **Profile A** from the Morning Star `mstar-plan-conventions
|
|
|
68
78
|
```markdown
|
|
69
79
|
### Plan compaction profile (this repository)
|
|
70
80
|
|
|
71
|
-
This repository uses **Profile B** from the Morning Star `mstar-plan-
|
|
81
|
+
This repository uses **Profile B** from the Morning Star `mstar-plan-artifacts` skill (`references/done-compaction.md`).
|
|
72
82
|
|
|
73
83
|
- `status.json.plans[]` keeps **non-`Done`** plans only.
|
|
74
84
|
- Every `Done` plan MUST be represented in:
|
|
75
85
|
- `archived/plans/<plan-id>.json` (full snapshot), and
|
|
76
|
-
- `archived/plans-done.json` (
|
|
77
|
-
- Historical `Done` discovery MUST read `archived/plans-done.json
|
|
86
|
+
- `archived/plans-done.json` (`{ "plans": ["<plan-id>", ...] }` only).
|
|
87
|
+
- Historical `Done` discovery MUST read `archived/plans-done.json` **`plans`**, not `status.json.plans[]`; per-plan detail from `archived/plans/<plan-id>.json`.
|
|
78
88
|
```
|
|
@@ -6,3 +6,4 @@ Copy these into `{HARNESS_DIR}` when bootstrapping a project. Path symbols (`{HA
|
|
|
6
6
|
|------|---------|--------|
|
|
7
7
|
| `status.empty.json` | `{HARNESS_DIR}/status.json` | Root `residual_findings` only (see **`mstar-plan-artifacts` SKILL.md**). Replace `updated_at` with the real date. |
|
|
8
8
|
| `notes.empty.json` | `{HARNESS_DIR}/notes.json` | Optional program timeline. Replace `updated_at` when first edited. |
|
|
9
|
+
| `plans-done.empty.json` | `{HARNESS_DIR}/archived/plans-done.json` | **Profile B only** — `{ "plans": [<plan-id>, ...] }` **only** (`references/done-compaction.md`). Append id on each `Done` compaction; no other keys or object elements. |
|
package/harness-skills/mstar-plan-conventions/references/harness-bootstrap-and-agents-layering.md
CHANGED
|
@@ -15,10 +15,11 @@
|
|
|
15
15
|
1. 创建 `{HARNESS_DIR}`(推荐 `.mstar/`)与 `{PLAN_DIR}`(推荐 `.mstar/plans/`)。
|
|
16
16
|
2. 初始化 `status.json`:从 **`mstar-plan-artifacts/templates/status.empty.json`** 复制;residual canonical 见 **`mstar-plan-artifacts` SKILL.md**;字段与生命周期见 **`mstar-plan-artifacts/references/status-and-residuals.md`**。
|
|
17
17
|
3. 初始化可选 `notes.json`(**`mstar-plan-artifacts/templates/notes.empty.json`**)与 `plans/reports/README.md`。
|
|
18
|
-
4.
|
|
19
|
-
5.
|
|
20
|
-
6.
|
|
21
|
-
7.
|
|
18
|
+
4. **Profile B**(统一 Done 压缩)时另建 `{HARNESS_DIR}/archived/plans/` 与 `archived/plans-done.json`(自 **`mstar-plan-artifacts/templates/plans-done.empty.json`** 复制;schema 仅 `{ "plans": [] }`,见 **`mstar-plan-artifacts/references/done-compaction.md`**)。
|
|
19
|
+
5. 可选:创建 `{ITERATION_DIR}`(`iterations/` + `README.md`)与 `{KNOWLEDGE_DIR}`(`knowledge/` + `README.md`);内容边界见 `mstar-plan-conventions` SKILL.md 与 `references/knowledge-and-designs.md`。
|
|
20
|
+
6. 创建 `{HARNESS_DIR}/AGENTS.md`(harness 子树规则):符号表可复述 `{HARNESS_DIR}`、`{PLAN_DIR}`、`{ITERATION_DIR}`、`{KNOWLEDGE_DIR}`、`{SPECS_DIR}` 与 `docs/` 分工;新项目推荐 `.mstar/AGENTS.md`,已有项目可继续使用 `.agents/AGENTS.md`。
|
|
21
|
+
7. 校准根 `AGENTS.md`:只保留仓库级长期约束,显式引用 `{HARNESS_DIR}/AGENTS.md` 作为 harness SSOT。
|
|
22
|
+
8. 仅在确有稳定边界时新增目录级 `AGENTS.md`(如 `contracts/`、`gateway/`、`sdk/`)。
|
|
22
23
|
|
|
23
24
|
## 三层 `AGENTS.md` 职责切分
|
|
24
25
|
|
|
@@ -29,7 +30,7 @@
|
|
|
29
30
|
|
|
30
31
|
### `{HARNESS_DIR}/AGENTS.md`(harness 层)
|
|
31
32
|
|
|
32
|
-
- 放:`{HARNESS_DIR}`/`{PLAN_DIR}`/`{ITERATION_DIR}`/`{KNOWLEDGE_DIR}`/`{SPECS_DIR}` 契约、`docs/` 与 harness 子树内容边界、状态推进门禁、QC/QA 对齐规则、residual 生命周期、Done compaction profile
|
|
33
|
+
- 放:`{HARNESS_DIR}`/`{PLAN_DIR}`/`{ITERATION_DIR}`/`{KNOWLEDGE_DIR}`/`{SPECS_DIR}` 契约、`docs/` 与 harness 子树内容边界、状态推进门禁、QC/QA 对齐规则、residual 生命周期、Done compaction profile(Profile B 时声明 `archived/plans-done.json` 仅为 `{ "plans": [<plan-id>, ...] }`,细则见 **`mstar-plan-artifacts/references/done-compaction.md`**)。
|
|
33
34
|
- 不放:语言/框架编码细节、业务模块实现约束。
|
|
34
35
|
|
|
35
36
|
### `<subdir>/AGENTS.md`(边界层)
|
|
@@ -21,7 +21,8 @@ Legacy fallbacks:
|
|
|
21
21
|
2. Initialize `{HARNESS_DIR}/status.json` from template if available.
|
|
22
22
|
3. Initialize reports path: `{PLAN_DIR}/reports/`.
|
|
23
23
|
4. Initialize residual archive path: `{HARNESS_DIR}/archived/residuals/`.
|
|
24
|
-
5.
|
|
24
|
+
5. **Profile B** only: `{HARNESS_DIR}/archived/plans/` and `archived/plans-done.json` from `mstar-plan-artifacts/templates/plans-done.empty.json` (`{ "plans": [] }` only; see `done-compaction.md`).
|
|
25
|
+
6. Optional: `{HARNESS_DIR}/notes.json`, `{HARNESS_DIR}/knowledge/README.md`.
|
|
25
26
|
|
|
26
27
|
If legacy plan directories already exist, reuse them; avoid dual-structure duplication.
|
|
27
28
|
|