jsharness 1.8.2 → 1.8.3
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/README.md +123 -57
- package/.harness/agents/{prompt-templates.md → agent-dispatcher.md} +304 -21
- package/.harness/agents/code-reviewer/contract.yaml +1 -1
- package/.harness/agents/code-reviewer/prompt.md +1 -1
- package/.harness/agents/code-reviewer.md +1 -1
- package/.harness/agents/developer/contract.yaml +0 -1
- package/.harness/agents/developer/prompt.md +0 -1
- package/.harness/agents/developer.md +0 -1
- package/.harness/agents/gate-controller/contract.yaml +1 -1
- package/.harness/agents/gate-controller/prompt.md +1 -1
- package/.harness/agents/gate-controller.md +1 -1
- package/.harness/agents/project-manager/contract.yaml +1 -1
- package/.harness/agents/project-manager/prompt.md +1 -1
- package/.harness/agents/project-manager.md +1 -1
- package/.harness/agents/requirements-analyst/contract.yaml +2 -2
- package/.harness/agents/requirements-analyst/prompt.md +5 -26
- package/.harness/agents/requirements-analyst.md +5 -26
- package/.harness/agents/solution-designer/contract.yaml +1 -1
- package/.harness/agents/solution-designer/prompt.md +1 -1
- package/.harness/agents/solution-designer.md +1 -1
- package/.harness/agents/tester/contract.yaml +1 -1
- package/.harness/agents/tester/prompt.md +1 -1
- package/.harness/agents/tester.md +1 -1
- package/.harness/dev-map/overview.md +5 -4
- package/.harness/skills/architecture-designer/SKILL.md +2 -0
- package/.harness/skills/docs-update/SKILL.md +2 -0
- package/.harness/skills/prd-generator/SKILL.md +584 -0
- package/files/analyze-requirements.md +197 -0
- package/lib/index.mjs +1 -31
- package/package.json +1 -1
- package/.harness/skills/build/SKILL.md +0 -199
- /package/.harness/{docs → doc}/integration-test-plan.md +0 -0
- /package/.harness/{docs → doc}/team-guidelines/README.md +0 -0
- /package/.harness/{docs → doc}/team-guidelines/arch-team.md +0 -0
- /package/.harness/{docs → doc}/team-guidelines/collaboration.md +0 -0
- /package/.harness/{docs → doc}/team-guidelines/pm-team.md +0 -0
- /package/.harness/{docs → doc}/team-guidelines/qa-team.md +0 -0
- /package/.harness/{docs → doc}/team-guidelines/rd-team.md +0 -0
- /package/.harness/{docs → doc}/training-materials.md +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
name: requirements-analyst
|
|
2
|
-
description: 需求分析Agent
|
|
2
|
+
description: 需求分析Agent,将原始需求转化为结构化需求文档、验收标准和用户故事,使用 prd-generator 技能生成标准化 PRD
|
|
3
3
|
version: "1.0.0"
|
|
4
4
|
|
|
5
5
|
tools:
|
|
@@ -30,7 +30,7 @@ permissions:
|
|
|
30
30
|
safetyLevel: low
|
|
31
31
|
dependencies:
|
|
32
32
|
- project-manager
|
|
33
|
-
outputFormat: requirements-{task-id}.md
|
|
33
|
+
outputFormat: .harness/doc/prd/requirements-{task-id}.md
|
|
34
34
|
|
|
35
35
|
responsibilities:
|
|
36
36
|
- 将模糊的原始需求转化为结构化规格说明
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: requirements-analyst
|
|
3
|
-
description: 需求分析Agent
|
|
3
|
+
description: 需求分析Agent,将原始需求转化为结构化需求文档、验收标准和用户故事,使用 prd-generator 技能生成标准化 PRD
|
|
4
4
|
tools:
|
|
5
5
|
- search_content
|
|
6
6
|
- read_file
|
|
@@ -24,7 +24,7 @@ permissions:
|
|
|
24
24
|
safetyLevel: low
|
|
25
25
|
dependencies:
|
|
26
26
|
- project-manager
|
|
27
|
-
outputFormat: requirements-{task-id}.md
|
|
27
|
+
outputFormat: .harness/doc/prd/requirements-{task-id}.md
|
|
28
28
|
---
|
|
29
29
|
|
|
30
30
|
# 需求分析 Agent
|
|
@@ -63,28 +63,7 @@ outputFormat: requirements-{task-id}.md
|
|
|
63
63
|
- 用户故事遵循"作为...我想要...以便于..."格式
|
|
64
64
|
|
|
65
65
|
## 需求文档模板
|
|
66
|
-
```markdown
|
|
67
|
-
# 需求文档:{标题}
|
|
68
66
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
- 期望达到的效果
|
|
73
|
-
|
|
74
|
-
## 目标(What)
|
|
75
|
-
- 功能性需求(FR-001 ~ FR-n)
|
|
76
|
-
- 非功能性需求(NFR-001 ~ NFR-n)
|
|
77
|
-
|
|
78
|
-
## 范围边界
|
|
79
|
-
- **包含**: 本次要做的事
|
|
80
|
-
- **不包含**: 明确排除的范围(防止范围蔓延)
|
|
81
|
-
- **依赖**: 外部依赖和前置条件
|
|
82
|
-
|
|
83
|
-
## 用户故事
|
|
84
|
-
作为 {角色},我想要 {功能},以便于 {价值}
|
|
85
|
-
|
|
86
|
-
## 验收标准(AC)
|
|
87
|
-
- AC-1: [Given/When/Then 格式的可测试条件]
|
|
88
|
-
- AC-2: [...]
|
|
89
|
-
- AC-n: [...]
|
|
90
|
-
```
|
|
67
|
+
> **强制**:所有需求文档必须使用 `prd-generator` 技能生成标准化 PRD,该技能提供了十大章节的完整模板(背景、用户角色、业务主流程、用户故事、系统用户与功能结构、功能清单、功能详细描述、产品运行分析、非功能性需求、附录),确保需求分析的完整性和可追溯性。
|
|
68
|
+
>
|
|
69
|
+
> 不得使用简化版模板或自定义格式,所有需求必须按照 PRD 标准版输出。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: requirements-analyst
|
|
3
|
-
description: 需求分析Agent
|
|
3
|
+
description: 需求分析Agent,将原始需求转化为结构化需求文档、验收标准和用户故事,使用 prd-generator 技能生成标准化 PRD
|
|
4
4
|
tools:
|
|
5
5
|
- search_content
|
|
6
6
|
- read_file
|
|
@@ -24,7 +24,7 @@ permissions:
|
|
|
24
24
|
safetyLevel: low
|
|
25
25
|
dependencies:
|
|
26
26
|
- project-manager
|
|
27
|
-
outputFormat: requirements-{task-id}.md
|
|
27
|
+
outputFormat: .harness/doc/prd/requirements-{task-id}.md
|
|
28
28
|
---
|
|
29
29
|
|
|
30
30
|
# 需求分析 Agent
|
|
@@ -63,28 +63,7 @@ outputFormat: requirements-{task-id}.md
|
|
|
63
63
|
- 用户故事遵循"作为...我想要...以便于..."格式
|
|
64
64
|
|
|
65
65
|
## 需求文档模板
|
|
66
|
-
```markdown
|
|
67
|
-
# 需求文档:{标题}
|
|
68
66
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
- 期望达到的效果
|
|
73
|
-
|
|
74
|
-
## 目标(What)
|
|
75
|
-
- 功能性需求(FR-001 ~ FR-n)
|
|
76
|
-
- 非功能性需求(NFR-001 ~ NFR-n)
|
|
77
|
-
|
|
78
|
-
## 范围边界
|
|
79
|
-
- **包含**: 本次要做的事
|
|
80
|
-
- **不包含**: 明确排除的范围(防止范围蔓延)
|
|
81
|
-
- **依赖**: 外部依赖和前置条件
|
|
82
|
-
|
|
83
|
-
## 用户故事
|
|
84
|
-
作为 {角色},我想要 {功能},以便于 {价值}
|
|
85
|
-
|
|
86
|
-
## 验收标准(AC)
|
|
87
|
-
- AC-1: [Given/When/Then 格式的可测试条件]
|
|
88
|
-
- AC-2: [...]
|
|
89
|
-
- AC-n: [...]
|
|
90
|
-
```
|
|
67
|
+
> **强制**:所有需求文档必须使用 `prd-generator` 技能生成标准化 PRD,该技能提供了十大章节的完整模板(背景、用户角色、业务主流程、用户故事、系统用户与功能结构、功能清单、功能详细描述、产品运行分析、非功能性需求、附录),确保需求分析的完整性和可追溯性。
|
|
68
|
+
>
|
|
69
|
+
> 不得使用简化版模板或自定义格式,所有需求必须按照 PRD 标准版输出。
|
|
@@ -251,11 +251,12 @@ project-root/ # 项目根目录
|
|
|
251
251
|
| 规范层级 | 入口 | 与本项目的对应关系 |
|
|
252
252
|
|---------|------|-------------------|
|
|
253
253
|
| ⚡ Gate 门禁 | `.harness/gate/checks/` | 自动检测 pom.xml→Java门禁(build-gates-java.js: mvn compile/test/checkstyle/spotbugs/jacoco) / package.json→前端门禁(build-gates-frontend.js: tsc/npm/eslint/audit) |
|
|
254
|
-
| 📘 Skills 技能 | `.harness/skills/` |
|
|
255
|
-
| 🔄 Workflow | `.harness/workflow/definition.yaml` | 条件引用 `java-build
|
|
256
|
-
| 🤖 Agents | `.harness/agents/` |
|
|
254
|
+
| 📘 Skills 技能 | `.harness/skills/` | 12个技能:architecture-designer(C4/领域模型)/prd-generator(PRD生成)/code-review(前端+后端)/test-unit/lint-check/test-api/test-e2e/java-build/vue-frontend-build/docker-build/docs-update/task-board-maintenance |
|
|
255
|
+
| 🔄 Workflow | `.harness/workflow/definition.yaml` | 条件引用 `java-build \| vue-frontend-build`;7阶段状态机+4流程变体;rules引用java-backend.md+frontend-vue3.md+design-document-boundary.md |
|
|
256
|
+
| 🤖 Agents | `.harness/agents/` | 7个Agent三件套(.md+prompt.md+contract.yaml):PM→需求分析→方案设计→闸门→开发→审查→测试;输出统一到 `.harness/doc/` |
|
|
257
257
|
| 🔌 MCP 工具 | `.harness/mcp/config.yaml` | 注册 SonarQube(metrics/quality_gate)、Maven(dependency_info/central_search)、Jenkins(maven_job_status) 工具定义 |
|
|
258
|
-
| 📋 Rules | `.harness/rules
|
|
258
|
+
| 📋 Rules | `.harness/rules/` | **global**: coding-standard(A01-A31)/commit-convention/security-baseline(SM4/注入/脱敏)/process-discipline(三步验证)/design-document-boundary(复杂度分流);**project**: java-backend(22项CR)+frontend-vue3(7项禁止)+web-specific(i18n/API) |
|
|
259
|
+
| 📄 输出文档 | `.harness/doc/` | prd/ / design/ / gate-report/ / codereview/ / test-report/ / project/ |
|
|
259
260
|
|
|
260
261
|
## 维护纪律
|
|
261
262
|
|
|
@@ -3,6 +3,7 @@ name: architecture-designer
|
|
|
3
3
|
description: 专业架构设计技能 — C4 架构模型、用例图、领域模型、服务设计、ER图、类图的全套设计模板和 Mermaid 规范,支持简单/复杂需求分流
|
|
4
4
|
alwaysApply: false
|
|
5
5
|
enabled: true
|
|
6
|
+
outputPath: .harness/doc/design/
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# Architecture Designer Skill
|
|
@@ -10,6 +11,7 @@ enabled: true
|
|
|
10
11
|
> **Skill 类型**: 方案设计辅助 Skill
|
|
11
12
|
> **触发场景**: 系统架构方案设计、技术设计文档编写、多维度架构评审优化
|
|
12
13
|
> **所属 Agent**: solution-designer(方案设计师在方案设计阶段引用本 skill)
|
|
14
|
+
> **输出路径**: 生成的架构设计文档写入项目根目录下 `.harness/doc/design/` 目录
|
|
13
15
|
|
|
14
16
|
---
|
|
15
17
|
|
|
@@ -3,12 +3,14 @@ name: docs-update
|
|
|
3
3
|
description: 文档更新技能 — CHANGELOG 更新、API 文档生成(JSDoc/Swagger)、README 维护、dev-map 同步及 ADR 决策记录
|
|
4
4
|
alwaysApply: false
|
|
5
5
|
enabled: true
|
|
6
|
+
outputPath: .harness/doc/
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# 文档更新技能 (docs-update)
|
|
9
10
|
|
|
10
11
|
> **执行角色**: 开发实现 Agent / 需求分析 Agent / 方案设计 Agent
|
|
11
12
|
> **触发时机**: 每次代码变更后、阶段交付前
|
|
13
|
+
> **输出路径**: 文档更新产物写入项目根目录下 `.harness/doc/` 目录(CHANGELOG、ADR 等按子目录组织)
|
|
12
14
|
|
|
13
15
|
---
|
|
14
16
|
|