@fredcallagan/arn-spark 5.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/.claude-plugin/plugin.json +9 -0
- package/.opencode/plugins/arn-spark.js +272 -0
- package/package.json +17 -0
- package/plugins/arn-spark/.claude-plugin/plugin.json +9 -0
- package/plugins/arn-spark/LICENSE +21 -0
- package/plugins/arn-spark/README.md +25 -0
- package/plugins/arn-spark/agents/arn-spark-brand-strategist.md +299 -0
- package/plugins/arn-spark/agents/arn-spark-dev-env-builder.md +228 -0
- package/plugins/arn-spark/agents/arn-spark-doctor.md +92 -0
- package/plugins/arn-spark/agents/arn-spark-forensic-investigator.md +181 -0
- package/plugins/arn-spark/agents/arn-spark-market-researcher.md +232 -0
- package/plugins/arn-spark/agents/arn-spark-marketing-pm.md +225 -0
- package/plugins/arn-spark/agents/arn-spark-persona-architect.md +259 -0
- package/plugins/arn-spark/agents/arn-spark-persona-impersonator.md +183 -0
- package/plugins/arn-spark/agents/arn-spark-product-strategist.md +191 -0
- package/plugins/arn-spark/agents/arn-spark-prototype-builder.md +497 -0
- package/plugins/arn-spark/agents/arn-spark-scaffolder.md +228 -0
- package/plugins/arn-spark/agents/arn-spark-spike-runner.md +209 -0
- package/plugins/arn-spark/agents/arn-spark-style-capture.md +196 -0
- package/plugins/arn-spark/agents/arn-spark-tech-evaluator.md +229 -0
- package/plugins/arn-spark/agents/arn-spark-ui-interactor.md +235 -0
- package/plugins/arn-spark/agents/arn-spark-use-case-writer.md +280 -0
- package/plugins/arn-spark/agents/arn-spark-ux-judge.md +215 -0
- package/plugins/arn-spark/agents/arn-spark-ux-specialist.md +200 -0
- package/plugins/arn-spark/agents/arn-spark-visual-sketcher.md +285 -0
- package/plugins/arn-spark/agents/arn-spark-visual-test-engineer.md +224 -0
- package/plugins/arn-spark/references/copilot-tools.md +62 -0
- package/plugins/arn-spark/skills/arn-brainstorming/SKILL.md +520 -0
- package/plugins/arn-spark/skills/arn-brainstorming/references/add-feature-flow.md +155 -0
- package/plugins/arn-spark/skills/arn-spark-arch-vision/SKILL.md +226 -0
- package/plugins/arn-spark/skills/arn-spark-arch-vision/references/architecture-vision-template.md +153 -0
- package/plugins/arn-spark/skills/arn-spark-arch-vision/references/technology-evaluation-guide.md +86 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype/SKILL.md +471 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype/references/clickable-prototype-criteria.md +65 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype/references/journey-template.md +62 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype/references/review-report-template.md +75 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype/references/showcase-capture-guide.md +213 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype-teams/SKILL.md +642 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype-teams/references/debate-protocol.md +242 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype-teams/references/debate-review-report-template.md +161 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype-teams/references/expert-interaction-review-template.md +152 -0
- package/plugins/arn-spark/skills/arn-spark-concept-review/SKILL.md +350 -0
- package/plugins/arn-spark/skills/arn-spark-concept-review/references/conflict-resolution-protocol.md +145 -0
- package/plugins/arn-spark/skills/arn-spark-concept-review/references/review-report-template.md +185 -0
- package/plugins/arn-spark/skills/arn-spark-dev-setup/SKILL.md +366 -0
- package/plugins/arn-spark/skills/arn-spark-dev-setup/references/dev-setup-checklist.md +84 -0
- package/plugins/arn-spark/skills/arn-spark-dev-setup/references/dev-setup-template.md +205 -0
- package/plugins/arn-spark/skills/arn-spark-discover/SKILL.md +303 -0
- package/plugins/arn-spark/skills/arn-spark-discover/references/competitive-landscape-template.md +87 -0
- package/plugins/arn-spark/skills/arn-spark-discover/references/discovery-questions.md +120 -0
- package/plugins/arn-spark/skills/arn-spark-discover/references/persona-profile-template.md +97 -0
- package/plugins/arn-spark/skills/arn-spark-discover/references/product-concept-template.md +253 -0
- package/plugins/arn-spark/skills/arn-spark-ensure-config/SKILL.md +23 -0
- package/plugins/arn-spark/skills/arn-spark-ensure-config/references/ensure-config.md +388 -0
- package/plugins/arn-spark/skills/arn-spark-ensure-config/references/step-0-fast-path.md +25 -0
- package/plugins/arn-spark/skills/arn-spark-ensure-config/scripts/cache-check.sh +127 -0
- package/plugins/arn-spark/skills/arn-spark-feature-extract/SKILL.md +483 -0
- package/plugins/arn-spark/skills/arn-spark-feature-extract/references/feature-backlog-template.md +176 -0
- package/plugins/arn-spark/skills/arn-spark-feature-extract/references/feature-entry-template.md +209 -0
- package/plugins/arn-spark/skills/arn-spark-help/SKILL.md +149 -0
- package/plugins/arn-spark/skills/arn-spark-help/references/pipeline-map.md +211 -0
- package/plugins/arn-spark/skills/arn-spark-init/SKILL.md +312 -0
- package/plugins/arn-spark/skills/arn-spark-init/references/agent-models-presets/all-opus.md +23 -0
- package/plugins/arn-spark/skills/arn-spark-init/references/agent-models-presets/balanced.md +23 -0
- package/plugins/arn-spark/skills/arn-spark-init/references/bkt-setup.md +55 -0
- package/plugins/arn-spark/skills/arn-spark-init/references/jira-mcp-setup.md +61 -0
- package/plugins/arn-spark/skills/arn-spark-init/references/platform-labels.md +97 -0
- package/plugins/arn-spark/skills/arn-spark-naming/SKILL.md +275 -0
- package/plugins/arn-spark/skills/arn-spark-naming/references/creative-brief-template.md +146 -0
- package/plugins/arn-spark/skills/arn-spark-naming/references/naming-methodology.md +237 -0
- package/plugins/arn-spark/skills/arn-spark-naming/references/naming-report-template.md +122 -0
- package/plugins/arn-spark/skills/arn-spark-naming/references/trademark-databases.md +88 -0
- package/plugins/arn-spark/skills/arn-spark-naming/references/whois-server-map.md +164 -0
- package/plugins/arn-spark/skills/arn-spark-naming/scripts/whois-check.js +502 -0
- package/plugins/arn-spark/skills/arn-spark-naming/scripts/whois-check.py +533 -0
- package/plugins/arn-spark/skills/arn-spark-prototype-lock/SKILL.md +260 -0
- package/plugins/arn-spark/skills/arn-spark-prototype-lock/references/lock-report-template.md +68 -0
- package/plugins/arn-spark/skills/arn-spark-prototype-lock/references/pretooluse-hook-template.json +35 -0
- package/plugins/arn-spark/skills/arn-spark-prototype-lock/references/prototype-guardrail-rules.md +38 -0
- package/plugins/arn-spark/skills/arn-spark-report/SKILL.md +144 -0
- package/plugins/arn-spark/skills/arn-spark-report/references/issue-template.md +81 -0
- package/plugins/arn-spark/skills/arn-spark-report/references/spark-knowledge-base.md +293 -0
- package/plugins/arn-spark/skills/arn-spark-scaffold/SKILL.md +239 -0
- package/plugins/arn-spark/skills/arn-spark-scaffold/references/scaffold-checklist.md +79 -0
- package/plugins/arn-spark/skills/arn-spark-scaffold/references/scaffold-summary-template.md +74 -0
- package/plugins/arn-spark/skills/arn-spark-spike/SKILL.md +209 -0
- package/plugins/arn-spark/skills/arn-spark-spike/references/spike-report-template.md +123 -0
- package/plugins/arn-spark/skills/arn-spark-static-prototype/SKILL.md +362 -0
- package/plugins/arn-spark/skills/arn-spark-static-prototype/references/review-report-template.md +65 -0
- package/plugins/arn-spark/skills/arn-spark-static-prototype/references/showcase-capture-guide.md +153 -0
- package/plugins/arn-spark/skills/arn-spark-static-prototype/references/static-prototype-criteria.md +54 -0
- package/plugins/arn-spark/skills/arn-spark-static-prototype-teams/SKILL.md +518 -0
- package/plugins/arn-spark/skills/arn-spark-static-prototype-teams/references/debate-protocol.md +230 -0
- package/plugins/arn-spark/skills/arn-spark-static-prototype-teams/references/debate-review-report-template.md +148 -0
- package/plugins/arn-spark/skills/arn-spark-static-prototype-teams/references/expert-visual-review-template.md +130 -0
- package/plugins/arn-spark/skills/arn-spark-stress-competitive/SKILL.md +166 -0
- package/plugins/arn-spark/skills/arn-spark-stress-competitive/references/competitive-report-template.md +139 -0
- package/plugins/arn-spark/skills/arn-spark-stress-competitive/references/gap-analysis-framework.md +111 -0
- package/plugins/arn-spark/skills/arn-spark-stress-interview/SKILL.md +257 -0
- package/plugins/arn-spark/skills/arn-spark-stress-interview/references/interview-protocol.md +140 -0
- package/plugins/arn-spark/skills/arn-spark-stress-interview/references/interview-report-template.md +165 -0
- package/plugins/arn-spark/skills/arn-spark-stress-interview/references/persona-casting-spec.md +138 -0
- package/plugins/arn-spark/skills/arn-spark-stress-premortem/SKILL.md +181 -0
- package/plugins/arn-spark/skills/arn-spark-stress-premortem/references/premortem-protocol.md +112 -0
- package/plugins/arn-spark/skills/arn-spark-stress-premortem/references/premortem-report-template.md +158 -0
- package/plugins/arn-spark/skills/arn-spark-stress-prfaq/SKILL.md +206 -0
- package/plugins/arn-spark/skills/arn-spark-stress-prfaq/references/prfaq-report-template.md +139 -0
- package/plugins/arn-spark/skills/arn-spark-stress-prfaq/references/prfaq-workflow.md +118 -0
- package/plugins/arn-spark/skills/arn-spark-style-explore/SKILL.md +281 -0
- package/plugins/arn-spark/skills/arn-spark-style-explore/references/style-brief-template.md +198 -0
- package/plugins/arn-spark/skills/arn-spark-use-cases/SKILL.md +359 -0
- package/plugins/arn-spark/skills/arn-spark-use-cases/references/expert-review-template.md +94 -0
- package/plugins/arn-spark/skills/arn-spark-use-cases/references/review-protocol.md +150 -0
- package/plugins/arn-spark/skills/arn-spark-use-cases/references/use-case-index-template.md +108 -0
- package/plugins/arn-spark/skills/arn-spark-use-cases/references/use-case-template.md +125 -0
- package/plugins/arn-spark/skills/arn-spark-use-cases-teams/SKILL.md +306 -0
- package/plugins/arn-spark/skills/arn-spark-use-cases-teams/references/debate-protocol.md +272 -0
- package/plugins/arn-spark/skills/arn-spark-use-cases-teams/references/review-report-template.md +112 -0
- package/plugins/arn-spark/skills/arn-spark-visual-readiness/SKILL.md +293 -0
- package/plugins/arn-spark/skills/arn-spark-visual-readiness/references/readiness-checklist.md +196 -0
- package/plugins/arn-spark/skills/arn-spark-visual-sketch/SKILL.md +376 -0
- package/plugins/arn-spark/skills/arn-spark-visual-sketch/references/aesthetic-philosophy.md +210 -0
- package/plugins/arn-spark/skills/arn-spark-visual-sketch/references/sketch-gallery-guide.md +282 -0
- package/plugins/arn-spark/skills/arn-spark-visual-sketch/references/visual-direction-template.md +174 -0
- package/plugins/arn-spark/skills/arn-spark-visual-strategy/SKILL.md +447 -0
- package/plugins/arn-spark/skills/arn-spark-visual-strategy/references/baseline-capture-script-template.js +89 -0
- package/plugins/arn-spark/skills/arn-spark-visual-strategy/references/journey-schema.md +375 -0
- package/plugins/arn-spark/skills/arn-spark-visual-strategy/references/spike-checklist.md +122 -0
- package/plugins/arn-spark/skills/arn-spark-visual-strategy/references/strategy-layers-guide.md +132 -0
- package/plugins/arn-spark/skills/arn-spark-visual-strategy/references/visual-strategy-template.md +141 -0
package/plugins/arn-spark/skills/arn-spark-concept-review/references/review-report-template.md
ADDED
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
# Review Report Template
|
|
2
|
+
|
|
3
|
+
Template for the concept review report produced by the `arn-spark-concept-review` skill. This report is the audit trail documenting which stress test findings were considered, how conflicts were resolved, and what the user decided for each proposed change.
|
|
4
|
+
|
|
5
|
+
## Instructions for arn-spark-concept-review
|
|
6
|
+
|
|
7
|
+
When populating this template:
|
|
8
|
+
|
|
9
|
+
- Every section below MUST appear in the output, even if no changes were accepted
|
|
10
|
+
- Replace all bracketed placeholders with concrete content from the review process
|
|
11
|
+
- The Consolidated Changeset must include ALL recommendations from all reports, with source attribution
|
|
12
|
+
- Conflict Resolutions must include BOTH sides and the strategist's assessment for every conflict
|
|
13
|
+
- User Decisions must document every recommendation's fate: accepted, rejected (with reason), or modified (with user's modification)
|
|
14
|
+
- If the user rejected all changes, the report still documents the full changeset and rejection -- this is the audit trail
|
|
15
|
+
- Aggregated Unresolved Questions must be de-duplicated across reports with source attribution
|
|
16
|
+
- The Change Summary must accurately count accepted changes by type
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Template
|
|
21
|
+
|
|
22
|
+
```markdown
|
|
23
|
+
# Concept Review Report
|
|
24
|
+
|
|
25
|
+
**Product:** [product name]
|
|
26
|
+
**Date:** [ISO 8601 date]
|
|
27
|
+
**Stress tests included:** [list of report names included in this review, e.g., "Interview Report, Competitive Report, Pre-Mortem Report"]
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Input Reports Summary
|
|
32
|
+
|
|
33
|
+
| Report | File | Date | Recommendations | Unresolved Questions |
|
|
34
|
+
|--------|------|------|-----------------|---------------------|
|
|
35
|
+
| [Report name] | [filename] | [date from report] | [count] | [count] |
|
|
36
|
+
| [Report name] | [filename] | [date from report] | [count] | [count] |
|
|
37
|
+
| **Total** | | | **[total]** | **[total]** |
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## Consolidated Changeset
|
|
42
|
+
|
|
43
|
+
All recommendations from all stress test reports, consolidated and de-duplicated. Grouped by product concept section.
|
|
44
|
+
|
|
45
|
+
### [Product Concept Section 1]
|
|
46
|
+
|
|
47
|
+
**Change 1** (from [Source Report(s)])
|
|
48
|
+
- **Type:** [Add/Modify/Remove]
|
|
49
|
+
- **Current state:** [what the concept currently says or assumes]
|
|
50
|
+
- **Proposed change:** [specific recommended change]
|
|
51
|
+
- **Rationale:** [why this change is recommended, with source report attribution]
|
|
52
|
+
- **User decision:** [Accepted / Rejected / Modified]
|
|
53
|
+
- **User notes:** [reason for rejection, or description of modification, or empty if accepted as-is]
|
|
54
|
+
|
|
55
|
+
**Change 2** (from [Source Report(s)])
|
|
56
|
+
- **Type:** [Add/Modify/Remove]
|
|
57
|
+
- **Current state:** [current state]
|
|
58
|
+
- **Proposed change:** [recommended change]
|
|
59
|
+
- **Rationale:** [rationale]
|
|
60
|
+
- **User decision:** [Accepted / Rejected / Modified]
|
|
61
|
+
- **User notes:** [notes]
|
|
62
|
+
|
|
63
|
+
[Repeat for all changes in this section]
|
|
64
|
+
|
|
65
|
+
### [Product Concept Section 2]
|
|
66
|
+
|
|
67
|
+
[Same structure as above]
|
|
68
|
+
|
|
69
|
+
[Repeat for all affected sections]
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## Conflict Resolutions
|
|
74
|
+
|
|
75
|
+
[If no conflicts were detected, write: "No conflicts detected across stress test reports."]
|
|
76
|
+
|
|
77
|
+
### Conflict 1: [Product Concept Section] -- [Brief Description]
|
|
78
|
+
|
|
79
|
+
**Recommendation A** (from [Source Report A])
|
|
80
|
+
- **Type:** [Add/Modify/Remove]
|
|
81
|
+
- **Proposed change:** [change A]
|
|
82
|
+
- **Rationale:** [rationale A]
|
|
83
|
+
|
|
84
|
+
**Recommendation B** (from [Source Report B])
|
|
85
|
+
- **Type:** [Add/Modify/Remove]
|
|
86
|
+
- **Proposed change:** [change B]
|
|
87
|
+
- **Rationale:** [rationale B]
|
|
88
|
+
|
|
89
|
+
**Strategist's Assessment:**
|
|
90
|
+
- **Pillar alignment:** [which pillars each recommendation serves or conflicts with]
|
|
91
|
+
- **Recommendation:** [which side the strategist recommended and why]
|
|
92
|
+
- **Trade-off:** [what is gained and lost with each option]
|
|
93
|
+
|
|
94
|
+
**User's Decision:** [Which recommendation was chosen, or a custom resolution, with the user's reasoning]
|
|
95
|
+
|
|
96
|
+
[Repeat for all conflicts]
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## User Decisions Summary
|
|
101
|
+
|
|
102
|
+
### Accepted Changes
|
|
103
|
+
|
|
104
|
+
| # | Section | Type | Change Summary | Source |
|
|
105
|
+
|---|---------|------|----------------|--------|
|
|
106
|
+
| 1 | [section] | [Add/Modify/Remove] | [brief description of accepted change] | [source report(s)] |
|
|
107
|
+
| 2 | ... | ... | ... | ... |
|
|
108
|
+
|
|
109
|
+
### Rejected Changes
|
|
110
|
+
|
|
111
|
+
| # | Section | Type | Change Summary | Source | Reason for Rejection |
|
|
112
|
+
|---|---------|------|----------------|--------|---------------------|
|
|
113
|
+
| 1 | [section] | [Add/Modify/Remove] | [brief description of rejected change] | [source report(s)] | [user's reason] |
|
|
114
|
+
| 2 | ... | ... | ... | ... | ... |
|
|
115
|
+
|
|
116
|
+
### Modified Changes
|
|
117
|
+
|
|
118
|
+
| # | Section | Type | Original Recommendation | User's Modification | Source |
|
|
119
|
+
|---|---------|------|------------------------|---------------------|--------|
|
|
120
|
+
| 1 | [section] | [Add/Modify/Remove] | [original recommended change] | [what the user changed it to] | [source report(s)] |
|
|
121
|
+
| 2 | ... | ... | ... | ... | ... |
|
|
122
|
+
|
|
123
|
+
[If a table is empty (e.g., no rejections), write "None." below the table header]
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## Aggregated Unresolved Questions
|
|
128
|
+
|
|
129
|
+
Questions from stress test reports that cannot be answered without real user data, domain expertise, or further research. De-duplicated across reports.
|
|
130
|
+
|
|
131
|
+
| # | Section | Question | Source Report(s) | Options | Assessment |
|
|
132
|
+
|---|---------|----------|------------------|---------|------------|
|
|
133
|
+
| 1 | [product concept section] | [unresolved question] | [report(s) that raised this] | [possible approaches] | [preliminary assessment] |
|
|
134
|
+
| 2 | ... | ... | ... | ... | ... |
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
## UX Specialist Review
|
|
139
|
+
|
|
140
|
+
[If UX specialist was not involved, write: "UX specialist was not invoked -- no UX participation signals detected in the product concept."]
|
|
141
|
+
|
|
142
|
+
[If UX specialist was involved:]
|
|
143
|
+
|
|
144
|
+
**Trigger:** [Which signals in the product concept indicated UX specialist participation]
|
|
145
|
+
|
|
146
|
+
**Sections reviewed:** [List of product concept sections the UX specialist reviewed]
|
|
147
|
+
|
|
148
|
+
**UX Specialist Feedback:**
|
|
149
|
+
- [Section]: [feedback on proposed changes -- alignment with visual direction, interaction pattern implications, additional UX considerations]
|
|
150
|
+
- [Section]: [feedback]
|
|
151
|
+
|
|
152
|
+
**Impact on changeset:** [How the UX specialist's feedback modified or supplemented the changeset]
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
## Change Summary
|
|
157
|
+
|
|
158
|
+
| Metric | Count |
|
|
159
|
+
|--------|-------|
|
|
160
|
+
| Total recommendations across all reports | [N] |
|
|
161
|
+
| After de-duplication | [N] |
|
|
162
|
+
| Conflicts detected | [N] |
|
|
163
|
+
| Changes accepted | [N] |
|
|
164
|
+
| Changes rejected | [N] |
|
|
165
|
+
| Changes modified | [N] |
|
|
166
|
+
| Adds accepted | [N] |
|
|
167
|
+
| Modifies accepted | [N] |
|
|
168
|
+
| Removes accepted | [N] |
|
|
169
|
+
| Unresolved questions | [N] |
|
|
170
|
+
| Concept updated | [Yes / No -- "No" if user rejected all changes] |
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
---
|
|
174
|
+
|
|
175
|
+
## Section Guidance
|
|
176
|
+
|
|
177
|
+
| Section | Source | Depth |
|
|
178
|
+
|---------|--------|-------|
|
|
179
|
+
| Input Reports Summary | Extracted from report headers | One row per report with recommendation and question counts |
|
|
180
|
+
| Consolidated Changeset | All recommendations from all reports, consolidated per conflict resolution protocol | Every recommendation with full context, source attribution, and user decision |
|
|
181
|
+
| Conflict Resolutions | Detected during consolidation, assessed by product strategist | Both sides, pillar analysis, strategist recommendation, user's final decision |
|
|
182
|
+
| User Decisions Summary | Aggregated from per-change user decisions | Three tables: accepted, rejected (with reason), modified (with modification) |
|
|
183
|
+
| Aggregated Unresolved Questions | Collected from all reports, de-duplicated | One row per unique question with all source reports listed |
|
|
184
|
+
| UX Specialist Review | Conditional -- only if UX specialist was involved | Trigger signals, sections reviewed, feedback, changeset impact |
|
|
185
|
+
| Change Summary | Computed from user decisions | Counts by category and type |
|
|
@@ -0,0 +1,366 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: arn-spark-dev-setup
|
|
3
|
+
description: >-
|
|
4
|
+
This skill should be used when the user says "dev setup", "arn spark dev setup",
|
|
5
|
+
"development environment", "configure dev environment", "dev container",
|
|
6
|
+
"configure CI", "set up CI", "onboard developer", "developer setup",
|
|
7
|
+
"set up docker", "configure development", "how do I set up this project",
|
|
8
|
+
"development setup", "onboard me", "get this project running", "set up my
|
|
9
|
+
machine", "new developer setup", "how do I get started", "developer
|
|
10
|
+
onboarding", or wants to define a standardized development environment for
|
|
11
|
+
their project (producing dev environment infrastructure files and a dev-setup
|
|
12
|
+
document) or follow an existing environment standard to get onboarded as a
|
|
13
|
+
new developer.
|
|
14
|
+
version: 1.0.0
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
# Arness Dev Setup
|
|
18
|
+
|
|
19
|
+
Define or follow a standardized development environment through guided conversation, aided by the `arn-spark-dev-env-builder` agent for file generation and optionally the `arn-spark-tech-evaluator` agent for environment comparisons. This is a conversational skill that runs in normal conversation (NOT plan mode). The primary artifacts are **development environment infrastructure files** (setup scripts, container configs, CI workflows, toolchain pins) and a **dev-setup document**.
|
|
20
|
+
|
|
21
|
+
This skill covers the development environment: how developers get the project running on their machines, how CI builds and tests, and how toolchain versions are pinned for reproducibility. It does not create project source code (that is `/arn-spark-scaffold`) or validate technical risks (that is `/arn-spark-spike`).
|
|
22
|
+
|
|
23
|
+
This skill operates in two modes:
|
|
24
|
+
|
|
25
|
+
- **Define mode:** An architect or project lead defines the standard development environment. The skill asks questions, generates infrastructure files, writes a dev-setup document, and stores configuration in arness.md.
|
|
26
|
+
- **Onboard mode:** A developer joining the project follows the existing standard. The skill reads the configuration from arness.md, presents the setup steps, and guides the developer through the process.
|
|
27
|
+
|
|
28
|
+
## Prerequisites
|
|
29
|
+
|
|
30
|
+
The following artifacts inform the development environment. Check in order:
|
|
31
|
+
|
|
32
|
+
**Architecture vision (recommended):**
|
|
33
|
+
1. Read the project's `arness.md` for a `## Arness` section. If found, check the configured Vision directory for `architecture-vision.md`
|
|
34
|
+
2. If no `## Arness` section found, check `.arness/vision/architecture-vision.md` at the project root
|
|
35
|
+
|
|
36
|
+
**If an architecture vision is found:** Read it for stack decisions (framework, languages, platform targets, system dependencies).
|
|
37
|
+
|
|
38
|
+
**If no architecture vision is found:** Ask the user to describe their stack: "No architecture vision found. Describe your technology stack and target platforms so I can configure the development environment."
|
|
39
|
+
|
|
40
|
+
**Scaffolded project (recommended):**
|
|
41
|
+
Check for `package.json`, `Cargo.toml`, or similar at the project root to detect what dependencies and tooling are already configured.
|
|
42
|
+
|
|
43
|
+
**If the project is scaffolded:** Use existing manifests and configs for context.
|
|
44
|
+
|
|
45
|
+
**If the project is not scaffolded:** Warn the user: "The project does not appear to be scaffolded yet. I can define the development environment conceptually, but setup scripts will be more useful after running `/arn-spark-scaffold`." Proceed with the conversation.
|
|
46
|
+
|
|
47
|
+
## Workflow
|
|
48
|
+
|
|
49
|
+
### Step 1: Detect Mode
|
|
50
|
+
|
|
51
|
+
Read arness.md and check for a `## Arness` section with a `### Dev Environment` subsection.
|
|
52
|
+
|
|
53
|
+
**If `### Dev Environment` exists:**
|
|
54
|
+
|
|
55
|
+
"A development environment is already configured for this project:
|
|
56
|
+
|
|
57
|
+
**Type:** [type from arness.md]
|
|
58
|
+
**Platforms:** [platforms from arness.md]
|
|
59
|
+
|
|
60
|
+
Ask the user:
|
|
61
|
+
|
|
62
|
+
**"A development environment is already configured. What would you like to do?"**
|
|
63
|
+
|
|
64
|
+
Options:
|
|
65
|
+
1. **Follow the existing setup** — I will guide you through setting up your development environment
|
|
66
|
+
2. **Reconfigure** — I will walk through the environment decisions again and update the configuration"
|
|
67
|
+
|
|
68
|
+
- If the user chooses to follow → proceed to **Onboard Mode (Step O1)**
|
|
69
|
+
- If the user chooses to reconfigure → proceed to **Define Mode (Step 2)**
|
|
70
|
+
|
|
71
|
+
**If no `### Dev Environment` exists:**
|
|
72
|
+
|
|
73
|
+
Proceed to Define Mode (Step 2).
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## Define Mode
|
|
78
|
+
|
|
79
|
+
### Step 2: Load Context
|
|
80
|
+
|
|
81
|
+
Read available artifacts:
|
|
82
|
+
|
|
83
|
+
- **Architecture vision:** Framework, languages, platform targets, known risks, system-level requirements
|
|
84
|
+
- **Scaffold results:** package.json (scripts, engines, dependencies), Cargo.toml (edition, targets), build configuration files
|
|
85
|
+
- **Existing dev files:** Check for .devcontainer/, Dockerfile, docker-compose.yml, .github/workflows/, scripts/ -- note what already exists
|
|
86
|
+
|
|
87
|
+
Identify platform-specific requirements from the stack. For example:
|
|
88
|
+
- Tauri requires WebKit2GTK on Linux, WebView2 on Windows, and Xcode command-line tools on macOS
|
|
89
|
+
- Rust requires the Rust toolchain (rustup + cargo)
|
|
90
|
+
- Node.js projects need a specific Node version
|
|
91
|
+
|
|
92
|
+
### Step 3: Explore Environment Approach
|
|
93
|
+
|
|
94
|
+
Present the environment options, informed by the project context:
|
|
95
|
+
|
|
96
|
+
"Your project uses **[stack summary]**, targeting **[platforms]**. Based on your stack, I would suggest **[recommendation with brief rationale]**."
|
|
97
|
+
|
|
98
|
+
Ask the user:
|
|
99
|
+
|
|
100
|
+
**"Which development environment approach fits your project?"**
|
|
101
|
+
|
|
102
|
+
Options:
|
|
103
|
+
1. **Native** — Developers install tools directly on their OS. Best for GUI applications, hardware access, and fast iteration
|
|
104
|
+
2. **Dev container** — Reproducible containerized environment via VS Code Dev Containers. Best for web services, team consistency, and easy onboarding
|
|
105
|
+
3. **Docker / Docker Compose** — Containerized services. Best for backend services, databases, and microservices
|
|
106
|
+
4. **Hybrid** — Native for some parts (GUI, hardware), containerized for others (backend services, databases)
|
|
107
|
+
|
|
108
|
+
If the user is unsure, ask probing questions:
|
|
109
|
+
|
|
110
|
+
| Question | Guides Toward |
|
|
111
|
+
|----------|--------------|
|
|
112
|
+
| "Does the project need native windowing or hardware access?" | Native or hybrid (containers cannot easily access GUI/hardware) |
|
|
113
|
+
| "Will developers be on different OS platforms?" | Stronger need for setup scripts and CI matrix |
|
|
114
|
+
| "Are there backend services or databases to manage?" | Docker compose or hybrid |
|
|
115
|
+
| "How important is onboarding speed vs. environment control?" | Dev container (fast onboard) vs. native (more control) |
|
|
116
|
+
| "Is this a team project or solo?" | Team → stronger standardization; solo → lighter setup |
|
|
117
|
+
|
|
118
|
+
### Step 4: Gather Specifics
|
|
119
|
+
|
|
120
|
+
Based on the chosen approach, explore the details conversationally:
|
|
121
|
+
|
|
122
|
+
**For all approaches:**
|
|
123
|
+
|
|
124
|
+
Ask the user with `multiSelect: true`:
|
|
125
|
+
|
|
126
|
+
**"Which platforms should the setup support? (select multiple)"**
|
|
127
|
+
|
|
128
|
+
Options:
|
|
129
|
+
1. **Linux** — Linux development environment
|
|
130
|
+
2. **macOS** — macOS development environment
|
|
131
|
+
3. **Windows** — Windows development environment
|
|
132
|
+
|
|
133
|
+
Default to all platforms from the architecture vision.
|
|
134
|
+
|
|
135
|
+
Ask the user:
|
|
136
|
+
|
|
137
|
+
**"Do you want CI configured?"**
|
|
138
|
+
|
|
139
|
+
Options:
|
|
140
|
+
1. **GitHub Actions** — Set up GitHub Actions CI workflow
|
|
141
|
+
2. **GitLab CI** — Set up GitLab CI pipeline
|
|
142
|
+
3. **Skip for now** — No CI configuration
|
|
143
|
+
|
|
144
|
+
Also ask conversationally:
|
|
145
|
+
- "Should I pin toolchain versions? (Rust version, Node version, etc.)"
|
|
146
|
+
- "Any IDE configuration? VS Code extensions, editor settings?"
|
|
147
|
+
|
|
148
|
+
**For native environments:**
|
|
149
|
+
- "How automated should the setup be? Full automation (scripts install everything) or documented manual steps?"
|
|
150
|
+
- "Any specific package manager preferences per platform? (Homebrew on macOS, apt vs. snap on Linux, winget vs. chocolatey on Windows)"
|
|
151
|
+
|
|
152
|
+
**For dev containers:**
|
|
153
|
+
- "Which base image? (Language-specific like mcr.microsoft.com/devcontainers/rust or generic like ubuntu?)"
|
|
154
|
+
- "Any additional container features needed? (Docker-in-Docker, GPU access, specific system libs)"
|
|
155
|
+
- "Port forwarding for dev server?"
|
|
156
|
+
- "Post-create commands to run after the container starts?"
|
|
157
|
+
|
|
158
|
+
**For Docker / Docker Compose:**
|
|
159
|
+
- "Which services need containers? (database, cache, message queue, the app itself?)"
|
|
160
|
+
- "Volume mounts for live reload during development?"
|
|
161
|
+
- "Network configuration between services?"
|
|
162
|
+
- "Separate development and production Dockerfiles?"
|
|
163
|
+
|
|
164
|
+
**For hybrid:**
|
|
165
|
+
- "Which parts run natively? Which are containerized?"
|
|
166
|
+
- "How do the native and containerized parts communicate? (localhost ports, shared volumes, environment variables)"
|
|
167
|
+
|
|
168
|
+
Confirm the full specification before proceeding:
|
|
169
|
+
|
|
170
|
+
"Here is the development environment I will set up:
|
|
171
|
+
|
|
172
|
+
**Type:** [type]
|
|
173
|
+
**Platforms:** [list]
|
|
174
|
+
**CI:** [provider or none]
|
|
175
|
+
**Toolchain pins:** [list]
|
|
176
|
+
**Generated files:** [list of what will be created]
|
|
177
|
+
|
|
178
|
+
Ready to generate, or want to adjust anything?"
|
|
179
|
+
|
|
180
|
+
### Step 5: Invoke Builder
|
|
181
|
+
|
|
182
|
+
Invoke the `arn-spark-dev-env-builder` agent via the Task tool, passing the model from `.arness/agent-models/spark.md` as the `model` parameter (see `plugins/arn-spark/skills/arn-spark-ensure-config/references/ensure-config.md` "Dispatch convention" for fallback). Context:
|
|
183
|
+
|
|
184
|
+
- Environment type and all specifics gathered in Step 4
|
|
185
|
+
- Platform targets
|
|
186
|
+
- Stack context (from architecture vision and scaffold)
|
|
187
|
+
- Project root path
|
|
188
|
+
- CI provider and configuration
|
|
189
|
+
- Toolchain versions to pin
|
|
190
|
+
- IDE preferences
|
|
191
|
+
|
|
192
|
+
The agent creates all infrastructure files, setup scripts, CI workflows, toolchain pins, and CONTRIBUTING.md.
|
|
193
|
+
|
|
194
|
+
### Step 6: Write Dev Setup Document
|
|
195
|
+
|
|
196
|
+
1. Read the template:
|
|
197
|
+
> Read `${CLAUDE_PLUGIN_ROOT}/skills/arn-spark-dev-setup/references/dev-setup-template.md`
|
|
198
|
+
|
|
199
|
+
2. Populate the template with all decisions from the conversation and the builder's report:
|
|
200
|
+
- Environment type and rationale
|
|
201
|
+
- Prerequisites per platform with specific packages
|
|
202
|
+
- Setup instructions (referencing the generated scripts)
|
|
203
|
+
- Toolchain versions and pin files
|
|
204
|
+
- CI/CD pipeline summary
|
|
205
|
+
- IDE configuration
|
|
206
|
+
- Troubleshooting (from any issues observed during verification)
|
|
207
|
+
|
|
208
|
+
3. Determine the output directory:
|
|
209
|
+
- Read the project's `arness.md` and check for a `## Arness` section
|
|
210
|
+
- If found, extract the configured Vision directory path — this is the source of truth
|
|
211
|
+
- If no `## Arness` section exists or Arness Spark fields are missing, inform the user: "Arness Spark is not configured for this project yet. Run `/arn-brainstorming` to get started — it will set everything up automatically." Do not proceed without it.
|
|
212
|
+
- If the output directory does not exist, create it
|
|
213
|
+
|
|
214
|
+
4. Write the document as `dev-setup.md`
|
|
215
|
+
|
|
216
|
+
### Step 7: Write Config to arness.md
|
|
217
|
+
|
|
218
|
+
Write or update the `### Dev Environment` subsection in the `## Arness` section of arness.md:
|
|
219
|
+
|
|
220
|
+
**If no `## Arness` section exists:**
|
|
221
|
+
|
|
222
|
+
Create a minimal `## Arness` section with the dev environment configuration:
|
|
223
|
+
|
|
224
|
+
```markdown
|
|
225
|
+
## Arness
|
|
226
|
+
|
|
227
|
+
### Dev Environment
|
|
228
|
+
- **Type:** [native / dev-container / docker / docker-compose / hybrid]
|
|
229
|
+
- **Platforms:** [linux, macos, windows]
|
|
230
|
+
- **CI provider:** [github-actions / gitlab-ci / none]
|
|
231
|
+
- **Setup doc:** [path to dev-setup.md]
|
|
232
|
+
- **Setup script:** [path to setup script, if applicable]
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
**If `## Arness` section exists but no `### Dev Environment`:**
|
|
236
|
+
|
|
237
|
+
Append the `### Dev Environment` subsection to the existing `## Arness` section.
|
|
238
|
+
|
|
239
|
+
**If `### Dev Environment` already exists:**
|
|
240
|
+
|
|
241
|
+
Replace it with the updated configuration.
|
|
242
|
+
|
|
243
|
+
### Step 8: Verify and Present Results
|
|
244
|
+
|
|
245
|
+
Read the verification checklist:
|
|
246
|
+
> Read `${CLAUDE_PLUGIN_ROOT}/skills/arn-spark-dev-setup/references/dev-setup-checklist.md`
|
|
247
|
+
|
|
248
|
+
Walk through the applicable checklist categories. Then present results:
|
|
249
|
+
|
|
250
|
+
"Development environment configured. Here is what was set up:
|
|
251
|
+
|
|
252
|
+
**Environment:** [type] for [platforms]
|
|
253
|
+
|
|
254
|
+
**Files created:**
|
|
255
|
+
- [list grouped by category: scripts, CI, containers, toolchain, docs]
|
|
256
|
+
|
|
257
|
+
**arness.md updated** with dev environment configuration.
|
|
258
|
+
|
|
259
|
+
**Verification:**
|
|
260
|
+
- Setup script: [pass/fail/skipped]
|
|
261
|
+
- Build in environment: [pass/fail]
|
|
262
|
+
- CI config: [valid/skipped]
|
|
263
|
+
|
|
264
|
+
Recommended next steps:
|
|
265
|
+
1. **Validate critical risks:** Run `/arn-spark-spike` to test technical risks from your architecture vision
|
|
266
|
+
2. **Explore visual style:** Run `/arn-spark-style-explore` to define the look and feel
|
|
267
|
+
3. **Share with team:** Commit the generated files so other developers can run `/arn-spark-dev-setup` to onboard"
|
|
268
|
+
|
|
269
|
+
---
|
|
270
|
+
|
|
271
|
+
## Onboard Mode
|
|
272
|
+
|
|
273
|
+
After Step 1 detects existing configuration and the user chooses to follow it:
|
|
274
|
+
|
|
275
|
+
### Step O1: Read Configuration
|
|
276
|
+
|
|
277
|
+
1. Read the `### Dev Environment` subsection from arness.md for the environment type and key paths
|
|
278
|
+
2. Read the full `dev-setup.md` document for detailed setup instructions
|
|
279
|
+
3. Check which generated files exist (setup scripts, container configs, CI workflows)
|
|
280
|
+
|
|
281
|
+
### Step O2: Present Standard Environment
|
|
282
|
+
|
|
283
|
+
"This project uses a **[type]** development environment targeting **[platforms]**.
|
|
284
|
+
|
|
285
|
+
**What you need:**
|
|
286
|
+
[Prerequisites from dev-setup.md, filtered for the current platform]
|
|
287
|
+
|
|
288
|
+
**Setup steps:**
|
|
289
|
+
1. [Step 1 from dev-setup.md]
|
|
290
|
+
2. [Step 2]
|
|
291
|
+
3. [Step 3]
|
|
292
|
+
|
|
293
|
+
Ready to proceed with setup?"
|
|
294
|
+
|
|
295
|
+
### Step O3: Guide Setup
|
|
296
|
+
|
|
297
|
+
Walk the developer through each setup step from dev-setup.md:
|
|
298
|
+
|
|
299
|
+
1. Present each step clearly with the exact commands to run
|
|
300
|
+
2. If a setup script exists, offer to run it: "A setup script is available at `[path]`. Shall I run it for you?"
|
|
301
|
+
3. If the developer runs steps manually, verify each succeeded before moving to the next
|
|
302
|
+
4. If a step fails, consult the troubleshooting section of dev-setup.md
|
|
303
|
+
|
|
304
|
+
**If the developer wants to deviate:**
|
|
305
|
+
|
|
306
|
+
"That differs from the project's standard development environment (**[type]**). The standard is used by CI and other developers.
|
|
307
|
+
|
|
308
|
+
You can proceed with your preference, but be aware:
|
|
309
|
+
- CI builds use the standard environment, so you may see failures locally that do not appear in CI (or vice versa)
|
|
310
|
+
- Other developers expect the standard setup when pairing or reviewing
|
|
311
|
+
|
|
312
|
+
Continue with your preference, or follow the standard?"
|
|
313
|
+
|
|
314
|
+
Record the deviation but do not block the developer.
|
|
315
|
+
|
|
316
|
+
### Step O4: Verify and Complete
|
|
317
|
+
|
|
318
|
+
Read the verification checklist:
|
|
319
|
+
> Read `${CLAUDE_PLUGIN_ROOT}/skills/arn-spark-dev-setup/references/dev-setup-checklist.md`
|
|
320
|
+
|
|
321
|
+
Focus on Build Verification (category 4):
|
|
322
|
+
- Project builds successfully
|
|
323
|
+
- Development server starts
|
|
324
|
+
- Tests run
|
|
325
|
+
- Linter passes
|
|
326
|
+
|
|
327
|
+
"Environment setup complete. Your project builds and runs.
|
|
328
|
+
|
|
329
|
+
**Verification:**
|
|
330
|
+
- Build: [pass/fail]
|
|
331
|
+
- Dev server: [pass/fail]
|
|
332
|
+
- Tests: [pass/fail]
|
|
333
|
+
|
|
334
|
+
You are ready to start developing. If you encounter issues, check the troubleshooting section in `[path to dev-setup.md]`."
|
|
335
|
+
|
|
336
|
+
## Agent Invocation Guide
|
|
337
|
+
|
|
338
|
+
| Situation | Action |
|
|
339
|
+
|-----------|--------|
|
|
340
|
+
| Generate environment files (Define Step 5) | Invoke `arn-spark-dev-env-builder` with full specification |
|
|
341
|
+
| Run setup script during onboard (Step O3) | Offer to run the setup script directly; invoke `arn-spark-dev-env-builder` only if the script fails and needs diagnosis |
|
|
342
|
+
| User asks about container image options | Discuss options, invoke `arn-spark-tech-evaluator` for comparison if needed |
|
|
343
|
+
| User asks about CI provider differences | Discuss briefly, invoke `arn-spark-tech-evaluator` for deep comparison if needed |
|
|
344
|
+
| User asks about technology choices (framework, languages) | Defer: "Technology choices are in the architecture vision. This skill configures the development environment for the chosen stack." |
|
|
345
|
+
| User asks about project structure or dependencies | Defer: "Project structure is set up by `/arn-spark-scaffold`. This skill configures the environment around the existing project." |
|
|
346
|
+
| User asks about code patterns or features | Defer: "Code patterns come during feature development. The dev environment just needs to support building and testing." |
|
|
347
|
+
| Setup script fails during onboard | Consult troubleshooting, invoke builder to diagnose if needed |
|
|
348
|
+
|
|
349
|
+
## Error Handling
|
|
350
|
+
|
|
351
|
+
- **No architecture vision found:** Proceed with the user's description of the stack. Dev environment can be configured from a verbal stack description.
|
|
352
|
+
- **Project not scaffolded:** Warn that auto-detection of dependencies will be limited. Proceed with manual specification. Setup scripts can be updated after scaffolding.
|
|
353
|
+
- **Dev setup already configured (Define mode):**
|
|
354
|
+
|
|
355
|
+
Ask the user:
|
|
356
|
+
|
|
357
|
+
> **A development environment is already configured at `[path]`. How would you like to proceed?**
|
|
358
|
+
> 1. **Replace** — Reconfigure the entire development environment
|
|
359
|
+
> 2. **Update** — Update specific parts (CI, scripts, container config)
|
|
360
|
+
- **Setup script fails:** Report the error. Invoke the builder to fix. If it fails after 3 attempts, present the error and the manual steps the developer can follow.
|
|
361
|
+
- **Container build fails:** Report the error. Invoke the builder to diagnose. Common issues: missing system dependencies, wrong base image, network problems during build.
|
|
362
|
+
- **CI workflow invalid:** Report the YAML error. Invoke the builder to fix the syntax.
|
|
363
|
+
- **User cancels mid-setup:** Note what was completed. The user can re-run `/arn-spark-dev-setup` to continue. In Define mode, any files already generated are usable.
|
|
364
|
+
- **Writing arness.md fails:** Print the configuration block in the conversation so the user can add it manually.
|
|
365
|
+
- **Platform not available for testing:** Note the platform as untested. The setup script and CI will validate on that platform when it becomes available.
|
|
366
|
+
- **dev-setup.md not found (Onboard mode):** Check for CONTRIBUTING.md or README with setup instructions as fallback. If nothing found, inform the developer: "The setup document is missing. Ask the project maintainer to run `/arn-spark-dev-setup` in Define mode, or describe the setup and I will guide you."
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# Dev Setup Checklist
|
|
2
|
+
|
|
3
|
+
This checklist defines what a properly configured development environment should have. The `arn-spark-dev-setup` skill uses it to verify completeness after the `arn-spark-dev-env-builder` agent finishes (Define mode) or after a developer completes onboarding (Onboard mode). Items are environment-type-agnostic -- skip categories that do not apply.
|
|
4
|
+
|
|
5
|
+
## Verification Categories
|
|
6
|
+
|
|
7
|
+
### 1. Environment Configuration
|
|
8
|
+
|
|
9
|
+
- [ ] Environment type is defined (native, dev-container, docker, docker-compose, hybrid)
|
|
10
|
+
- [ ] Target platforms are documented (linux, macos, windows)
|
|
11
|
+
- [ ] arness.md has a `### Dev Environment` subsection in the `## Arness` section
|
|
12
|
+
- [ ] `dev-setup.md` document exists with complete setup instructions
|
|
13
|
+
|
|
14
|
+
### 2. Prerequisites Documentation
|
|
15
|
+
|
|
16
|
+
- [ ] Prerequisites are listed per platform with specific package names and versions
|
|
17
|
+
- [ ] Prerequisites distinguish between system packages and toolchain tools
|
|
18
|
+
- [ ] Installation commands are provided (not just package names)
|
|
19
|
+
|
|
20
|
+
### 3. Setup Scripts
|
|
21
|
+
|
|
22
|
+
- [ ] Setup script exists for the current platform (`scripts/setup.sh` or `scripts/setup.ps1`)
|
|
23
|
+
- [ ] Setup script is executable (has appropriate permissions)
|
|
24
|
+
- [ ] Setup script runs without errors on the current platform
|
|
25
|
+
- [ ] Setup script is idempotent (running it twice does not cause errors)
|
|
26
|
+
- [ ] Setup script reports what it installed and any manual steps needed
|
|
27
|
+
|
|
28
|
+
### 4. Build Verification
|
|
29
|
+
|
|
30
|
+
- [ ] Project builds successfully after environment setup
|
|
31
|
+
- [ ] Development server starts without errors (if applicable)
|
|
32
|
+
- [ ] Test suite runs (even if no tests exist yet)
|
|
33
|
+
- [ ] Linter runs without errors
|
|
34
|
+
|
|
35
|
+
### 5. Toolchain Pins (if applicable)
|
|
36
|
+
|
|
37
|
+
- [ ] Rust version pinned in `rust-toolchain.toml` (if using Rust)
|
|
38
|
+
- [ ] Node.js version pinned in `.nvmrc` or `.tool-versions` (if using Node)
|
|
39
|
+
- [ ] Pinned versions match what the setup script installs
|
|
40
|
+
- [ ] `package.json` engines field set (if using Node)
|
|
41
|
+
|
|
42
|
+
### 6. Container Configuration (if applicable)
|
|
43
|
+
|
|
44
|
+
- [ ] Dev container configuration exists (`.devcontainer/devcontainer.json`) if environment type is dev-container
|
|
45
|
+
- [ ] Dockerfile exists and builds without errors if environment type includes docker
|
|
46
|
+
- [ ] Docker Compose configuration is valid (`docker compose config` passes) if environment type is docker-compose
|
|
47
|
+
- [ ] Container includes all required system dependencies for the stack
|
|
48
|
+
- [ ] Container port forwarding is configured for dev server access
|
|
49
|
+
|
|
50
|
+
### 7. CI/CD Configuration (if applicable)
|
|
51
|
+
|
|
52
|
+
- [ ] CI workflow file exists (`.github/workflows/ci.yml` or `.gitlab-ci.yml`)
|
|
53
|
+
- [ ] CI workflow YAML is valid
|
|
54
|
+
- [ ] Platform matrix matches the target platforms
|
|
55
|
+
- [ ] CI installs the same system dependencies as the setup scripts
|
|
56
|
+
- [ ] CI runs build, lint, and test steps
|
|
57
|
+
|
|
58
|
+
### 8. Onboarding Documentation
|
|
59
|
+
|
|
60
|
+
- [ ] CONTRIBUTING.md exists with development setup section
|
|
61
|
+
- [ ] Setup instructions are copy-pasteable (commands, not prose)
|
|
62
|
+
- [ ] Quick start path exists (clone to running in 3-5 commands)
|
|
63
|
+
- [ ] Troubleshooting section addresses observed issues
|
|
64
|
+
|
|
65
|
+
## How to Use This Checklist
|
|
66
|
+
|
|
67
|
+
### In Define Mode
|
|
68
|
+
|
|
69
|
+
After the `arn-spark-dev-env-builder` agent reports completion:
|
|
70
|
+
|
|
71
|
+
1. Walk through each applicable category based on the environment type chosen
|
|
72
|
+
2. Skip categories that do not apply (e.g., skip "Container Configuration" for a native-only setup)
|
|
73
|
+
3. For each failed check, note it as an issue in the results summary
|
|
74
|
+
4. Critical failures (setup script errors, build broken) should be addressed before proceeding
|
|
75
|
+
5. Non-critical gaps (missing troubleshooting entry, no IDE config) can be noted for the user to address later
|
|
76
|
+
|
|
77
|
+
### In Onboard Mode
|
|
78
|
+
|
|
79
|
+
After the developer completes the setup steps:
|
|
80
|
+
|
|
81
|
+
1. Focus on categories 3 (Setup Scripts) and 4 (Build Verification)
|
|
82
|
+
2. Verify the project builds and runs in the developer's actual environment
|
|
83
|
+
3. Note any issues encountered for potential addition to the troubleshooting section
|
|
84
|
+
4. If the developer deviated from the standard, ensure their setup still passes Build Verification
|