@givolt/i3-composer-agent 0.0.0-stage → 1.0.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 (231) hide show
  1. package/.agents/plugins/marketplace.json +23 -0
  2. package/.claude/commands/build.md +44 -0
  3. package/.claude/commands/code-simplify.md +22 -0
  4. package/.claude/commands/constraints.md +32 -0
  5. package/.claude/commands/plan.md +18 -0
  6. package/.claude/commands/review.md +16 -0
  7. package/.claude/commands/ship.md +72 -0
  8. package/.claude/commands/spec.md +17 -0
  9. package/.claude/commands/test.md +19 -0
  10. package/.claude/commands/webperf.md +32 -0
  11. package/.claude-plugin/marketplace.json +27 -0
  12. package/.claude-plugin/plugin.json +19 -0
  13. package/.codex-plugin/plugin.json +28 -0
  14. package/.gemini/commands/build.toml +43 -0
  15. package/.gemini/commands/code-simplify.toml +22 -0
  16. package/.gemini/commands/constraints.toml +32 -0
  17. package/.gemini/commands/planning.toml +18 -0
  18. package/.gemini/commands/review.toml +16 -0
  19. package/.gemini/commands/ship.toml +72 -0
  20. package/.gemini/commands/spec.toml +17 -0
  21. package/.gemini/commands/test.toml +19 -0
  22. package/.gemini/commands/webperf.toml +32 -0
  23. package/CHANGELOG.md +23 -0
  24. package/LICENSE +21 -0
  25. package/NOTICE.md +9 -0
  26. package/README.md +117 -2
  27. package/agents/code-reviewer.md +102 -0
  28. package/agents/security-auditor.md +112 -0
  29. package/agents/test-engineer.md +95 -0
  30. package/agents/web-performance-auditor.md +184 -0
  31. package/bin/i3-composer-agent.cjs +122 -0
  32. package/commands/build.toml +43 -0
  33. package/commands/code-simplify.toml +22 -0
  34. package/commands/constraints.toml +32 -0
  35. package/commands/planning.toml +18 -0
  36. package/commands/review.toml +16 -0
  37. package/commands/ship.toml +72 -0
  38. package/commands/spec.toml +17 -0
  39. package/commands/test.toml +19 -0
  40. package/commands/webperf.toml +32 -0
  41. package/docs/adoption-guide.md +129 -0
  42. package/docs/advanced-per-agent-configuration.md +70 -0
  43. package/docs/agents.md +123 -0
  44. package/docs/antigravity-setup.md +128 -0
  45. package/docs/codebuddy-setup.md +41 -0
  46. package/docs/codex-setup.md +34 -0
  47. package/docs/commandcode-setup.md +69 -0
  48. package/docs/comparison.md +131 -0
  49. package/docs/copilot-cli-setup.md +64 -0
  50. package/docs/copilot-setup.md +162 -0
  51. package/docs/cursor-setup.md +225 -0
  52. package/docs/developer-onboarding.md +116 -0
  53. package/docs/gemini-cli-setup.md +133 -0
  54. package/docs/getting-started.md +208 -0
  55. package/docs/opencode-setup.md +259 -0
  56. package/docs/other-hosts.md +7 -0
  57. package/docs/skill-anatomy.md +203 -0
  58. package/docs/windsurf-setup.md +48 -0
  59. package/evals/README.md +101 -0
  60. package/evals/cases/api-and-interface-design.json +45 -0
  61. package/evals/cases/browser-testing-with-devtools.json +44 -0
  62. package/evals/cases/ci-cd-and-automation.json +45 -0
  63. package/evals/cases/code-review-and-quality.json +49 -0
  64. package/evals/cases/code-simplification.json +45 -0
  65. package/evals/cases/constraint-driven-development.json +79 -0
  66. package/evals/cases/context-engineering.json +44 -0
  67. package/evals/cases/debugging-and-error-recovery.json +58 -0
  68. package/evals/cases/deprecation-and-migration.json +52 -0
  69. package/evals/cases/documentation-and-adrs.json +44 -0
  70. package/evals/cases/doubt-driven-development.json +43 -0
  71. package/evals/cases/frontend-ui-engineering.json +52 -0
  72. package/evals/cases/git-workflow-and-versioning.json +47 -0
  73. package/evals/cases/idea-refine.json +43 -0
  74. package/evals/cases/incremental-implementation.json +57 -0
  75. package/evals/cases/interview-me.json +42 -0
  76. package/evals/cases/observability-and-instrumentation.json +44 -0
  77. package/evals/cases/performance-optimization.json +53 -0
  78. package/evals/cases/planning-and-task-breakdown.json +45 -0
  79. package/evals/cases/security-and-hardening.json +53 -0
  80. package/evals/cases/shipping-and-launch.json +56 -0
  81. package/evals/cases/source-driven-development.json +44 -0
  82. package/evals/cases/spec-driven-development.json +72 -0
  83. package/evals/cases/test-driven-development.json +73 -0
  84. package/evals/cases/using-agent-skills.json +44 -0
  85. package/evals/fixtures/api-and-interface-design/service-brief.md +19 -0
  86. package/evals/fixtures/browser-testing-with-devtools/README.md +5 -0
  87. package/evals/fixtures/browser-testing-with-devtools/index.html +24 -0
  88. package/evals/fixtures/browser-testing-with-devtools/server.js +15 -0
  89. package/evals/fixtures/ci-cd-and-automation/package.json +8 -0
  90. package/evals/fixtures/ci-cd-and-automation/src/slug.js +3 -0
  91. package/evals/fixtures/ci-cd-and-automation/test/slug.test.js +9 -0
  92. package/evals/fixtures/code-review-and-quality/user-search.diff +16 -0
  93. package/evals/fixtures/code-simplification/config-parser.js +46 -0
  94. package/evals/fixtures/code-simplification/config-parser.test.js +15 -0
  95. package/evals/fixtures/context-engineering/context-audit.md +15 -0
  96. package/evals/fixtures/debugging-and-error-recovery/pagination.js +8 -0
  97. package/evals/fixtures/debugging-and-error-recovery/pagination.test.js +9 -0
  98. package/evals/fixtures/debugging-and-error-recovery/time-pressure.md +6 -0
  99. package/evals/fixtures/deprecation-and-migration/api-inventory.md +9 -0
  100. package/evals/fixtures/documentation-and-adrs/decision-context.md +16 -0
  101. package/evals/fixtures/doubt-driven-development/migration-plan.md +19 -0
  102. package/evals/fixtures/frontend-ui-engineering/Button.tsx +7 -0
  103. package/evals/fixtures/frontend-ui-engineering/design-system.md +11 -0
  104. package/evals/fixtures/git-workflow-and-versioning/.eval/working-tree.patch +21 -0
  105. package/evals/fixtures/git-workflow-and-versioning/app.js +7 -0
  106. package/evals/fixtures/git-workflow-and-versioning/app.test.js +9 -0
  107. package/evals/fixtures/incremental-implementation/reports.js +7 -0
  108. package/evals/fixtures/incremental-implementation/reports.test.js +12 -0
  109. package/evals/fixtures/incremental-implementation/tasks/plan.md +8 -0
  110. package/evals/fixtures/incremental-implementation-pressure/draft-export.js +17 -0
  111. package/evals/fixtures/incremental-implementation-pressure/scenario.md +9 -0
  112. package/evals/fixtures/observability-and-instrumentation/operations.md +11 -0
  113. package/evals/fixtures/observability-and-instrumentation/payment-retry.js +14 -0
  114. package/evals/fixtures/performance-optimization/benchmark.js +15 -0
  115. package/evals/fixtures/performance-optimization/products.js +14 -0
  116. package/evals/fixtures/planning-and-task-breakdown/notifications-spec.md +18 -0
  117. package/evals/fixtures/security-and-hardening/webhook.js +11 -0
  118. package/evals/fixtures/security-and-hardening/webhook.test.js +13 -0
  119. package/evals/fixtures/shipping-and-launch/authority-pressure.md +6 -0
  120. package/evals/fixtures/shipping-and-launch/launch-status.md +11 -0
  121. package/evals/fixtures/source-driven-development/framework-task.md +10 -0
  122. package/evals/fixtures/spec-driven-development/billing-brief.md +16 -0
  123. package/evals/fixtures/spec-driven-development-decomposition/portal-brief.md +22 -0
  124. package/evals/fixtures/test-driven-development/BUG.md +10 -0
  125. package/evals/fixtures/test-driven-development/README.md +28 -0
  126. package/evals/fixtures/test-driven-development/package.json +9 -0
  127. package/evals/fixtures/test-driven-development/src/split.js +8 -0
  128. package/evals/fixtures/test-driven-development/test/split.test.js +13 -0
  129. package/evals/fixtures/test-driven-development-ecosystem/README.md +9 -0
  130. package/evals/fixtures/test-driven-development-ecosystem/ledger.py +15 -0
  131. package/evals/fixtures/test-driven-development-ecosystem/test_ledger.py +19 -0
  132. package/evals/fixtures/using-agent-skills/incident.md +6 -0
  133. package/evals/plugin/code-review-fires/graders/off-by-one.md +7 -0
  134. package/evals/plugin/code-review-fires/graders/severity-labels.md +4 -0
  135. package/evals/plugin/code-review-fires/graders/skill-fired.md +5 -0
  136. package/evals/plugin/code-review-fires/prompt.md +31 -0
  137. package/evals/plugin/code-review-stays-quiet/graders/not-fired.md +8 -0
  138. package/evals/plugin/code-review-stays-quiet/graders/tdd-fired.md +6 -0
  139. package/evals/plugin/code-review-stays-quiet/prompt.md +8 -0
  140. package/evals/plugin/code-review-stays-quiet-on-commit-message/graders/not-fired.md +8 -0
  141. package/evals/plugin/code-review-stays-quiet-on-commit-message/prompt.md +25 -0
  142. package/evals/skill-impact.md +6 -0
  143. package/hooks/SDD-CACHE.md +167 -0
  144. package/hooks/SIMPLIFY-IGNORE.md +91 -0
  145. package/hooks/sdd-cache-post.sh +135 -0
  146. package/hooks/sdd-cache-pre.sh +106 -0
  147. package/hooks/sdd-cache-test.sh +246 -0
  148. package/hooks/session-start-test.sh +47 -0
  149. package/hooks/session-start.sh +33 -0
  150. package/hooks/simplify-ignore-test.sh +476 -0
  151. package/hooks/simplify-ignore.sh +352 -0
  152. package/package.json +89 -4
  153. package/plugin.json +7 -0
  154. package/rebrand/MAINTENANCE.md +112 -0
  155. package/rebrand/NOTICE.md +9 -0
  156. package/rebrand/PR-WORKFLOW.md +34 -0
  157. package/rebrand/UNIFICATION-SPEC.md +33 -0
  158. package/rebrand/VALIDATION.md +28 -0
  159. package/rebrand/VERSIONING.md +32 -0
  160. package/rebrand/apply.cjs +194 -0
  161. package/rebrand/brand.json +13 -0
  162. package/rebrand/catalog.cjs +56 -0
  163. package/rebrand/fork-patches.json +12 -0
  164. package/rebrand/overlay/.github/workflows/test-plugin-install.yml +177 -0
  165. package/rebrand/overlay/CHANGELOG.md +23 -0
  166. package/rebrand/overlay/bin/i3-composer-agent.cjs +122 -0
  167. package/rebrand/overlay/scripts/validate-brand.cjs +44 -0
  168. package/rebrand/overlay/tests/bundle.test.cjs +85 -0
  169. package/rebrand/package.template.json +82 -0
  170. package/rebrand/rebrand.sh +4 -0
  171. package/rebrand/record-upstream.cjs +37 -0
  172. package/rebrand/templates/README.md +86 -0
  173. package/rebrand/templates/codebuddy-setup.md +41 -0
  174. package/rebrand/templates/codex-setup.md +34 -0
  175. package/rebrand/tests/pipeline.test.cjs +185 -0
  176. package/rebrand/upstream.json +171 -0
  177. package/references/accessibility-checklist.md +160 -0
  178. package/references/definition-of-done.md +67 -0
  179. package/references/observability-checklist.md +92 -0
  180. package/references/orchestration-patterns.md +370 -0
  181. package/references/performance-checklist.md +236 -0
  182. package/references/security-checklist.md +248 -0
  183. package/references/testing-patterns.md +235 -0
  184. package/scripts/floor-guard-reference-test.js +291 -0
  185. package/scripts/lib/skill-lint-test.js +650 -0
  186. package/scripts/lib/skill-lint.js +584 -0
  187. package/scripts/run-evals-test.js +623 -0
  188. package/scripts/run-evals.js +638 -0
  189. package/scripts/validate-artifact-paths-test.js +179 -0
  190. package/scripts/validate-artifact-paths.js +128 -0
  191. package/scripts/validate-brand.cjs +44 -0
  192. package/scripts/validate-commands-test.js +216 -0
  193. package/scripts/validate-commands.js +222 -0
  194. package/scripts/validate-reference-links-test.js +495 -0
  195. package/scripts/validate-reference-links.js +187 -0
  196. package/scripts/validate-skills.js +69 -0
  197. package/scripts/validate-versions-test.js +32 -0
  198. package/scripts/validate-versions.js +35 -0
  199. package/skills/api-and-interface-design/SKILL.md +367 -0
  200. package/skills/browser-testing-with-devtools/SKILL.md +317 -0
  201. package/skills/ci-cd-and-automation/SKILL.md +390 -0
  202. package/skills/code-review-and-quality/SKILL.md +398 -0
  203. package/skills/code-simplification/SKILL.md +331 -0
  204. package/skills/constraint-driven-development/SKILL.md +311 -0
  205. package/skills/constraint-driven-development/references/floor-guard.md +182 -0
  206. package/skills/context-engineering/SKILL.md +353 -0
  207. package/skills/debugging-and-error-recovery/SKILL.md +300 -0
  208. package/skills/deprecation-and-migration/SKILL.md +247 -0
  209. package/skills/documentation-and-adrs/SKILL.md +288 -0
  210. package/skills/doubt-driven-development/SKILL.md +243 -0
  211. package/skills/frontend-ui-engineering/SKILL.md +340 -0
  212. package/skills/git-workflow-and-versioning/SKILL.md +355 -0
  213. package/skills/idea-refine/SKILL.md +178 -0
  214. package/skills/idea-refine/examples.md +238 -0
  215. package/skills/idea-refine/frameworks.md +99 -0
  216. package/skills/idea-refine/refinement-criteria.md +113 -0
  217. package/skills/idea-refine/scripts/idea-refine.sh +15 -0
  218. package/skills/incremental-implementation/SKILL.md +249 -0
  219. package/skills/interview-me/SKILL.md +235 -0
  220. package/skills/observability-and-instrumentation/SKILL.md +238 -0
  221. package/skills/performance-optimization/SKILL.md +267 -0
  222. package/skills/performance-optimization/references/optimization-patterns.md +250 -0
  223. package/skills/planning-and-task-breakdown/SKILL.md +257 -0
  224. package/skills/security-and-hardening/SKILL.md +216 -0
  225. package/skills/security-and-hardening/references/hardening-patterns.md +324 -0
  226. package/skills/shipping-and-launch/SKILL.md +330 -0
  227. package/skills/source-driven-development/SKILL.md +216 -0
  228. package/skills/spec-driven-development/SKILL.md +259 -0
  229. package/skills/test-driven-development/SKILL.md +398 -0
  230. package/skills/using-agent-skills/SKILL.md +192 -0
  231. package/tests/bundle.test.cjs +85 -0
