bros-harness 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.
Files changed (187) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/LICENSE +21 -0
  3. package/README.md +183 -0
  4. package/SECURITY.md +16 -0
  5. package/assets/agents.manifest.json +55 -0
  6. package/assets/commands.manifest.json +35 -0
  7. package/assets/docs.manifest.json +20 -0
  8. package/assets/import-report.md +25 -0
  9. package/assets/manifest.json +799 -0
  10. package/assets/opencode/agents/README.md +3 -0
  11. package/assets/opencode/agents/bro-build.md +256 -0
  12. package/assets/opencode/agents/bro-design.md +77 -0
  13. package/assets/opencode/agents/bro-docs.md +72 -0
  14. package/assets/opencode/agents/bro-explore.md +143 -0
  15. package/assets/opencode/agents/bro-ops.md +195 -0
  16. package/assets/opencode/agents/bro-shield.md +77 -0
  17. package/assets/opencode/agents/bro-test.md +204 -0
  18. package/assets/opencode/agents/bro-ui.md +135 -0
  19. package/assets/opencode/agents/mighty-bro.md +252 -0
  20. package/assets/opencode/commands/README.md +3 -0
  21. package/assets/opencode/commands/bros-assemble.md +32 -0
  22. package/assets/opencode/commands/bros-build.md +58 -0
  23. package/assets/opencode/commands/bros-plan.md +83 -0
  24. package/assets/opencode/commands/bros-review.md +38 -0
  25. package/assets/opencode/commands/bros-status.md +26 -0
  26. package/assets/opencode/docs/README.md +3 -0
  27. package/assets/opencode/docs/bros-builtin-skills.md +63 -0
  28. package/assets/opencode/docs/bros-harness.md +194 -0
  29. package/assets/opencode/skills/README.md +3 -0
  30. package/assets/opencode/skills/agent-architecture-audit/SKILL.md +256 -0
  31. package/assets/opencode/skills/agent-harness-construction/.openskills.json +7 -0
  32. package/assets/opencode/skills/agent-harness-construction/SKILL.md +73 -0
  33. package/assets/opencode/skills/agent-introspection-debugging/.openskills.json +7 -0
  34. package/assets/opencode/skills/agent-introspection-debugging/SKILL.md +153 -0
  35. package/assets/opencode/skills/api-design/.openskills.json +7 -0
  36. package/assets/opencode/skills/api-design/agents/openai.yaml +7 -0
  37. package/assets/opencode/skills/architecture-decision-records/.openskills.json +7 -0
  38. package/assets/opencode/skills/architecture-decision-records/SKILL.md +179 -0
  39. package/assets/opencode/skills/article-writing/.openskills.json +7 -0
  40. package/assets/opencode/skills/article-writing/SKILL.md +79 -0
  41. package/assets/opencode/skills/article-writing/agents/openai.yaml +7 -0
  42. package/assets/opencode/skills/automation-audit-ops/.openskills.json +7 -0
  43. package/assets/opencode/skills/automation-audit-ops/SKILL.md +142 -0
  44. package/assets/opencode/skills/backend-patterns/.openskills.json +7 -0
  45. package/assets/opencode/skills/backend-patterns/SKILL.md +561 -0
  46. package/assets/opencode/skills/backend-patterns/agents/openai.yaml +7 -0
  47. package/assets/opencode/skills/benchmark/.openskills.json +7 -0
  48. package/assets/opencode/skills/benchmark/SKILL.md +93 -0
  49. package/assets/opencode/skills/bros-orchestrate/SKILL.md +455 -0
  50. package/assets/opencode/skills/browser-qa/.openskills.json +7 -0
  51. package/assets/opencode/skills/browser-qa/SKILL.md +87 -0
  52. package/assets/opencode/skills/canary-watch/.openskills.json +7 -0
  53. package/assets/opencode/skills/canary-watch/SKILL.md +107 -0
  54. package/assets/opencode/skills/code-review-expert/SKILL.md +155 -0
  55. package/assets/opencode/skills/code-review-expert/agents/agent.yaml +7 -0
  56. package/assets/opencode/skills/code-review-expert/references/code-quality-checklist.md +130 -0
  57. package/assets/opencode/skills/code-review-expert/references/removal-plan.md +52 -0
  58. package/assets/opencode/skills/code-review-expert/references/security-checklist.md +118 -0
  59. package/assets/opencode/skills/code-review-expert/references/solid-checklist.md +65 -0
  60. package/assets/opencode/skills/code-tour/.openskills.json +7 -0
  61. package/assets/opencode/skills/code-tour/SKILL.md +236 -0
  62. package/assets/opencode/skills/coding-standards/.openskills.json +7 -0
  63. package/assets/opencode/skills/coding-standards/SKILL.md +549 -0
  64. package/assets/opencode/skills/coding-standards/agents/openai.yaml +7 -0
  65. package/assets/opencode/skills/context-budget/.openskills.json +7 -0
  66. package/assets/opencode/skills/context-budget/SKILL.md +135 -0
  67. package/assets/opencode/skills/database-migrations/.openskills.json +7 -0
  68. package/assets/opencode/skills/database-migrations/SKILL.md +429 -0
  69. package/assets/opencode/skills/deployment-patterns/.openskills.json +7 -0
  70. package/assets/opencode/skills/deployment-patterns/SKILL.md +427 -0
  71. package/assets/opencode/skills/design-system/.openskills.json +7 -0
  72. package/assets/opencode/skills/design-system/SKILL.md +82 -0
  73. package/assets/opencode/skills/docker-patterns/.openskills.json +7 -0
  74. package/assets/opencode/skills/docker-patterns/SKILL.md +364 -0
  75. package/assets/opencode/skills/documentation-lookup/.openskills.json +7 -0
  76. package/assets/opencode/skills/documentation-lookup/SKILL.md +90 -0
  77. package/assets/opencode/skills/documentation-lookup/agents/openai.yaml +7 -0
  78. package/assets/opencode/skills/e2e-testing/.openskills.json +7 -0
  79. package/assets/opencode/skills/e2e-testing/SKILL.md +326 -0
  80. package/assets/opencode/skills/e2e-testing/agents/openai.yaml +7 -0
  81. package/assets/opencode/skills/error-handling/SKILL.md +376 -0
  82. package/assets/opencode/skills/frontend-design/.openskills.json +7 -0
  83. package/assets/opencode/skills/frontend-design/SKILL.md +145 -0
  84. package/assets/opencode/skills/frontend-design-direction/SKILL.md +92 -0
  85. package/assets/opencode/skills/frontend-patterns/.openskills.json +7 -0
  86. package/assets/opencode/skills/frontend-patterns/SKILL.md +642 -0
  87. package/assets/opencode/skills/frontend-patterns/agents/openai.yaml +7 -0
  88. package/assets/opencode/skills/gateguard/.openskills.json +7 -0
  89. package/assets/opencode/skills/gateguard/SKILL.md +125 -0
  90. package/assets/opencode/skills/git-master/SKILL.md +60 -0
  91. package/assets/opencode/skills/golang-patterns/.openskills.json +7 -0
  92. package/assets/opencode/skills/golang-patterns/SKILL.md +674 -0
  93. package/assets/opencode/skills/golang-testing/.openskills.json +7 -0
  94. package/assets/opencode/skills/golang-testing/SKILL.md +720 -0
  95. package/assets/opencode/skills/grafana-dashboard-design/SKILL.md +65 -0
  96. package/assets/opencode/skills/hexagonal-architecture/.openskills.json +7 -0
  97. package/assets/opencode/skills/hexagonal-architecture/SKILL.md +276 -0
  98. package/assets/opencode/skills/java-coding-standards/.openskills.json +7 -0
  99. package/assets/opencode/skills/java-coding-standards/SKILL.md +383 -0
  100. package/assets/opencode/skills/jpa-patterns/.openskills.json +7 -0
  101. package/assets/opencode/skills/jpa-patterns/SKILL.md +151 -0
  102. package/assets/opencode/skills/knowledge-ops/.openskills.json +7 -0
  103. package/assets/opencode/skills/knowledge-ops/SKILL.md +154 -0
  104. package/assets/opencode/skills/make-interfaces-feel-better/SKILL.md +151 -0
  105. package/assets/opencode/skills/mysql-patterns/SKILL.md +412 -0
  106. package/assets/opencode/skills/nestjs-patterns/.openskills.json +7 -0
  107. package/assets/opencode/skills/nestjs-patterns/SKILL.md +230 -0
  108. package/assets/opencode/skills/nextjs-turbopack/.openskills.json +7 -0
  109. package/assets/opencode/skills/nextjs-turbopack/SKILL.md +57 -0
  110. package/assets/opencode/skills/nextjs-turbopack/agents/openai.yaml +7 -0
  111. package/assets/opencode/skills/parallel-execution-optimizer/SKILL.md +72 -0
  112. package/assets/opencode/skills/postgres-patterns/.openskills.json +7 -0
  113. package/assets/opencode/skills/postgres-patterns/SKILL.md +147 -0
  114. package/assets/opencode/skills/prisma-patterns/SKILL.md +371 -0
  115. package/assets/opencode/skills/product-capability/.openskills.json +7 -0
  116. package/assets/opencode/skills/product-capability/SKILL.md +141 -0
  117. package/assets/opencode/skills/product-lens/.openskills.json +7 -0
  118. package/assets/opencode/skills/product-lens/SKILL.md +92 -0
  119. package/assets/opencode/skills/production-audit/SKILL.md +206 -0
  120. package/assets/opencode/skills/python-patterns/.openskills.json +7 -0
  121. package/assets/opencode/skills/python-patterns/SKILL.md +750 -0
  122. package/assets/opencode/skills/python-testing/.openskills.json +7 -0
  123. package/assets/opencode/skills/python-testing/SKILL.md +816 -0
  124. package/assets/opencode/skills/redis-patterns/SKILL.md +403 -0
  125. package/assets/opencode/skills/requirements-clarity/README.md +260 -0
  126. package/assets/opencode/skills/requirements-clarity/SKILL.md +324 -0
  127. package/assets/opencode/skills/rust-patterns/.openskills.json +7 -0
  128. package/assets/opencode/skills/rust-patterns/SKILL.md +499 -0
  129. package/assets/opencode/skills/rust-testing/.openskills.json +7 -0
  130. package/assets/opencode/skills/rust-testing/SKILL.md +500 -0
  131. package/assets/opencode/skills/safety-guard/.openskills.json +7 -0
  132. package/assets/opencode/skills/safety-guard/SKILL.md +75 -0
  133. package/assets/opencode/skills/search-first/.openskills.json +7 -0
  134. package/assets/opencode/skills/search-first/SKILL.md +181 -0
  135. package/assets/opencode/skills/security-review/.openskills.json +7 -0
  136. package/assets/opencode/skills/security-review/agents/openai.yaml +7 -0
  137. package/assets/opencode/skills/security-review/cloud-infrastructure-security.md +361 -0
  138. package/assets/opencode/skills/security-scan/.openskills.json +7 -0
  139. package/assets/opencode/skills/security-scan/SKILL.md +165 -0
  140. package/assets/opencode/skills/springboot-patterns/.openskills.json +7 -0
  141. package/assets/opencode/skills/springboot-patterns/SKILL.md +314 -0
  142. package/assets/opencode/skills/springboot-tdd/.openskills.json +7 -0
  143. package/assets/opencode/skills/springboot-tdd/SKILL.md +158 -0
  144. package/assets/opencode/skills/springboot-verification/.openskills.json +7 -0
  145. package/assets/opencode/skills/springboot-verification/SKILL.md +231 -0
  146. package/assets/opencode/skills/strategic-compact/.openskills.json +7 -0
  147. package/assets/opencode/skills/strategic-compact/SKILL.md +131 -0
  148. package/assets/opencode/skills/strategic-compact/agents/openai.yaml +7 -0
  149. package/assets/opencode/skills/strategic-compact/suggest-compact.sh +54 -0
  150. package/assets/opencode/skills/tdd-workflow/.openskills.json +7 -0
  151. package/assets/opencode/skills/tdd-workflow/SKILL.md +463 -0
  152. package/assets/opencode/skills/tdd-workflow/agents/openai.yaml +7 -0
  153. package/assets/opencode/skills/verification-loop/.openskills.json +7 -0
  154. package/assets/opencode/skills/verification-loop/SKILL.md +126 -0
  155. package/assets/opencode/skills/verification-loop/agents/openai.yaml +7 -0
  156. package/assets/opencode/skills/vite-patterns/SKILL.md +449 -0
  157. package/assets/opencode/skills/web-doc-search/SKILL.md +51 -0
  158. package/assets/opencode/templates/README.md +3 -0
  159. package/assets/opencode/templates/bros/adr.md +39 -0
  160. package/assets/opencode/templates/bros/delivery-report.md +71 -0
  161. package/assets/opencode/templates/bros/explorer-evidence-packet.md +51 -0
  162. package/assets/opencode/templates/bros/prd.md +72 -0
  163. package/assets/opencode/templates/bros/security-review.md +48 -0
  164. package/assets/opencode/templates/bros/status-board.md +33 -0
  165. package/assets/opencode/templates/bros/task-packet.md +94 -0
  166. package/assets/opencode/templates/bros/test-strategy.md +57 -0
  167. package/assets/opencode/templates/bros/ui-implementation-packet.md +64 -0
  168. package/assets/skills.manifest.json +650 -0
  169. package/assets/templates.manifest.json +55 -0
  170. package/bin/bros.mjs +122 -0
  171. package/docs/compatibility.md +9 -0
  172. package/docs/installation.md +66 -0
  173. package/docs/integrations/claude.md +5 -0
  174. package/docs/integrations/codex.md +5 -0
  175. package/docs/integrations/opencode.md +39 -0
  176. package/docs/migration/from-local-opencode-config.md +10 -0
  177. package/docs/release-process.md +11 -0
  178. package/docs/repository-structure.md +15 -0
  179. package/docs/roadmap.md +20 -0
  180. package/docs/security.md +18 -0
  181. package/docs/testing.md +9 -0
  182. package/examples/opencode/README.md +11 -0
  183. package/examples/opencode/opencode.example.jsonc +4 -0
  184. package/package.json +43 -0
  185. package/scripts/validate-assets.mjs +22 -0
  186. package/scripts/verify-no-secrets.mjs +38 -0
  187. package/src/plugin.mjs +98 -0
