openone-workflow-kit 0.1.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 +21 -0
- package/CODE_OF_CONDUCT.md +25 -0
- package/CONTRIBUTING.md +51 -0
- package/INIT.md +81 -0
- package/LICENSE +201 -0
- package/NOTICE +6 -0
- package/README.md +195 -0
- package/SECURITY.md +39 -0
- package/bin/check-contract.cjs +137 -0
- package/bin/check-sanitized.cjs +93 -0
- package/bin/init-workspace.cjs +966 -0
- package/docs/assets/PROVENANCE.md +20 -0
- package/docs/assets/architecture.svg +112 -0
- package/docs/assets/hero.svg +83 -0
- package/docs/assets/quick-demo.svg +74 -0
- package/docs/assets/social-preview.svg +57 -0
- package/docs/assets/visual-manifest.json +52 -0
- package/docs/definition-of-done.md +80 -0
- package/docs/dual-track-workflow.md +90 -0
- package/docs/local-merge-notes.md +21 -0
- package/docs/maintainer-handoff.md +150 -0
- package/docs/manual-publish.md +119 -0
- package/docs/private-denylist.example.txt +11 -0
- package/docs/publication-decisions.md +36 -0
- package/docs/release-checklist.md +72 -0
- package/docs/releases/v0.1.0.md +70 -0
- package/docs/shareable-install.md +51 -0
- package/docs/tool-install-recipes.md +103 -0
- package/examples/ecommerce/team-profile.example.yaml +141 -0
- package/examples/education/team-profile.example.yaml +143 -0
- package/examples/saas-to-b/team-profile.example.yaml +130 -0
- package/examples/team-profile.example.yaml +69 -0
- package/install.sh +27 -0
- package/package.json +65 -0
- package/scripts/build-release.cjs +141 -0
- package/scripts/release-source-state.cjs +38 -0
- package/templates/AGENTS.template.md +26 -0
- package/test/release-readiness.cjs +214 -0
- package/test/smoke.cjs +272 -0
- package/workflow/adapters/README.md +16 -0
- package/workflow/core/README.md +38 -0
- package/workflow/core/capabilities/README.md +61 -0
- package/workflow/core/capabilities/acceptance-oracle-tracker.md +45 -0
- package/workflow/core/capabilities/branch-gatekeeper.md +57 -0
- package/workflow/core/capabilities/channel-experiment-tracker.md +32 -0
- package/workflow/core/capabilities/ci-cd-automation-governor.md +123 -0
- package/workflow/core/capabilities/contract-tracer.md +53 -0
- package/workflow/core/capabilities/data-change-safety-checker.md +52 -0
- package/workflow/core/capabilities/definition-lint.md +81 -0
- package/workflow/core/capabilities/deployment-readiness-checker.md +57 -0
- package/workflow/core/capabilities/impact-scope-analyzer.md +50 -0
- package/workflow/core/capabilities/knowledge-capture-maintainer.md +32 -0
- package/workflow/core/capabilities/market-evidence-grader.md +33 -0
- package/workflow/core/capabilities/memory-curator.md +48 -0
- package/workflow/core/capabilities/personal-git-operator.md +41 -0
- package/workflow/core/capabilities/personal-release-checklist.md +49 -0
- package/workflow/core/capabilities/prd-code-diff-checker.md +53 -0
- package/workflow/core/capabilities/protocol-state-machine-checker.md +57 -0
- package/workflow/core/capabilities/release-safety-checker.md +61 -0
- package/workflow/core/capabilities/repo-baseline-scanner.md +48 -0
- package/workflow/core/capabilities/rule-extractor.md +48 -0
- package/workflow/core/capabilities/runtime-evidence-triage.md +53 -0
- package/workflow/core/capabilities/security-reviewer.md +48 -0
- package/workflow/core/capabilities/test-evidence-reviewer.md +50 -0
- package/workflow/core/capabilities/ui-baseline-reviewer.md +50 -0
- package/workflow/core/capabilities/verify-app.md +51 -0
- package/workflow/core/capabilities/worktree-isolator.md +53 -0
- package/workflow/core/commands/01-/351/234/200/346/261/202/350/256/250/350/256/272.md +36 -0
- package/workflow/core/commands/02-/344/272/247/345/223/201/346/226/207/346/241/243.md +35 -0
- package/workflow/core/commands/02B-UI/350/256/276/350/256/241.md +75 -0
- package/workflow/core/commands/03-06-/347/240/224/345/217/221/345/207/206/345/244/207.md +30 -0
- package/workflow/core/commands/03-/346/212/200/346/234/257/346/236/266/346/236/204.md +32 -0
- package/workflow/core/commands/04-/344/273/243/347/240/201/345/256/236/347/216/260.md +32 -0
- package/workflow/core/commands/04A-/345/211/215/347/253/257/344/273/243/347/240/201/345/256/236/347/216/260.md +36 -0
- package/workflow/core/commands/04B-/345/220/216/347/253/257/344/273/243/347/240/201/345/256/236/347/216/260.md +31 -0
- package/workflow/core/commands/05-/344/273/243/347/240/201/345/256/241/346/237/245.md +31 -0
- package/workflow/core/commands/06-/346/265/213/350/257/225/347/224/250/344/276/213.md +34 -0
- package/workflow/core/commands/07-/346/265/213/350/257/225/346/211/247/350/241/214.md +33 -0
- package/workflow/core/commands/08-/345/217/221/345/270/203/345/207/206/345/244/207.md +44 -0
- package/workflow/core/commands/09-/345/217/221/345/270/203/346/211/247/350/241/214.md +39 -0
- package/workflow/core/commands/10-/345/244/215/347/233/230/346/200/273/347/273/223.md +41 -0
- package/workflow/core/commands/B1-B8-/345/225/206/344/270/232/345/214/226/345/207/206/345/244/207.md +30 -0
- package/workflow/core/commands/B1-/344/270/232/345/212/241/345/256/232/344/275/215.md +38 -0
- package/workflow/core/commands/B2-/345/225/206/344/270/232/346/250/241/345/274/217.md +38 -0
- package/workflow/core/commands/B3-PMF/344/270/216/345/256/242/346/210/267/347/224/273/345/203/217.md +39 -0
- package/workflow/core/commands/B4-/345/234/272/346/231/257/344/270/216/350/264/255/344/271/260/346/227/205/347/250/213.md +37 -0
- package/workflow/core/commands/B5-/346/270/240/351/201/223/346/274/217/346/226/227/346/230/240/345/260/204.md +39 -0
- package/workflow/core/commands/B6-/350/220/245/351/224/200/350/216/267/345/256/242/347/255/226/347/225/245.md +38 -0
- package/workflow/core/commands/B7-/350/220/245/351/224/200/351/242/204/347/256/227.md +36 -0
- package/workflow/core/commands/B8-/346/270/240/351/201/223/346/211/247/350/241/214/347/255/226/347/225/245.md +39 -0
- package/workflow/core/commands/B9-/347/255/226/347/225/245/345/244/215/347/233/230.md +38 -0
- package/workflow/core/commands/README.md +56 -0
- package/workflow/core/commands/init-workspace.md +29 -0
- package/workflow/core/commands/new-feature.md +33 -0
- package/workflow/core/commands/new-product.md +28 -0
- package/workflow/core/commands/workflow-status.md +30 -0
- package/workflow/core/commands//344/270/200/350/207/264/346/200/247/346/243/200/346/237/245.md +35 -0
- package/workflow/core/commands//344/272/244/344/273/230/350/207/263/345/256/214/346/210/220.md +40 -0
- package/workflow/core/commands//345/256/232/344/271/211/345/256/214/346/210/220.md +41 -0
- package/workflow/core/commands//346/276/204/346/270/205.md +31 -0
- package/workflow/core/templates/00-business-status.md +43 -0
- package/workflow/core/templates/00-workflow-status.md +50 -0
- package/workflow/core/templates/README.md +12 -0
- package/workflow/core/templates/business-stage-document.md +49 -0
- package/workflow/core/templates/completion-contract.md +114 -0
- package/workflow/core/templates/constitution.template.md +50 -0
- package/workflow/core/templates/living-spec.md +35 -0
- package/workflow/core/templates/stage-document.md +42 -0
- package/workflow/core/templates/team-profile.template.yaml +104 -0
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
schema_version: "1.0"
|
|
2
|
+
generated_at: "2026-06-05T00:00:00.000Z"
|
|
3
|
+
generated_by: "agent-workflow-init (ecommerce example)"
|
|
4
|
+
|
|
5
|
+
# Example profile for an ecommerce team that runs both a customer-facing
|
|
6
|
+
# storefront and a backoffice for merchants. Replace placeholders before use.
|
|
7
|
+
|
|
8
|
+
team:
|
|
9
|
+
name: "Example Storefront Team"
|
|
10
|
+
business_definition: "Direct-to-consumer storefront and merchant backoffice."
|
|
11
|
+
target_users:
|
|
12
|
+
- "shopper"
|
|
13
|
+
- "merchant operator"
|
|
14
|
+
- "fulfillment partner"
|
|
15
|
+
|
|
16
|
+
industries:
|
|
17
|
+
- ecommerce
|
|
18
|
+
|
|
19
|
+
enabled_tools:
|
|
20
|
+
- codex
|
|
21
|
+
- claude
|
|
22
|
+
- cursor
|
|
23
|
+
- copilot
|
|
24
|
+
|
|
25
|
+
detected_tools: []
|
|
26
|
+
|
|
27
|
+
source_materials:
|
|
28
|
+
business_intro:
|
|
29
|
+
label: "业务介绍"
|
|
30
|
+
status: "provided_by_user"
|
|
31
|
+
paths:
|
|
32
|
+
- "docs/product/overview.md"
|
|
33
|
+
project_docs:
|
|
34
|
+
label: "项目资料"
|
|
35
|
+
status: "provided_by_user"
|
|
36
|
+
paths:
|
|
37
|
+
- "docs/product/"
|
|
38
|
+
- "docs/merchant-runbook.md"
|
|
39
|
+
ui_specs:
|
|
40
|
+
label: "UI 设计文件"
|
|
41
|
+
status: "provided_by_user"
|
|
42
|
+
paths:
|
|
43
|
+
- "docs/design/storefront-tokens.md"
|
|
44
|
+
- "docs/design/backoffice-tokens.md"
|
|
45
|
+
frontend_rules:
|
|
46
|
+
label: "前端开发规范"
|
|
47
|
+
status: "provided_by_user"
|
|
48
|
+
paths:
|
|
49
|
+
- "docs/frontend-rules.md"
|
|
50
|
+
backend_rules:
|
|
51
|
+
label: "后端开发规范"
|
|
52
|
+
status: "provided_by_user"
|
|
53
|
+
paths:
|
|
54
|
+
- "docs/backend-rules.md"
|
|
55
|
+
testing_rules:
|
|
56
|
+
label: "测试规范"
|
|
57
|
+
status: "provided_by_user"
|
|
58
|
+
paths:
|
|
59
|
+
- "docs/testing-rules.md"
|
|
60
|
+
|
|
61
|
+
repos:
|
|
62
|
+
- path: "apps/storefront"
|
|
63
|
+
marker: "node"
|
|
64
|
+
tech_stack:
|
|
65
|
+
- "node"
|
|
66
|
+
- "react"
|
|
67
|
+
- "next"
|
|
68
|
+
- "typescript"
|
|
69
|
+
family: "frontend-web"
|
|
70
|
+
role: "customer storefront"
|
|
71
|
+
- path: "apps/backoffice"
|
|
72
|
+
marker: "node"
|
|
73
|
+
tech_stack:
|
|
74
|
+
- "node"
|
|
75
|
+
- "vue"
|
|
76
|
+
- "typescript"
|
|
77
|
+
family: "frontend-web"
|
|
78
|
+
role: "merchant backoffice"
|
|
79
|
+
- path: "services/catalog"
|
|
80
|
+
marker: "node"
|
|
81
|
+
tech_stack:
|
|
82
|
+
- "node"
|
|
83
|
+
- "typescript"
|
|
84
|
+
family: "backend-service"
|
|
85
|
+
role: "catalog and search"
|
|
86
|
+
- path: "services/orders"
|
|
87
|
+
marker: "node"
|
|
88
|
+
tech_stack:
|
|
89
|
+
- "node"
|
|
90
|
+
- "typescript"
|
|
91
|
+
family: "backend-service"
|
|
92
|
+
role: "order lifecycle"
|
|
93
|
+
- path: "services/payments"
|
|
94
|
+
marker: "node"
|
|
95
|
+
tech_stack:
|
|
96
|
+
- "node"
|
|
97
|
+
- "typescript"
|
|
98
|
+
family: "backend-service"
|
|
99
|
+
role: "payment integration"
|
|
100
|
+
|
|
101
|
+
branch_model:
|
|
102
|
+
type: "gitflow"
|
|
103
|
+
production_branch: "main"
|
|
104
|
+
integration_branch: "develop"
|
|
105
|
+
feature_branch_rule: "feature/{ticket}-{slug}"
|
|
106
|
+
worktree_dir: "_worktrees"
|
|
107
|
+
|
|
108
|
+
risk_policy:
|
|
109
|
+
remote_git_operations: "manual-only"
|
|
110
|
+
branch_creation: "manual-only"
|
|
111
|
+
push_and_release: "manual-only"
|
|
112
|
+
database_writes: "manual-only"
|
|
113
|
+
config_writes: "manual-only"
|
|
114
|
+
high_risk_files:
|
|
115
|
+
- "ci/**"
|
|
116
|
+
- "deploy/**"
|
|
117
|
+
- "*.env*"
|
|
118
|
+
- "infra/**"
|
|
119
|
+
- "package.json"
|
|
120
|
+
- "lockfiles"
|
|
121
|
+
- "openapi/**"
|
|
122
|
+
- "payments/config/**"
|
|
123
|
+
|
|
124
|
+
workflow:
|
|
125
|
+
features_dir: "features"
|
|
126
|
+
core_dir: "workflow/core"
|
|
127
|
+
adapters_dir: "workflow/adapters"
|
|
128
|
+
require_stage_gate_for_code: true
|
|
129
|
+
require_feature_branch_for_code: true
|
|
130
|
+
same_repo_parallel_policy: "worktree-required-after-implementation-stage"
|
|
131
|
+
|
|
132
|
+
# Ecommerce teams should prioritize release safety, contract tracing
|
|
133
|
+
# (between catalog/orders/payments), and UI baseline review for the storefront.
|
|
134
|
+
enabled_capabilities:
|
|
135
|
+
- branch-gatekeeper
|
|
136
|
+
- release-safety-checker
|
|
137
|
+
- prd-code-diff-checker
|
|
138
|
+
- contract-tracer
|
|
139
|
+
- ui-baseline-reviewer
|
|
140
|
+
- security-reviewer
|
|
141
|
+
- test-evidence-reviewer
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
schema_version: "1.0"
|
|
2
|
+
generated_at: "2026-06-05T00:00:00.000Z"
|
|
3
|
+
generated_by: "agent-workflow-init (education example)"
|
|
4
|
+
|
|
5
|
+
# Example profile for a learning platform team that runs a learner-facing
|
|
6
|
+
# web app, an instructor console, and backend services. Replace placeholders
|
|
7
|
+
# before use; do not commit real learner, instructor, school, or billing data.
|
|
8
|
+
|
|
9
|
+
team:
|
|
10
|
+
name: "Example Learning Platform"
|
|
11
|
+
business_definition: "Learning platform for course delivery, assessments, and instructor operations."
|
|
12
|
+
target_users:
|
|
13
|
+
- "learner"
|
|
14
|
+
- "instructor"
|
|
15
|
+
- "school admin"
|
|
16
|
+
- "support operator"
|
|
17
|
+
|
|
18
|
+
industries:
|
|
19
|
+
- education
|
|
20
|
+
|
|
21
|
+
enabled_tools:
|
|
22
|
+
- codex
|
|
23
|
+
- claude
|
|
24
|
+
- cursor
|
|
25
|
+
|
|
26
|
+
detected_tools: []
|
|
27
|
+
|
|
28
|
+
source_materials:
|
|
29
|
+
business_intro:
|
|
30
|
+
label: "业务介绍"
|
|
31
|
+
status: "provided_by_user"
|
|
32
|
+
paths:
|
|
33
|
+
- "docs/product/overview.md"
|
|
34
|
+
project_docs:
|
|
35
|
+
label: "项目资料"
|
|
36
|
+
status: "provided_by_user"
|
|
37
|
+
paths:
|
|
38
|
+
- "docs/product/"
|
|
39
|
+
- "docs/learning-content/"
|
|
40
|
+
ui_specs:
|
|
41
|
+
label: "UI 设计文件"
|
|
42
|
+
status: "provided_by_user"
|
|
43
|
+
paths:
|
|
44
|
+
- "docs/design/learner-tokens.md"
|
|
45
|
+
- "docs/design/instructor-tokens.md"
|
|
46
|
+
frontend_rules:
|
|
47
|
+
label: "前端开发规范"
|
|
48
|
+
status: "provided_by_user"
|
|
49
|
+
paths:
|
|
50
|
+
- "docs/frontend-rules.md"
|
|
51
|
+
backend_rules:
|
|
52
|
+
label: "后端开发规范"
|
|
53
|
+
status: "provided_by_user"
|
|
54
|
+
paths:
|
|
55
|
+
- "docs/backend-rules.md"
|
|
56
|
+
testing_rules:
|
|
57
|
+
label: "测试规范"
|
|
58
|
+
status: "provided_by_user"
|
|
59
|
+
paths:
|
|
60
|
+
- "docs/testing-rules.md"
|
|
61
|
+
|
|
62
|
+
repos:
|
|
63
|
+
- path: "apps/learner-web"
|
|
64
|
+
marker: "node"
|
|
65
|
+
tech_stack:
|
|
66
|
+
- "node"
|
|
67
|
+
- "react"
|
|
68
|
+
- "typescript"
|
|
69
|
+
family: "frontend-web"
|
|
70
|
+
role: "learner-facing web app"
|
|
71
|
+
- path: "apps/instructor-console"
|
|
72
|
+
marker: "node"
|
|
73
|
+
tech_stack:
|
|
74
|
+
- "node"
|
|
75
|
+
- "vue"
|
|
76
|
+
- "typescript"
|
|
77
|
+
family: "frontend-web"
|
|
78
|
+
role: "instructor operations console"
|
|
79
|
+
- path: "services/course"
|
|
80
|
+
marker: "node"
|
|
81
|
+
tech_stack:
|
|
82
|
+
- "node"
|
|
83
|
+
- "typescript"
|
|
84
|
+
family: "backend-service"
|
|
85
|
+
role: "course catalog and enrollment"
|
|
86
|
+
- path: "services/assessment"
|
|
87
|
+
marker: "node"
|
|
88
|
+
tech_stack:
|
|
89
|
+
- "node"
|
|
90
|
+
- "typescript"
|
|
91
|
+
family: "backend-service"
|
|
92
|
+
role: "quiz and assessment workflow"
|
|
93
|
+
- path: "services/notification"
|
|
94
|
+
marker: "node"
|
|
95
|
+
tech_stack:
|
|
96
|
+
- "node"
|
|
97
|
+
- "typescript"
|
|
98
|
+
family: "backend-service"
|
|
99
|
+
role: "email and in-app notifications"
|
|
100
|
+
|
|
101
|
+
branch_model:
|
|
102
|
+
type: "trunk-based"
|
|
103
|
+
production_branch: "main"
|
|
104
|
+
integration_branch: "main"
|
|
105
|
+
feature_branch_rule: "feature/{ticket}-{slug}"
|
|
106
|
+
worktree_dir: "_worktrees"
|
|
107
|
+
|
|
108
|
+
risk_policy:
|
|
109
|
+
remote_git_operations: "manual-only"
|
|
110
|
+
branch_creation: "manual-only"
|
|
111
|
+
push_and_release: "manual-only"
|
|
112
|
+
database_writes: "manual-only"
|
|
113
|
+
config_writes: "manual-only"
|
|
114
|
+
high_risk_files:
|
|
115
|
+
- "ci/**"
|
|
116
|
+
- "deploy/**"
|
|
117
|
+
- "*.env*"
|
|
118
|
+
- "infra/**"
|
|
119
|
+
- "package.json"
|
|
120
|
+
- "lockfiles"
|
|
121
|
+
- "content-import/**"
|
|
122
|
+
- "privacy/**"
|
|
123
|
+
|
|
124
|
+
workflow:
|
|
125
|
+
features_dir: "features"
|
|
126
|
+
core_dir: "workflow/core"
|
|
127
|
+
adapters_dir: "workflow/adapters"
|
|
128
|
+
require_stage_gate_for_code: true
|
|
129
|
+
require_feature_branch_for_code: true
|
|
130
|
+
same_repo_parallel_policy: "worktree-required-after-implementation-stage"
|
|
131
|
+
|
|
132
|
+
# Learning platforms should prioritize contract tracing for course and
|
|
133
|
+
# assessment flows, privacy review for learner data, and evidence-based
|
|
134
|
+
# verification of learner and instructor journeys.
|
|
135
|
+
enabled_capabilities:
|
|
136
|
+
- branch-gatekeeper
|
|
137
|
+
- release-safety-checker
|
|
138
|
+
- prd-code-diff-checker
|
|
139
|
+
- contract-tracer
|
|
140
|
+
- ui-baseline-reviewer
|
|
141
|
+
- security-reviewer
|
|
142
|
+
- test-evidence-reviewer
|
|
143
|
+
- verify-app
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
schema_version: "1.0"
|
|
2
|
+
generated_at: "2026-06-05T00:00:00.000Z"
|
|
3
|
+
generated_by: "agent-workflow-init (saas-to-b example)"
|
|
4
|
+
|
|
5
|
+
# Example profile for a SaaS to B team building a multi-tenant web product.
|
|
6
|
+
# Replace placeholders with real, non-confidential information before use.
|
|
7
|
+
|
|
8
|
+
team:
|
|
9
|
+
name: "Example B2B SaaS"
|
|
10
|
+
business_definition: "Multi-tenant workflow product for mid-size operations teams."
|
|
11
|
+
target_users:
|
|
12
|
+
- "operations admin"
|
|
13
|
+
- "team lead"
|
|
14
|
+
- "external auditor"
|
|
15
|
+
|
|
16
|
+
industries:
|
|
17
|
+
- saas-to-b
|
|
18
|
+
|
|
19
|
+
enabled_tools:
|
|
20
|
+
- codex
|
|
21
|
+
- claude
|
|
22
|
+
- cursor
|
|
23
|
+
|
|
24
|
+
detected_tools: []
|
|
25
|
+
|
|
26
|
+
source_materials:
|
|
27
|
+
business_intro:
|
|
28
|
+
label: "业务介绍"
|
|
29
|
+
status: "provided_by_user"
|
|
30
|
+
paths:
|
|
31
|
+
- "docs/product/overview.md"
|
|
32
|
+
project_docs:
|
|
33
|
+
label: "项目资料"
|
|
34
|
+
status: "provided_by_user"
|
|
35
|
+
paths:
|
|
36
|
+
- "docs/product/"
|
|
37
|
+
ui_specs:
|
|
38
|
+
label: "UI 设计文件"
|
|
39
|
+
status: "provided_by_user"
|
|
40
|
+
paths:
|
|
41
|
+
- "docs/design/tokens.md"
|
|
42
|
+
- "docs/design/components.md"
|
|
43
|
+
frontend_rules:
|
|
44
|
+
label: "前端开发规范"
|
|
45
|
+
status: "provided_by_user"
|
|
46
|
+
paths:
|
|
47
|
+
- "docs/frontend-rules.md"
|
|
48
|
+
backend_rules:
|
|
49
|
+
label: "后端开发规范"
|
|
50
|
+
status: "provided_by_user"
|
|
51
|
+
paths:
|
|
52
|
+
- "docs/backend-rules.md"
|
|
53
|
+
testing_rules:
|
|
54
|
+
label: "测试规范"
|
|
55
|
+
status: "provided_by_user"
|
|
56
|
+
paths:
|
|
57
|
+
- "docs/testing-rules.md"
|
|
58
|
+
|
|
59
|
+
repos:
|
|
60
|
+
- path: "apps/web"
|
|
61
|
+
marker: "node"
|
|
62
|
+
tech_stack:
|
|
63
|
+
- "node"
|
|
64
|
+
- "react"
|
|
65
|
+
- "typescript"
|
|
66
|
+
- "vite"
|
|
67
|
+
family: "frontend-web"
|
|
68
|
+
role: "tenant-facing web app"
|
|
69
|
+
- path: "apps/admin"
|
|
70
|
+
marker: "node"
|
|
71
|
+
tech_stack:
|
|
72
|
+
- "node"
|
|
73
|
+
- "react"
|
|
74
|
+
- "typescript"
|
|
75
|
+
family: "frontend-web"
|
|
76
|
+
role: "internal admin console"
|
|
77
|
+
- path: "services/api"
|
|
78
|
+
marker: "node"
|
|
79
|
+
tech_stack:
|
|
80
|
+
- "node"
|
|
81
|
+
- "typescript"
|
|
82
|
+
- "fastify"
|
|
83
|
+
family: "backend-api"
|
|
84
|
+
role: "tenant-facing API gateway"
|
|
85
|
+
- path: "services/billing"
|
|
86
|
+
marker: "node"
|
|
87
|
+
tech_stack:
|
|
88
|
+
- "node"
|
|
89
|
+
- "typescript"
|
|
90
|
+
family: "backend-service"
|
|
91
|
+
role: "subscription billing"
|
|
92
|
+
|
|
93
|
+
branch_model:
|
|
94
|
+
type: "trunk-based"
|
|
95
|
+
production_branch: "main"
|
|
96
|
+
integration_branch: "main"
|
|
97
|
+
feature_branch_rule: "feature/{ticket}-{slug}"
|
|
98
|
+
worktree_dir: "_worktrees"
|
|
99
|
+
|
|
100
|
+
risk_policy:
|
|
101
|
+
remote_git_operations: "manual-only"
|
|
102
|
+
branch_creation: "manual-only"
|
|
103
|
+
push_and_release: "manual-only"
|
|
104
|
+
database_writes: "manual-only"
|
|
105
|
+
config_writes: "manual-only"
|
|
106
|
+
high_risk_files:
|
|
107
|
+
- "ci/**"
|
|
108
|
+
- "deploy/**"
|
|
109
|
+
- "*.env*"
|
|
110
|
+
- "infra/**"
|
|
111
|
+
- "package.json"
|
|
112
|
+
- "lockfiles"
|
|
113
|
+
- "openapi/**"
|
|
114
|
+
|
|
115
|
+
workflow:
|
|
116
|
+
features_dir: "features"
|
|
117
|
+
core_dir: "workflow/core"
|
|
118
|
+
adapters_dir: "workflow/adapters"
|
|
119
|
+
require_stage_gate_for_code: true
|
|
120
|
+
require_feature_branch_for_code: true
|
|
121
|
+
same_repo_parallel_policy: "worktree-required-after-implementation-stage"
|
|
122
|
+
|
|
123
|
+
# Recommended capabilities to adopt first for a SaaS to B product.
|
|
124
|
+
enabled_capabilities:
|
|
125
|
+
- branch-gatekeeper
|
|
126
|
+
- release-safety-checker
|
|
127
|
+
- prd-code-diff-checker
|
|
128
|
+
- contract-tracer
|
|
129
|
+
- security-reviewer
|
|
130
|
+
- ui-baseline-reviewer
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
schema_version: "1.0"
|
|
2
|
+
generated_at: "2026-06-05T00:00:00.000Z"
|
|
3
|
+
generated_by: "agent-workflow-init 0.1.0"
|
|
4
|
+
|
|
5
|
+
team:
|
|
6
|
+
name: "Example Team"
|
|
7
|
+
business_definition: "A placeholder product team used for starter-kit demonstration."
|
|
8
|
+
target_users:
|
|
9
|
+
- "internal users"
|
|
10
|
+
- "external customers"
|
|
11
|
+
|
|
12
|
+
enabled_tools:
|
|
13
|
+
- codex
|
|
14
|
+
- claude
|
|
15
|
+
- cursor
|
|
16
|
+
|
|
17
|
+
source_materials:
|
|
18
|
+
business_intro:
|
|
19
|
+
label: "业务介绍"
|
|
20
|
+
status: "detected"
|
|
21
|
+
paths:
|
|
22
|
+
- "docs/business-overview.md"
|
|
23
|
+
project_docs:
|
|
24
|
+
label: "项目资料"
|
|
25
|
+
status: "detected"
|
|
26
|
+
paths:
|
|
27
|
+
- "docs/product/"
|
|
28
|
+
ui_specs:
|
|
29
|
+
label: "UI 设计文件"
|
|
30
|
+
status: "missing"
|
|
31
|
+
paths: []
|
|
32
|
+
frontend_rules:
|
|
33
|
+
label: "前端开发规范"
|
|
34
|
+
status: "detected"
|
|
35
|
+
paths:
|
|
36
|
+
- "docs/frontend-rules.md"
|
|
37
|
+
backend_rules:
|
|
38
|
+
label: "后端开发规范"
|
|
39
|
+
status: "detected"
|
|
40
|
+
paths:
|
|
41
|
+
- "docs/backend-rules.md"
|
|
42
|
+
testing_rules:
|
|
43
|
+
label: "测试规范"
|
|
44
|
+
status: "detected"
|
|
45
|
+
paths:
|
|
46
|
+
- "docs/testing-rules.md"
|
|
47
|
+
|
|
48
|
+
repos:
|
|
49
|
+
- path: "apps/web"
|
|
50
|
+
marker: "node"
|
|
51
|
+
tech_stack:
|
|
52
|
+
- "node"
|
|
53
|
+
- "react"
|
|
54
|
+
- "typescript"
|
|
55
|
+
family: "frontend-web"
|
|
56
|
+
role: "customer web app"
|
|
57
|
+
- path: "services/api"
|
|
58
|
+
marker: "maven"
|
|
59
|
+
tech_stack:
|
|
60
|
+
- "java-maven"
|
|
61
|
+
family: "backend-api"
|
|
62
|
+
role: "business API"
|
|
63
|
+
|
|
64
|
+
branch_model:
|
|
65
|
+
type: "prod-test"
|
|
66
|
+
production_branch: "main"
|
|
67
|
+
integration_branch: "develop"
|
|
68
|
+
feature_branch_rule: "feature/{ticket}-{slug}"
|
|
69
|
+
worktree_dir: "_worktrees"
|
package/install.sh
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
#!/usr/bin/env sh
|
|
2
|
+
set -eu
|
|
3
|
+
|
|
4
|
+
SCRIPT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)
|
|
5
|
+
|
|
6
|
+
# 前置检查:需要 Node.js >= 18。
|
|
7
|
+
if ! command -v node >/dev/null 2>&1; then
|
|
8
|
+
echo "错误:未安装 Node.js,请安装 Node.js 18 或更高版本。" >&2
|
|
9
|
+
echo " https://nodejs.org/" >&2
|
|
10
|
+
exit 1
|
|
11
|
+
fi
|
|
12
|
+
|
|
13
|
+
NODE_MAJOR=$(node -e 'process.stdout.write(String(process.versions.node.split(".")[0]))' 2>/dev/null || echo 0)
|
|
14
|
+
if [ "$NODE_MAJOR" -lt 18 ]; then
|
|
15
|
+
echo "错误:当前 Node.js 为 $(node -v 2>/dev/null || echo unknown),需要 18 或更高版本。" >&2
|
|
16
|
+
echo " 当前: $(node -v 2>/dev/null || echo unknown)。要求: >= v18" >&2
|
|
17
|
+
exit 1
|
|
18
|
+
fi
|
|
19
|
+
|
|
20
|
+
if [ "$#" -eq 0 ]; then
|
|
21
|
+
TARGET="."
|
|
22
|
+
else
|
|
23
|
+
TARGET="$1"
|
|
24
|
+
shift
|
|
25
|
+
fi
|
|
26
|
+
|
|
27
|
+
exec node "$SCRIPT_DIR/bin/init-workspace.cjs" --target "$TARGET" "$@"
|
package/package.json
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "openone-workflow-kit",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"private": false,
|
|
5
|
+
"description": "面向独立开发者的工具无关 Agent 研发与商业化双轨工作流 kit,支持可验证交付、多工具适配、发布与增长复盘。",
|
|
6
|
+
"keywords": [
|
|
7
|
+
"agent-workflow",
|
|
8
|
+
"workflow",
|
|
9
|
+
"codex",
|
|
10
|
+
"claude-code",
|
|
11
|
+
"cursor",
|
|
12
|
+
"github-copilot",
|
|
13
|
+
"codebuddy",
|
|
14
|
+
"kiro",
|
|
15
|
+
"trae",
|
|
16
|
+
"solo-developer",
|
|
17
|
+
"product-management",
|
|
18
|
+
"commercialization",
|
|
19
|
+
"software-delivery"
|
|
20
|
+
],
|
|
21
|
+
"homepage": "https://github.com/bluecoast1379/openone-workflow-kit#readme",
|
|
22
|
+
"repository": {
|
|
23
|
+
"type": "git",
|
|
24
|
+
"url": "git+https://github.com/bluecoast1379/openone-workflow-kit.git"
|
|
25
|
+
},
|
|
26
|
+
"bugs": {
|
|
27
|
+
"url": "https://github.com/bluecoast1379/openone-workflow-kit/issues"
|
|
28
|
+
},
|
|
29
|
+
"publishConfig": {
|
|
30
|
+
"access": "public"
|
|
31
|
+
},
|
|
32
|
+
"files": [
|
|
33
|
+
"README.md",
|
|
34
|
+
"CHANGELOG.md",
|
|
35
|
+
"INIT.md",
|
|
36
|
+
"LICENSE",
|
|
37
|
+
"NOTICE",
|
|
38
|
+
"CONTRIBUTING.md",
|
|
39
|
+
"SECURITY.md",
|
|
40
|
+
"CODE_OF_CONDUCT.md",
|
|
41
|
+
"install.sh",
|
|
42
|
+
"bin/",
|
|
43
|
+
"scripts/",
|
|
44
|
+
"workflow/",
|
|
45
|
+
"templates/",
|
|
46
|
+
"examples/",
|
|
47
|
+
"docs/",
|
|
48
|
+
"test/"
|
|
49
|
+
],
|
|
50
|
+
"bin": {
|
|
51
|
+
"agent-workflow-init": "bin/init-workspace.cjs",
|
|
52
|
+
"openone-workflow-init": "bin/init-workspace.cjs",
|
|
53
|
+
"agent-workflow-check-sanitized": "bin/check-sanitized.cjs",
|
|
54
|
+
"openone-workflow-check-contract": "bin/check-contract.cjs"
|
|
55
|
+
},
|
|
56
|
+
"scripts": {
|
|
57
|
+
"check": "node --check bin/init-workspace.cjs && node --check bin/check-sanitized.cjs && node --check bin/check-contract.cjs && node --check test/smoke.cjs && node --check test/release-readiness.cjs && node --check scripts/release-source-state.cjs && node --check scripts/build-release.cjs && node bin/check-sanitized.cjs && node test/smoke.cjs && node test/release-readiness.cjs",
|
|
58
|
+
"build:release": "node scripts/build-release.cjs",
|
|
59
|
+
"init:dry-run": "node bin/init-workspace.cjs --target . --dry-run"
|
|
60
|
+
},
|
|
61
|
+
"engines": {
|
|
62
|
+
"node": ">=18"
|
|
63
|
+
},
|
|
64
|
+
"license": "Apache-2.0"
|
|
65
|
+
}
|