@@ -0,0 +1,32 @@
1
+ description = "Run a web performance audit via the web-performance-auditor persona"
2
+
3
+ prompt = """
4
+ /webperf targets web applications specifically. Do not use it for utility libraries, CLIs, or server-only code with no browser-facing output.
5
+
6
+ ## Determine the mode
7
+
8
+ Deep mode — activate when any of these is available:
9
+ - A Lighthouse JSON report file (e.g. `npx lighthouse <url> --output json --output-path ./report.json`, or `npx -p chrome-devtools-mcp chrome-devtools lighthouse_audit --output-format=json` from the Chrome DevTools MCP CLI)
10
+ - A PageSpeed Insights JSON response (includes Lighthouse + CrUX)
11
+ - A CrUX API response (requires CRUX_API_KEY or GOOGLE_API_KEY)
12
+ - A DevTools performance trace
13
+ - A live URL plus the chrome-devtools MCP server configured in the harness (capture metrics directly via lighthouse_audit and performance_* tools)
14
+ - The Chrome DevTools MCP CLI invoked locally (via `npx -p chrome-devtools-mcp chrome-devtools <tool>`), passing the JSON output to the agent
15
+
16
+ Quick mode — default when none of the above are available. Scan source code for structural anti-patterns and label every finding as `potential impact`.
17
+
18
+ ## Run the audit
19
+
20
+ Act as the web-performance-auditor persona (agents/web-performance-auditor.md) and follow it exactly. Work from:
21
+
22
+ - The files, components, or diff under review
23
+ - Any artifact paths (Lighthouse JSON, PSI JSON, CrUX response, trace) or pasted JSON content
24
+ - The target URL or page name when known
25
+ - The mode you expect (Quick or Deep); surface missing inputs if Deep was intended
26
+
27
+ Return a scorecard (only populated with sourced values — mark unmeasured fields `not measured`, never fabricate metrics), a ranked list of findings, positive observations, and proactive recommendations.
28
+
29
+ ## Output
30
+
31
+ Return the full audit report to the user. No synthesis or merge step is needed — this is a single-persona command.
32
+ """
package/CHANGELOG.md ADDED
@@ -0,0 +1,23 @@
1
+ # i3 Composer Agent changes
2
+
3
+ ## 1.0.0 — Unreleased
4
+
5
+ Upstream baseline: agent-skills 0.6.12 at commit 1401c8b8030e023baeebb31781a6653fe8e93026.
6
+
7
+ ### Changed
8
+
9
+ - Start independent i3 release numbering. The upstream baseline remains 0.6.12; this replaces the unpublished 0.6.13 candidate.
10
+ - Display the i3 release and upstream baseline together in the README, CLI help, and bundle preparation output. Keep --version machine-readable.
11
+ - Include the upstream version, commit, and repository in package metadata.
12
+ - Maintain source changes on agent/source, generate and validate a branded candidate, then update main in this independent repository.
13
+
14
+ ### Fixed
15
+
16
+ - Preserve complete reviewed runtime assets when replaying branding, including newly approved upstream skills and commands.
17
+ - Keep replay checks repeatable in npm bundles without repository CI files.
18
+ - Preserve branded ignore rules and exclude Finder metadata from runtime preservation checks.
19
+
20
+ ## 0.6.12
21
+
22
+ - Publish the first i3 Composer Agent npm distribution based on agent-skills 0.6.12.
23
+ - Retain upstream skill IDs, command workflows, specialist personas, shared references, and MIT attribution.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Addy Osmani
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/NOTICE.md ADDED
@@ -0,0 +1,9 @@
1
+ # Attribution
2
+
3
+ i3 Composer Agent is a branded distribution of
4
+ [Agent Skills](https://github.com/addyosmani/agent-skills) by Addy Osmani.
5
+ The initial distribution is based on upstream commit `1401c8b` (version 0.6.12).
6
+
7
+ The original MIT license and copyright notice are preserved in LICENSE.
8
+ Givolt maintains the branding, npm distribution, and bundle preparation CLI.
9
+ The original skill IDs, command workflows, and persona definitions are retained.
package/README.md CHANGED
@@ -1,3 +1,118 @@
1
- # Temporary Holding Version
1
+ # i3 Composer Agent v1.0.0
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ **Based on agent-skills v0.6.12**
4
+
5
+ **Intelligence. Integration. Innovation.**
6
+
7
+ Engineering skills, lifecycle commands, and specialist personas for AI coding agents.
8
+ Based on [Agent Skills](https://github.com/addyosmani/agent-skills) by Addy Osmani
9
+ (MIT). See [NOTICE.md](NOTICE.md) for attribution.
10
+
11
+ The npm package is `@givolt/i3-composer-agent`; the plugin and marketplace ID is
12
+ `i3-composer-agent`. Skill IDs retain their upstream names.
13
+
14
+ ## Prepare the complete plugin
15
+
16
+ Run in the project where you want to prepare the plugin:
17
+
18
+ ```bash
19
+ npx @givolt/i3-composer-agent --codebuddy
20
+ # Other hosts:
21
+ npx @givolt/i3-composer-agent --codex
22
+ npx @givolt/i3-composer-agent --claude
23
+ ```
24
+
25
+ The command prepares a persistent `./i3-composer-agent/` directory containing
26
+ 25 skills, 9 commands, 4 personas,
27
+ and shared references. It prints native registration commands; run those in
28
+ the selected host to enable the plugin. Preparing files does not select a host
29
+ installation scope. See [CodeBuddy setup](docs/codebuddy-setup.md) and
30
+ [Codex setup](docs/codex-setup.md).
31
+
32
+ CodeBuddy / Claude Code:
33
+
34
+ ```text
35
+ /plugin marketplace add ./i3-composer-agent
36
+ /plugin install i3-composer-agent@i3-composer-agent
37
+ ```
38
+
39
+ Codex:
40
+
41
+ ```bash
42
+ codex plugin marketplace add ./i3-composer-agent
43
+ codex plugin add i3-composer-agent@i3-composer-agent
44
+ ```
45
+
46
+ Start a new session after enabling the plugin. Codex uses the existing Skill
47
+ names, such as `$spec-driven-development`; lifecycle slash-command adaptation
48
+ is maintained separately.
49
+
50
+ ## Commands
51
+
52
+ Hosts supporting Claude-compatible plugin commands load these workflows:
53
+
54
+ | Command | Description |
55
+ | --- | --- |
56
+ | /i3-composer-agent:build | Implement tasks incrementally — build, test, verify, commit. Add "auto" to run the whole plan in one approved pass. |
57
+ | /i3-composer-agent:code-simplify | Simplify code for clarity and maintainability — reduce complexity without changing behavior |
58
+ | /i3-composer-agent:constraints | Define and enforce this project's quality bar — interview, sane defaults, CONSTRAINTS.md |
59
+ | /i3-composer-agent:plan | Break work into small verifiable tasks with acceptance criteria and dependency ordering |
60
+ | /i3-composer-agent:review | Conduct a five-axis code review — correctness, readability, architecture, security, performance |
61
+ | /i3-composer-agent:ship | Run the pre-launch checklist via parallel fan-out to specialist personas, then synthesize a go/no-go decision |
62
+ | /i3-composer-agent:spec | Start spec-driven development — write a structured specification before writing code |
63
+ | /i3-composer-agent:test | Run TDD workflow — write failing tests, implement, verify. For bugs, use the Prove-It pattern. |
64
+ | /i3-composer-agent:webperf | Run a web performance audit via the web-performance-auditor persona |
65
+
66
+ `/i3-composer-agent:build auto` runs the existing approved-plan workflow.
67
+
68
+ ## Skills
69
+
70
+ | Skill | Description |
71
+ | --- | --- |
72
+ | [api-and-interface-design](skills/api-and-interface-design/SKILL.md) | Guides stable API and interface design. Use when designing APIs, module boundaries, or any public interface. Use when creating REST or GraphQL endpoints, defining type contracts between modules, or establishing boundaries between frontend and backend. |
73
+ | [browser-testing-with-devtools](skills/browser-testing-with-devtools/SKILL.md) | Tests in real browsers via Chrome DevTools MCP. Use when building or debugging anything that runs in a browser. Use when you need to inspect the DOM, capture console errors, analyze network requests, profile performance, or verify visual output with real runtime data. Requires the chrome-devtools MCP server to be configured. |
74
+ | [ci-cd-and-automation](skills/ci-cd-and-automation/SKILL.md) | Automates CI/CD pipeline setup. Use when setting up or modifying build and deployment pipelines. Use when you need to automate quality gates, configure test runners in CI, or establish deployment strategies. |
75
+ | [code-review-and-quality](skills/code-review-and-quality/SKILL.md) | Conducts multi-axis code review. Use before merging any change. Use when reviewing code written by yourself, another agent, or a human. Use when you need to assess code quality across multiple dimensions before it enters the main branch. Use when asked to review a diff or a pull request, even when the diff is pasted inline. |
76
+ | [code-simplification](skills/code-simplification/SKILL.md) | Simplifies code for clarity. Use when refactoring code for clarity without changing behavior. Use when code works but is harder to read, maintain, or extend than it should be. Use when reviewing code that has accumulated unnecessary complexity. |
77
+ | [constraint-driven-development](skills/constraint-driven-development/SKILL.md) | Establishes a project's quality bar as a written contract and stops agents quietly lowering it. Interviews the user on which dimensions matter, supplies sane default thresholds when they have no number in mind, records everything in CONSTRAINTS.md, and watches the diff for a weakened bar — new @ts-ignore or eslint-disable suppressions, skipped or deleted tests, assertions stripped out, unimplemented stubs, thresholds edited down. Use when no quality bar is written down, when the user says "set up constraints" or "define our standards", when the user wants dimensions they care about — accessibility, web performance, coverage — set up as enforced constraints, when an agent keeps silencing checks or skipping tests to get to green, when you need a coverage or performance threshold and don't know what number to pick, or when an agent writes more code than anyone will read. |
78
+ | [context-engineering](skills/context-engineering/SKILL.md) | Optimizes agent context setup. Use when starting a new session, when agent output quality degrades, when switching between tasks, or when you need to configure rules files and context for a project. |
79
+ | [debugging-and-error-recovery](skills/debugging-and-error-recovery/SKILL.md) | Guides systematic root-cause debugging. Use when tests fail, builds break, something that worked yesterday broke, behavior doesn't match expectations, or you encounter any unexpected error. Use when you need to figure out what broke and why — a systematic approach to finding and fixing the root cause rather than guessing. |
80
+ | [deprecation-and-migration](skills/deprecation-and-migration/SKILL.md) | Manages deprecation and migration. Use when removing old systems, APIs, or features. Use when migrating users from one implementation to another. Use when migrating a database schema in production, such as renaming or dropping a column without downtime (expand/contract). Use when deciding whether to maintain or sunset existing code. |
81
+ | [documentation-and-adrs](skills/documentation-and-adrs/SKILL.md) | Records decisions and documentation. Use when you need to document an architecture decision (ADR) or the reasoning behind a design choice, when changing public APIs, shipping features, or when you need to record context that future engineers and agents will need to understand the codebase. |
82
+ | [doubt-driven-development](skills/doubt-driven-development/SKILL.md) | Subjects every non-trivial decision to a fresh-context adversarial review before it stands. Use when you want every assumption cross-examined before proceeding, when stress-testing a plan for hidden failure modes, when correctness matters more than speed, when working in unfamiliar code, when stakes are high (production auth, security-sensitive logic, a high-stakes migration, irreversible operations), or any time a confident output would be cheaper to verify now than to debug later. |
83
+ | [frontend-ui-engineering](skills/frontend-ui-engineering/SKILL.md) | Builds production-quality, accessible, responsive user-facing UIs. Use when building or modifying interfaces and pages, creating components, implementing layouts, meeting WCAG accessibility requirements, managing state, or when the output needs to look and feel production-quality rather than AI-generated. |
84
+ | [git-workflow-and-versioning](skills/git-workflow-and-versioning/SKILL.md) | Structures git workflow practices. Use when making any code change. Use when committing, branching, resolving conflicts, splitting uncommitted work in a messy working tree into clean atomic commits, opening or reviewing a pull request (PR), pushing to a remote, or when you need to organize work across multiple parallel streams. Use when cutting a release, choosing a semantic version bump, tagging, or writing a changelog. |
85
+ | [idea-refine](skills/idea-refine/SKILL.md) | Refines raw ideas into sharp, actionable concepts through structured divergent and convergent thinking. Use when an idea is still vague, when you need to stress-test assumptions before committing to a plan, or when you want to expand options before converging on one. Triggers on "ideate", "refine this idea", or "stress-test my plan". |
86
+ | [incremental-implementation](skills/incremental-implementation/SKILL.md) | Delivers changes incrementally in thin, verifiable slices. Use when implementing any feature or change that touches more than one file, or when picking up the next task from a plan. Use when rolling a change out behind a feature flag, when you're about to write a large amount of code at once, or when a task feels too big to land in one step. |
87
+ | [interview-me](skills/interview-me/SKILL.md) | Extracts what the user actually wants instead of what they think they should want. Achieves this through one-question-at-a-time interview until ~95% confidence about the underlying intent. Use when an ask is underspecified ("build me X" without "for whom" or "why now"), when the user explicitly invokes ("interview me", "grill me", "are we sure?", "stress-test my thinking"), or when you catch yourself silently filling in ambiguous requirements before any plan, spec, or code exists. |
88
+ | [observability-and-instrumentation](skills/observability-and-instrumentation/SKILL.md) | Instruments code so production behavior is visible and diagnosable. Use when adding logging, metrics, tracing, or alerting. Use when shipping any feature that runs in production and you need evidence it works. Use when production issues are reported but you can't tell what happened from the available data. |
89
+ | [performance-optimization](skills/performance-optimization/SKILL.md) | Optimizes application performance across frontend, backend, queries, and databases. Use when performance requirements exist, when you suspect performance regressions, when Core Web Vitals or load times need improvement, when N+1 query patterns need fixing, or when profiling reveals bottlenecks. |
90
+ | [planning-and-task-breakdown](skills/planning-and-task-breakdown/SKILL.md) | Breaks work into ordered tasks. Use when you have a spec or clear requirements and need to break work into implementable tasks. Use when a task feels too large to start, when you need to estimate scope, or when parallel work is possible. |
91
+ | [security-and-hardening](skills/security-and-hardening/SKILL.md) | Hardens code against vulnerabilities. Use when auditing an input handler for vulnerabilities, when handling user input, authentication, data storage, or external integrations, or when checking a login flow is safe against the OWASP Top Ten. Use when building any feature that accepts untrusted data, manages user sessions, or interacts with third-party services. Use when auditing dependencies for known vulnerabilities, triaging package-manager audit findings, or assessing supply-chain risk in a new package. Use when personal data or privacy compliance (GDPR, CCPA) is involved. |
92
+ | [shipping-and-launch](skills/shipping-and-launch/SKILL.md) | Prepares production launches. Use when preparing to deploy to production, or when asking what needs to be in place before shipping. Use when you need a pre-launch checklist, when setting up monitoring, when planning a staged rollout, or when you need a rollback strategy. |
93
+ | [source-driven-development](skills/source-driven-development/SKILL.md) | Grounds every implementation decision in official documentation. Use when you want to verify an approach against the official docs before implementing it, or when you want authoritative, source-cited code free from outdated patterns. Use when building with any framework or library where correctness matters. |
94
+ | [spec-driven-development](skills/spec-driven-development/SKILL.md) | Creates specs before coding. Use when starting a new project, feature, or significant change and no specification exists yet. Use when drafting a PRD or requirements document with objectives and scope, or when requirements are unclear, ambiguous, or only exist as a vague idea. Use when a single requirement spans several independently testable capabilities and needs decomposing into a capability map of modules before specifying. |
95
+ | [test-driven-development](skills/test-driven-development/SKILL.md) | Drives development with tests using the red-green-refactor loop. Use when implementing any logic, fixing any bug, or changing any behavior. Use when you need to prove that code works, when a bug report arrives, or when you're about to modify existing functionality. |
96
+ | [using-agent-skills](skills/using-agent-skills/SKILL.md) | Discovers and invokes agent skills. Use when starting a session, or when you need to decide which skill or workflow applies to the piece of work at hand. This is the meta-skill that governs how all other skills are discovered and invoked. |
97
+
98
+ ## Bundle options
99
+
100
+ ```bash
101
+ npx @givolt/i3-composer-agent --extract --dir /path/to/plugin
102
+ npx @givolt/i3-composer-agent --codebuddy --dir /path/to/plugin --dry-run
103
+ npx @givolt/i3-composer-agent --codebuddy --dir /path/to/plugin --force
104
+ ```
105
+
106
+ Replacement preserves the previous i3 bundle as a backup. Repository-scoped
107
+ AGENTS.md and CLAUDE.md are not copied into business projects.
108
+
109
+ ## Maintaining this fork
110
+
111
+ This repository is independent of the GSD-based i3 Composer Work repository.
112
+ `agent/source` retains upstream source and the `rebrand/` rules; `main` contains
113
+ the validated branded distribution. Create release candidates from the source
114
+ branch, replay branding, validate, then update the release branch.
115
+
116
+ See [maintenance](rebrand/MAINTENANCE.md), [source PR workflow](rebrand/PR-WORKFLOW.md),
117
+ [versioning](rebrand/VERSIONING.md), [changelog](CHANGELOG.md),
118
+ and [validation contract](rebrand/VALIDATION.md).
@@ -0,0 +1,102 @@
1
+ ---
2
+ name: code-reviewer
3
+ description: Senior code reviewer that evaluates changes across five dimensions — correctness, readability, architecture, security, and performance. Use for thorough code review before merge.
4
+ ---
5
+
6
+ # Senior Code Reviewer
7
+
8
+ You are an experienced Staff Engineer conducting a thorough code review. Your role is to evaluate the proposed changes and provide actionable, categorized feedback.
9
+
10
+ ## Review Framework
11
+
12
+ Evaluate every change across these five dimensions:
13
+
14
+ ### 1. Correctness
15
+ - Does the code do what the spec/task says it should?
16
+ - Are edge cases handled (null, empty, boundary values, error paths)?
17
+ - Do the tests actually verify the behavior? Are they testing the right things?
18
+ - Are there race conditions, off-by-one errors, or state inconsistencies?
19
+
20
+ ### 2. Readability
21
+ - Can another engineer understand this without explanation?
22
+ - Are names descriptive and consistent with project conventions?
23
+ - Is the control flow straightforward (no deeply nested logic)?
24
+ - Is the code well-organized (related code grouped, clear boundaries)?
25
+
26
+ ### 3. Architecture
27
+ - Does the change follow existing patterns or introduce a new one?
28
+ - If a new pattern, is it justified and documented?
29
+ - Are module boundaries maintained? Any circular dependencies?
30
+ - Is the abstraction level appropriate (not over-engineered, not too coupled)?
31
+ - Are dependencies flowing in the right direction?
32
+
33
+ ### 4. Security
34
+ - Is user input validated and sanitized at system boundaries?
35
+ - Are secrets kept out of code, logs, and version control?
36
+ - Is authentication/authorization checked where needed?
37
+ - Are queries parameterized? Is output encoded?
38
+ - Any new dependencies with known vulnerabilities?
39
+
40
+ ### 5. Performance
41
+ - Any N+1 query patterns?
42
+ - Any unbounded loops or unconstrained data fetching?
43
+ - Any synchronous operations that should be async?
44
+ - Any unnecessary re-renders (in UI components)?
45
+ - Any missing pagination on list endpoints?
46
+
47
+ ## Output Format
48
+
49
+ Categorize every finding, using the same severity labels as the `code-review-and-quality` skill:
50
+
51
+ **Critical** — Blocks merge (security vulnerability, data loss risk, broken functionality)
52
+
53
+ **Required** — Must address before merge (missing test, wrong abstraction, poor error handling)
54
+
55
+ **Optional** — Worth considering but not required (a simpler design, a useful refactor)
56
+
57
+ **Nit** — Minor and optional; the author may ignore (formatting, naming, style preferences)
58
+
59
+ ## Review Output Template
60
+
61
+ ```markdown
62
+ ## Review Summary
63
+
64
+ **Verdict:** APPROVE | REQUEST CHANGES
65
+
66
+ **Overview:** [1-2 sentences summarizing the change and overall assessment]
67
+
68
+ ### Critical Issues
69
+ - [File:line] [Description and recommended fix]
70
+
71
+ ### Required Changes
72
+ - [File:line] [Description and recommended fix]
73
+
74
+ ### Optional
75
+ - [File:line] [Description]
76
+
77
+ ### Nits
78
+ - [File:line] [Description]
79
+
80
+ ### What's Done Well
81
+ - [Positive observation — always include at least one]
82
+
83
+ ### Verification Story
84
+ - Tests reviewed: [yes/no, observations]
85
+ - Build verified: [yes/no]
86
+ - Security checked: [yes/no, observations]
87
+ ```
88
+
89
+ ## Rules
90
+
91
+ 1. Review the tests first — they reveal intent and coverage
92
+ 2. Read the spec or task description before reviewing code
93
+ 3. Every Critical and Required finding should include a specific fix recommendation
94
+ 4. Don't approve code with Critical issues
95
+ 5. Acknowledge what's done well — specific praise motivates good practices
96
+ 6. If you're uncertain about something, say so and suggest investigation rather than guessing
97
+
98
+ ## Composition
99
+
100
+ - **Invoke directly when:** the user asks for a review of a specific change, file, or PR.
101
+ - **Invoke via:** `/review` (single-perspective review) or `/ship` (parallel fan-out alongside `security-auditor` and `test-engineer`).
102
+ - **Do not invoke from another persona.** If you find yourself wanting to delegate to `security-auditor` or `test-engineer`, surface that as a recommendation in your report instead — orchestration belongs to slash commands, not personas. See [docs/agents.md](../docs/agents.md).
@@ -0,0 +1,112 @@
1
+ ---
2
+ name: security-auditor
3
+ description: Security engineer focused on vulnerability detection, threat modeling, and secure coding practices. Use for security-focused code review, threat analysis, or hardening recommendations.
4
+ ---
5
+
6
+ # Security Auditor
7
+
8
+ You are an experienced Security Engineer conducting a security review. Your role is to identify vulnerabilities, assess risk, and recommend mitigations. You focus on practical, exploitable issues rather than theoretical risks.
9
+
10
+ ## Review Scope
11
+
12
+ ### 1. Input Handling
13
+ - Is all user input validated at system boundaries?
14
+ - Are there injection vectors (SQL, NoSQL, OS command, LDAP)?
15
+ - Is HTML output encoded to prevent XSS?
16
+ - Are file uploads restricted by type, size, and content?
17
+ - Are URL redirects validated against an allowlist?
18
+
19
+ ### 2. Authentication & Authorization
20
+ - Are passwords hashed with a strong algorithm (bcrypt, scrypt, argon2)?
21
+ - Are sessions managed securely (httpOnly, secure, sameSite cookies)?
22
+ - Is authorization checked on every protected endpoint?
23
+ - Can users access resources belonging to other users (IDOR)?
24
+ - Are password reset tokens time-limited and single-use?
25
+ - Is rate limiting applied to authentication endpoints?
26
+
27
+ ### 3. Data Protection
28
+ - Are secrets in environment variables (not code)?
29
+ - Are sensitive fields excluded from API responses and logs?
30
+ - Is data encrypted in transit (HTTPS) and at rest (if required)?
31
+ - Is PII handled according to applicable regulations?
32
+ - Are database backups encrypted?
33
+
34
+ ### 4. Infrastructure
35
+ - Are security headers configured (CSP, HSTS, X-Frame-Options)?
36
+ - Is CORS restricted to specific origins?
37
+ - Are dependencies audited for known vulnerabilities?
38
+ - Are error messages generic (no stack traces or internal details to users)?
39
+ - Is the principle of least privilege applied to service accounts?
40
+
41
+ ### 5. Third-Party Integrations
42
+ - Are API keys and tokens stored securely?
43
+ - Are webhook payloads verified (signature validation)?
44
+ - Are third-party scripts loaded from trusted CDNs with integrity hashes?
45
+ - Are OAuth flows using PKCE and state parameters?
46
+ - Are server-side fetches of user-supplied URLs allowlisted (SSRF)?
47
+
48
+ ### 6. AI / LLM Features (if present)
49
+ - Is model output treated as untrusted (never into `eval`, SQL, shell, `innerHTML`, file paths)?
50
+ - Is the system prompt relied on as a security boundary instead of code-enforced permissions (prompt injection)?
51
+ - Are secrets, cross-tenant data, or the full system prompt placed in the context window?
52
+ - Are tool/agent permissions scoped, with confirmation for destructive actions (excessive agency)?
53
+ - Are token, rate, and recursion limits set (unbounded consumption)?
54
+
55
+ Map findings to the OWASP Top 10 for LLM Applications where relevant.
56
+
57
+ ## Severity Classification
58
+
59
+ | Severity | Criteria | Action |
60
+ |----------|----------|--------|
61
+ | **Critical** | Exploitable remotely, leads to data breach or full compromise | Fix immediately, block release |
62
+ | **High** | Exploitable with some conditions, significant data exposure | Fix before release |
63
+ | **Medium** | Limited impact or requires authenticated access to exploit | Fix in current sprint |
64
+ | **Low** | Theoretical risk or defense-in-depth improvement | Schedule for next sprint |
65
+ | **Info** | Best practice recommendation, no current risk | Consider adopting |
66
+
67
+ ## Output Format
68
+
69
+ ```markdown
70
+ ## Security Audit Report
71
+
72
+ ### Summary
73
+ - Critical: [count]
74
+ - High: [count]
75
+ - Medium: [count]
76
+ - Low: [count]
77
+
78
+ ### Findings
79
+
80
+ #### [CRITICAL] [Finding title]
81
+ - **Location:** [file:line]
82
+ - **Description:** [What the vulnerability is]
83
+ - **Impact:** [What an attacker could do]
84
+ - **Proof of concept:** [How to exploit it]
85
+ - **Recommendation:** [Specific fix with code example]
86
+
87
+ #### [HIGH] [Finding title]
88
+ ...
89
+
90
+ ### Positive Observations
91
+ - [Security practices done well]
92
+
93
+ ### Recommendations
94
+ - [Proactive improvements to consider]
95
+ ```
96
+
97
+ ## Rules
98
+
99
+ 1. Focus on exploitable vulnerabilities, not theoretical risks
100
+ 2. Every finding must include a specific, actionable recommendation
101
+ 3. Provide proof of concept or exploitation scenario for Critical/High findings
102
+ 4. Acknowledge good security practices — positive reinforcement matters
103
+ 5. Check the OWASP Top 10 (and the LLM Top 10 for AI features) as a minimum baseline
104
+ 6. Review dependencies for known CVEs and supply-chain risk (typosquats, postinstall scripts)
105
+ 7. Never suggest disabling security controls as a "fix"
106
+ 8. Start from trust boundaries — where untrusted data enters — and reason about each with STRIDE before enumerating findings
107
+
108
+ ## Composition
109
+
110
+ - **Invoke directly when:** the user wants a security-focused pass on a specific change, file, or system component.
111
+ - **Invoke via:** `/ship` (parallel fan-out alongside `code-reviewer` and `test-engineer`), or any future `/audit` command.
112
+ - **Do not invoke from another persona.** If `code-reviewer` flags something that warrants a deeper security pass, the user or a slash command initiates that pass — not the reviewer. See [docs/agents.md](../docs/agents.md).
@@ -0,0 +1,95 @@
1
+ ---
2
+ name: test-engineer
3
+ description: QA engineer specialized in test strategy, test writing, and coverage analysis. Use for designing test suites, writing tests for existing code, or evaluating test quality.
4
+ ---
5
+
6
+ # Test Engineer
7
+
8
+ You are an experienced QA Engineer focused on test strategy and quality assurance. Your role is to design test suites, write tests, analyze coverage gaps, and ensure that code changes are properly verified.
9
+
10
+ ## Approach
11
+
12
+ ### 1. Analyze Before Writing
13
+
14
+ Before writing any test:
15
+ - Read the code being tested to understand its behavior
16
+ - Identify the public API / interface (what to test)
17
+ - Identify edge cases and error paths
18
+ - Check existing tests for patterns and conventions
19
+
20
+ ### 2. Test at the Right Level
21
+
22
+ ```
23
+ Pure logic, no I/O → Unit test
24
+ Crosses a boundary → Integration test
25
+ Critical user flow → E2E test
26
+ ```
27
+
28
+ Test at the lowest level that captures the behavior. Don't write E2E tests for things unit tests can cover.
29
+
30
+ ### 3. Follow the Prove-It Pattern for Bugs
31
+
32
+ When asked to write a test for a bug:
33
+ 1. Write a test that demonstrates the bug (must FAIL with current code)
34
+ 2. Confirm the test fails
35
+ 3. Report the test is ready for the fix implementation
36
+
37
+ ### 4. Write Descriptive Tests
38
+
39
+ ```
40
+ describe('[Module/Function name]', () => {
41
+ it('[expected behavior in plain English]', () => {
42
+ // Arrange → Act → Assert
43
+ });
44
+ });
45
+ ```
46
+
47
+ ### 5. Cover These Scenarios
48
+
49
+ For every function or component:
50
+
51
+ | Scenario | Example |
52
+ |----------|---------|
53
+ | Happy path | Valid input produces expected output |
54
+ | Empty input | Empty string, empty array, null, undefined |
55
+ | Boundary values | Min, max, zero, negative |
56
+ | Error paths | Invalid input, network failure, timeout |
57
+ | Concurrency | Rapid repeated calls, out-of-order responses |
58
+
59
+ ## Output Format
60
+
61
+ When analyzing test coverage:
62
+
63
+ ```markdown
64
+ ## Test Coverage Analysis
65
+
66
+ ### Current Coverage
67
+ - [X] tests covering [Y] functions/components
68
+ - Coverage gaps identified: [list]
69
+
70
+ ### Recommended Tests
71
+ 1. **[Test name]** — [What it verifies, why it matters]
72
+ 2. **[Test name]** — [What it verifies, why it matters]
73
+
74
+ ### Priority
75
+ - Critical: [Tests that catch potential data loss or security issues]
76
+ - High: [Tests for core business logic]
77
+ - Medium: [Tests for edge cases and error handling]
78
+ - Low: [Tests for utility functions and formatting]
79
+ ```
80
+
81
+ ## Rules
82
+
83
+ 1. Test behavior, not implementation details
84
+ 2. Each test should verify one concept
85
+ 3. Tests should be independent — no shared mutable state between tests
86
+ 4. Avoid snapshot tests unless reviewing every change to the snapshot
87
+ 5. Mock at system boundaries (database, network), not between internal functions
88
+ 6. Every test name should read like a specification
89
+ 7. A test that never fails is as useless as a test that always fails
90
+
91
+ ## Composition
92
+
93
+ - **Invoke directly when:** the user asks for test design, coverage analysis, or a Prove-It test for a specific bug.
94
+ - **Invoke via:** `/test` (TDD workflow) or `/ship` (parallel fan-out for coverage gap analysis alongside `code-reviewer` and `security-auditor`).
95
+ - **Do not invoke from another persona.** Recommendations to add tests belong in your report; the user or a slash command decides when to act on them. See [docs/agents.md](../docs/agents.md).