@@ -0,0 +1,236 @@
1
+ ---
2
+ name: code-tour
3
+ description: Create CodeTour `.tour` files — persona-targeted, step-by-step walkthroughs with real file and line anchors. Use for onboarding tours, architecture walkthroughs, PR tours, RCA tours, and structured "explain how this works" requests.
4
+ origin: ECC
5
+ ---
6
+
7
+ # Code Tour
8
+
9
+ Create **CodeTour** `.tour` files for codebase walkthroughs that open directly to real files and line ranges. Tours live in `.tours/` and are meant for the CodeTour format, not ad hoc Markdown notes.
10
+
11
+ A good tour is a narrative for a specific reader:
12
+ - what they are looking at
13
+ - why it matters
14
+ - what path they should follow next
15
+
16
+ Only create `.tour` JSON files. Do not modify source code as part of this skill.
17
+
18
+ ## When to Use
19
+
20
+ Use this skill when:
21
+ - the user asks for a code tour, onboarding tour, architecture walkthrough, or PR tour
22
+ - the user says "explain how X works" and wants a reusable guided artifact
23
+ - the user wants a ramp-up path for a new engineer or reviewer
24
+ - the task is better served by a guided sequence than a flat summary
25
+
26
+ Examples:
27
+ - onboarding a new maintainer
28
+ - architecture tour for one service or package
29
+ - PR-review walk-through anchored to changed files
30
+ - RCA tour showing the failure path
31
+ - security review tour of trust boundaries and key checks
32
+
33
+ ## When NOT to Use
34
+
35
+ | Instead of code-tour | Use |
36
+ | --- | --- |
37
+ | A one-off explanation in chat is enough | answer directly |
38
+ | The user wants prose docs, not a `.tour` artifact | `documentation-lookup` or repo docs editing |
39
+ | The task is implementation or refactoring | do the implementation work |
40
+ | The task is broad codebase onboarding without a tour artifact | `codebase-onboarding` |
41
+
42
+ ## Workflow
43
+
44
+ ### 1. Discover
45
+
46
+ Explore the repo before writing anything:
47
+ - README and package/app entry points
48
+ - folder structure
49
+ - relevant config files
50
+ - the changed files if the tour is PR-focused
51
+
52
+ Do not start writing steps before you understand the shape of the code.
53
+
54
+ ### 2. Infer the reader
55
+
56
+ Decide the persona and depth from the request.
57
+
58
+ | Request shape | Persona | Suggested depth |
59
+ | --- | --- | --- |
60
+ | "onboarding", "new joiner" | `new-joiner` | 9-13 steps |
61
+ | "quick tour", "vibe check" | `vibecoder` | 5-8 steps |
62
+ | "architecture" | `architect` | 14-18 steps |
63
+ | "tour this PR" | `pr-reviewer` | 7-11 steps |
64
+ | "why did this break" | `rca-investigator` | 7-11 steps |
65
+ | "security review" | `security-reviewer` | 7-11 steps |
66
+ | "explain how this feature works" | `feature-explainer` | 7-11 steps |
67
+ | "debug this path" | `bug-fixer` | 7-11 steps |
68
+
69
+ ### 3. Read and verify anchors
70
+
71
+ Every file path and line anchor must be real:
72
+ - confirm the file exists
73
+ - confirm the line numbers are in range
74
+ - if using a selection, verify the exact block
75
+ - if the file is volatile, prefer a pattern-based anchor
76
+
77
+ Never guess line numbers.
78
+
79
+ ### 4. Write the `.tour`
80
+
81
+ Write to:
82
+
83
+ ```text
84
+ .tours/<persona>-<focus>.tour
85
+ ```
86
+
87
+ Keep the path deterministic and readable.
88
+
89
+ ### 5. Validate
90
+
91
+ Before finishing:
92
+ - every referenced path exists
93
+ - every line or selection is valid
94
+ - the first step is anchored to a real file or directory
95
+ - the tour tells a coherent story rather than listing files
96
+
97
+ ## Step Types
98
+
99
+ ### Content
100
+
101
+ Use sparingly, usually only for a closing step:
102
+
103
+ ```json
104
+ { "title": "Next Steps", "description": "You can now trace the request path end to end." }
105
+ ```
106
+
107
+ Do not make the first step content-only.
108
+
109
+ ### Directory
110
+
111
+ Use to orient the reader to a module:
112
+
113
+ ```json
114
+ { "directory": "src/services", "title": "Service Layer", "description": "The core orchestration logic lives here." }
115
+ ```
116
+
117
+ ### File + line
118
+
119
+ This is the default step type:
120
+
121
+ ```json
122
+ { "file": "src/auth/middleware.ts", "line": 42, "title": "Auth Gate", "description": "Every protected request passes here first." }
123
+ ```
124
+
125
+ ### Selection
126
+
127
+ Use when one code block matters more than the whole file:
128
+
129
+ ```json
130
+ {
131
+ "file": "src/core/pipeline.ts",
132
+ "selection": {
133
+ "start": { "line": 15, "character": 0 },
134
+ "end": { "line": 34, "character": 0 }
135
+ },
136
+ "title": "Request Pipeline",
137
+ "description": "This block wires validation, auth, and downstream execution."
138
+ }
139
+ ```
140
+
141
+ ### Pattern
142
+
143
+ Use when exact lines may drift:
144
+
145
+ ```json
146
+ { "file": "src/app.ts", "pattern": "export default class App", "title": "Application Entry" }
147
+ ```
148
+
149
+ ### URI
150
+
151
+ Use for PRs, issues, or docs when helpful:
152
+
153
+ ```json
154
+ { "uri": "https://github.com/org/repo/pull/456", "title": "The PR" }
155
+ ```
156
+
157
+ ## Writing Rule: SMIG
158
+
159
+ Each description should answer:
160
+ - **Situation**: what the reader is looking at
161
+ - **Mechanism**: how it works
162
+ - **Implication**: why it matters for this persona
163
+ - **Gotcha**: what a smart reader might miss
164
+
165
+ Keep descriptions compact, specific, and grounded in the actual code.
166
+
167
+ ## Narrative Shape
168
+
169
+ Use this arc unless the task clearly needs something different:
170
+ 1. orientation
171
+ 2. module map
172
+ 3. core execution path
173
+ 4. edge case or gotcha
174
+ 5. closing / next move
175
+
176
+ The tour should feel like a path, not an inventory.
177
+
178
+ ## Example
179
+
180
+ ```json
181
+ {
182
+ "$schema": "https://aka.ms/codetour-schema",
183
+ "title": "API Service Tour",
184
+ "description": "Walkthrough of the request path for the payments service.",
185
+ "ref": "main",
186
+ "steps": [
187
+ {
188
+ "directory": "src",
189
+ "title": "Source Root",
190
+ "description": "All runtime code for the service starts here."
191
+ },
192
+ {
193
+ "file": "src/server.ts",
194
+ "line": 12,
195
+ "title": "Entry Point",
196
+ "description": "The server boots here and wires middleware before any route is reached."
197
+ },
198
+ {
199
+ "file": "src/routes/payments.ts",
200
+ "line": 8,
201
+ "title": "Payment Routes",
202
+ "description": "Every payments request enters through this router before hitting service logic."
203
+ },
204
+ {
205
+ "title": "Next Steps",
206
+ "description": "You can now follow any payment request end to end with the main anchors in place."
207
+ }
208
+ ]
209
+ }
210
+ ```
211
+
212
+ ## Anti-Patterns
213
+
214
+ | Anti-pattern | Fix |
215
+ | --- | --- |
216
+ | Flat file listing | Tell a story with dependency between steps |
217
+ | Generic descriptions | Name the concrete code path or pattern |
218
+ | Guessed anchors | Verify every file and line first |
219
+ | Too many steps for a quick tour | Cut aggressively |
220
+ | First step is content-only | Anchor the first step to a real file or directory |
221
+ | Persona mismatch | Write for the actual reader, not a generic engineer |
222
+
223
+ ## Best Practices
224
+
225
+ - keep step count proportional to repo size and persona depth
226
+ - use directory steps for orientation, file steps for substance
227
+ - for PR tours, cover changed files first
228
+ - for monorepos, scope to the relevant packages instead of touring everything
229
+ - close with what the reader can now do, not a recap
230
+
231
+ ## Related Skills
232
+
233
+ - `codebase-onboarding`
234
+ - `coding-standards`
235
+ - `council`
236
+ - official upstream format: `microsoft/codetour`
@@ -0,0 +1,7 @@
1
+ {
2
+ "source": "affaan-m/everything-claude-code",
3
+ "sourceType": "git",
4
+ "repoUrl": "https://github.com/affaan-m/everything-claude-code",
5
+ "subpath": "skills/coding-standards",
6
+ "installedAt": "2026-04-16T03:02:16.281Z"
7
+ }