@givolt/i3-composer-agent 1.0.1 → 2.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 (238) hide show
  1. package/.agents/plugins/marketplace.json +1 -1
  2. package/.claude/commands/{build.md → i3-build.md} +10 -10
  3. package/.claude/commands/{code-simplify.md → i3-code-simplify.md} +2 -2
  4. package/.claude/commands/{constraints.md → i3-constraints.md} +4 -4
  5. package/.claude/commands/{plan.md → i3-plan.md} +1 -1
  6. package/.claude/commands/{review.md → i3-review.md} +3 -3
  7. package/.claude/commands/{ship.md → i3-ship.md} +4 -4
  8. package/.claude/commands/{spec.md → i3-spec.md} +1 -1
  9. package/.claude/commands/{test.md → i3-test.md} +2 -2
  10. package/.claude/commands/{webperf.md → i3-webperf.md} +1 -1
  11. package/.claude-plugin/marketplace.json +1 -1
  12. package/.claude-plugin/plugin.json +1 -1
  13. package/.codex-plugin/plugin.json +1 -1
  14. package/.gemini/commands/{build.toml → i3-build.toml} +10 -10
  15. package/.gemini/commands/{code-simplify.toml → i3-code-simplify.toml} +2 -2
  16. package/.gemini/commands/{constraints.toml → i3-constraints.toml} +4 -4
  17. package/.gemini/commands/{planning.toml → i3-planning.toml} +1 -1
  18. package/{commands/review.toml → .gemini/commands/i3-review.toml} +3 -3
  19. package/.gemini/commands/{ship.toml → i3-ship.toml} +4 -4
  20. package/.gemini/commands/{spec.toml → i3-spec.toml} +1 -1
  21. package/{commands/test.toml → .gemini/commands/i3-test.toml} +2 -2
  22. package/.gemini/commands/{webperf.toml → i3-webperf.toml} +1 -1
  23. package/README.md +72 -69
  24. package/agents/code-reviewer.md +2 -2
  25. package/agents/security-auditor.md +1 -1
  26. package/agents/test-engineer.md +1 -1
  27. package/agents/web-performance-auditor.md +3 -3
  28. package/bin/agent-targets.json +11 -0
  29. package/bin/asset-fingerprint.cjs +38 -0
  30. package/bin/cleanup-backups.cjs +16 -0
  31. package/bin/i3-composer-agent.cjs +29 -14
  32. package/bin/install.cjs +81 -19
  33. package/bin/native-content.cjs +29 -0
  34. package/bin/wizard.cjs +2 -1
  35. package/commands/{build.toml → i3-build.toml} +10 -10
  36. package/commands/{code-simplify.toml → i3-code-simplify.toml} +2 -2
  37. package/commands/{constraints.toml → i3-constraints.toml} +4 -4
  38. package/commands/{planning.toml → i3-planning.toml} +1 -1
  39. package/{.gemini/commands/review.toml → commands/i3-review.toml} +3 -3
  40. package/commands/{ship.toml → i3-ship.toml} +4 -4
  41. package/commands/{spec.toml → i3-spec.toml} +1 -1
  42. package/{.gemini/commands/test.toml → commands/i3-test.toml} +2 -2
  43. package/commands/{webperf.toml → i3-webperf.toml} +1 -1
  44. package/docs/adoption-guide.md +35 -35
  45. package/docs/agents.md +12 -12
  46. package/docs/antigravity-setup.md +14 -14
  47. package/docs/codebuddy-setup.md +27 -18
  48. package/docs/codex-setup.md +6 -6
  49. package/docs/commandcode-setup.md +5 -5
  50. package/docs/copilot-cli-setup.md +5 -5
  51. package/docs/copilot-setup.md +22 -22
  52. package/docs/cursor-setup.md +22 -22
  53. package/docs/gemini-cli-setup.md +26 -26
  54. package/docs/getting-started.md +36 -38
  55. package/docs/opencode-setup.md +31 -31
  56. package/docs/windsurf-setup.md +7 -7
  57. package/docs/workbuddy-setup.md +92 -0
  58. package/hooks/SDD-CACHE.md +3 -3
  59. package/hooks/SIMPLIFY-IGNORE.md +2 -2
  60. package/hooks/session-start-test.sh +1 -1
  61. package/hooks/session-start.sh +3 -3
  62. package/package.json +36 -20
  63. package/plugin.json +1 -1
  64. package/references/accessibility-checklist.md +1 -1
  65. package/references/definition-of-done.md +7 -7
  66. package/references/observability-checklist.md +3 -3
  67. package/references/orchestration-patterns.md +17 -17
  68. package/references/performance-checklist.md +2 -2
  69. package/references/security-checklist.md +1 -1
  70. package/references/testing-patterns.md +1 -1
  71. package/skills/{api-and-interface-design → i3-api-and-interface-design}/SKILL.md +2 -2
  72. package/skills/{browser-testing-with-devtools → i3-browser-testing-with-devtools}/SKILL.md +1 -1
  73. package/skills/{ci-cd-and-automation → i3-ci-cd-and-automation}/SKILL.md +2 -2
  74. package/skills/{code-review-and-quality → i3-code-review-and-quality}/SKILL.md +5 -5
  75. package/skills/{code-simplification → i3-code-simplification}/SKILL.md +1 -1
  76. package/skills/{constraint-driven-development → i3-constraint-driven-development}/SKILL.md +15 -15
  77. package/skills/{context-engineering → i3-context-engineering}/SKILL.md +1 -1
  78. package/skills/{debugging-and-error-recovery → i3-debugging-and-error-recovery}/SKILL.md +2 -2
  79. package/skills/{deprecation-and-migration → i3-deprecation-and-migration}/SKILL.md +2 -2
  80. package/skills/{documentation-and-adrs → i3-documentation-and-adrs}/SKILL.md +1 -1
  81. package/skills/{doubt-driven-development → i3-doubt-driven-development}/SKILL.md +8 -8
  82. package/skills/{frontend-ui-engineering → i3-frontend-ui-engineering}/SKILL.md +1 -1
  83. package/skills/{git-workflow-and-versioning → i3-git-workflow-and-versioning}/SKILL.md +4 -4
  84. package/skills/{idea-refine → i3-idea-refine}/SKILL.md +2 -2
  85. package/skills/{idea-refine → i3-idea-refine}/scripts/idea-refine.sh +1 -1
  86. package/skills/{incremental-implementation → i3-incremental-implementation}/SKILL.md +3 -3
  87. package/skills/{interview-me → i3-interview-me}/SKILL.md +12 -12
  88. package/skills/{observability-and-instrumentation → i3-observability-and-instrumentation}/SKILL.md +5 -5
  89. package/skills/{performance-optimization → i3-performance-optimization}/SKILL.md +1 -1
  90. package/skills/{performance-optimization → i3-performance-optimization}/references/optimization-patterns.md +1 -1
  91. package/skills/{planning-and-task-breakdown → i3-planning-and-task-breakdown}/SKILL.md +2 -2
  92. package/skills/{security-and-hardening → i3-security-and-hardening}/SKILL.md +3 -3
  93. package/skills/{security-and-hardening → i3-security-and-hardening}/references/hardening-patterns.md +1 -1
  94. package/skills/{shipping-and-launch → i3-shipping-and-launch}/SKILL.md +2 -2
  95. package/skills/{source-driven-development → i3-source-driven-development}/SKILL.md +2 -2
  96. package/skills/{spec-driven-development → i3-spec-driven-development}/SKILL.md +7 -7
  97. package/skills/{test-driven-development → i3-test-driven-development}/SKILL.md +2 -2
  98. package/skills/{using-agent-skills → i3-using-agent-skills}/SKILL.md +67 -67
  99. package/CHANGELOG.md +0 -34
  100. package/NOTICE.md +0 -14
  101. package/docs/advanced-per-agent-configuration.md +0 -70
  102. package/docs/comparison.md +0 -131
  103. package/docs/developer-onboarding.md +0 -116
  104. package/docs/skill-anatomy.md +0 -203
  105. package/evals/README.md +0 -101
  106. package/evals/cases/api-and-interface-design.json +0 -45
  107. package/evals/cases/browser-testing-with-devtools.json +0 -44
  108. package/evals/cases/ci-cd-and-automation.json +0 -45
  109. package/evals/cases/code-review-and-quality.json +0 -49
  110. package/evals/cases/code-simplification.json +0 -45
  111. package/evals/cases/constraint-driven-development.json +0 -79
  112. package/evals/cases/context-engineering.json +0 -44
  113. package/evals/cases/debugging-and-error-recovery.json +0 -58
  114. package/evals/cases/deprecation-and-migration.json +0 -52
  115. package/evals/cases/documentation-and-adrs.json +0 -44
  116. package/evals/cases/doubt-driven-development.json +0 -43
  117. package/evals/cases/frontend-ui-engineering.json +0 -52
  118. package/evals/cases/git-workflow-and-versioning.json +0 -47
  119. package/evals/cases/idea-refine.json +0 -43
  120. package/evals/cases/incremental-implementation.json +0 -57
  121. package/evals/cases/interview-me.json +0 -42
  122. package/evals/cases/observability-and-instrumentation.json +0 -44
  123. package/evals/cases/performance-optimization.json +0 -53
  124. package/evals/cases/planning-and-task-breakdown.json +0 -45
  125. package/evals/cases/security-and-hardening.json +0 -53
  126. package/evals/cases/shipping-and-launch.json +0 -56
  127. package/evals/cases/source-driven-development.json +0 -44
  128. package/evals/cases/spec-driven-development.json +0 -72
  129. package/evals/cases/test-driven-development.json +0 -73
  130. package/evals/cases/using-agent-skills.json +0 -44
  131. package/evals/fixtures/api-and-interface-design/service-brief.md +0 -19
  132. package/evals/fixtures/browser-testing-with-devtools/README.md +0 -5
  133. package/evals/fixtures/browser-testing-with-devtools/index.html +0 -24
  134. package/evals/fixtures/browser-testing-with-devtools/server.js +0 -15
  135. package/evals/fixtures/ci-cd-and-automation/package.json +0 -8
  136. package/evals/fixtures/ci-cd-and-automation/src/slug.js +0 -3
  137. package/evals/fixtures/ci-cd-and-automation/test/slug.test.js +0 -9
  138. package/evals/fixtures/code-review-and-quality/user-search.diff +0 -16
  139. package/evals/fixtures/code-simplification/config-parser.js +0 -46
  140. package/evals/fixtures/code-simplification/config-parser.test.js +0 -15
  141. package/evals/fixtures/context-engineering/context-audit.md +0 -15
  142. package/evals/fixtures/debugging-and-error-recovery/pagination.js +0 -8
  143. package/evals/fixtures/debugging-and-error-recovery/pagination.test.js +0 -9
  144. package/evals/fixtures/debugging-and-error-recovery/time-pressure.md +0 -6
  145. package/evals/fixtures/deprecation-and-migration/api-inventory.md +0 -9
  146. package/evals/fixtures/documentation-and-adrs/decision-context.md +0 -16
  147. package/evals/fixtures/doubt-driven-development/migration-plan.md +0 -19
  148. package/evals/fixtures/frontend-ui-engineering/Button.tsx +0 -7
  149. package/evals/fixtures/frontend-ui-engineering/design-system.md +0 -11
  150. package/evals/fixtures/git-workflow-and-versioning/.eval/working-tree.patch +0 -21
  151. package/evals/fixtures/git-workflow-and-versioning/app.js +0 -7
  152. package/evals/fixtures/git-workflow-and-versioning/app.test.js +0 -9
  153. package/evals/fixtures/incremental-implementation/reports.js +0 -7
  154. package/evals/fixtures/incremental-implementation/reports.test.js +0 -12
  155. package/evals/fixtures/incremental-implementation/tasks/plan.md +0 -8
  156. package/evals/fixtures/incremental-implementation-pressure/draft-export.js +0 -17
  157. package/evals/fixtures/incremental-implementation-pressure/scenario.md +0 -9
  158. package/evals/fixtures/observability-and-instrumentation/operations.md +0 -11
  159. package/evals/fixtures/observability-and-instrumentation/payment-retry.js +0 -14
  160. package/evals/fixtures/performance-optimization/benchmark.js +0 -15
  161. package/evals/fixtures/performance-optimization/products.js +0 -14
  162. package/evals/fixtures/planning-and-task-breakdown/notifications-spec.md +0 -18
  163. package/evals/fixtures/security-and-hardening/webhook.js +0 -11
  164. package/evals/fixtures/security-and-hardening/webhook.test.js +0 -13
  165. package/evals/fixtures/shipping-and-launch/authority-pressure.md +0 -6
  166. package/evals/fixtures/shipping-and-launch/launch-status.md +0 -11
  167. package/evals/fixtures/source-driven-development/framework-task.md +0 -10
  168. package/evals/fixtures/spec-driven-development/billing-brief.md +0 -16
  169. package/evals/fixtures/spec-driven-development-decomposition/portal-brief.md +0 -22
  170. package/evals/fixtures/test-driven-development/BUG.md +0 -10
  171. package/evals/fixtures/test-driven-development/README.md +0 -28
  172. package/evals/fixtures/test-driven-development/package.json +0 -9
  173. package/evals/fixtures/test-driven-development/src/split.js +0 -8
  174. package/evals/fixtures/test-driven-development/test/split.test.js +0 -13
  175. package/evals/fixtures/test-driven-development-ecosystem/README.md +0 -9
  176. package/evals/fixtures/test-driven-development-ecosystem/ledger.py +0 -15
  177. package/evals/fixtures/test-driven-development-ecosystem/test_ledger.py +0 -19
  178. package/evals/fixtures/using-agent-skills/incident.md +0 -6
  179. package/evals/plugin/code-review-fires/graders/off-by-one.md +0 -7
  180. package/evals/plugin/code-review-fires/graders/severity-labels.md +0 -4
  181. package/evals/plugin/code-review-fires/graders/skill-fired.md +0 -5
  182. package/evals/plugin/code-review-fires/prompt.md +0 -31
  183. package/evals/plugin/code-review-stays-quiet/graders/not-fired.md +0 -8
  184. package/evals/plugin/code-review-stays-quiet/graders/tdd-fired.md +0 -6
  185. package/evals/plugin/code-review-stays-quiet/prompt.md +0 -8
  186. package/evals/plugin/code-review-stays-quiet-on-commit-message/graders/not-fired.md +0 -8
  187. package/evals/plugin/code-review-stays-quiet-on-commit-message/prompt.md +0 -25
  188. package/evals/skill-impact.md +0 -6
  189. package/rebrand/INSTALLATION-SPEC.md +0 -46
  190. package/rebrand/MAINTENANCE.md +0 -113
  191. package/rebrand/NOTICE.md +0 -14
  192. package/rebrand/PR-WORKFLOW.md +0 -34
  193. package/rebrand/UNIFICATION-SPEC.md +0 -33
  194. package/rebrand/VALIDATION.md +0 -32
  195. package/rebrand/VERSIONING.md +0 -33
  196. package/rebrand/apply.cjs +0 -194
  197. package/rebrand/brand.json +0 -13
  198. package/rebrand/catalog.cjs +0 -56
  199. package/rebrand/fork-patches.json +0 -12
  200. package/rebrand/overlay/.github/workflows/test-plugin-install.yml +0 -177
  201. package/rebrand/overlay/CHANGELOG.md +0 -34
  202. package/rebrand/overlay/bin/agent-targets.json +0 -726
  203. package/rebrand/overlay/bin/i3-composer-agent.cjs +0 -190
  204. package/rebrand/overlay/bin/install.cjs +0 -164
  205. package/rebrand/overlay/bin/skills-registry.LICENSE +0 -21
  206. package/rebrand/overlay/bin/wizard.cjs +0 -66
  207. package/rebrand/overlay/scripts/validate-brand.cjs +0 -44
  208. package/rebrand/overlay/tests/bundle.test.cjs +0 -85
  209. package/rebrand/overlay/tests/installer.test.cjs +0 -193
  210. package/rebrand/package.template.json +0 -82
  211. package/rebrand/rebrand.sh +0 -4
  212. package/rebrand/record-upstream.cjs +0 -37
  213. package/rebrand/templates/README.md +0 -124
  214. package/rebrand/templates/codebuddy-setup.md +0 -88
  215. package/rebrand/templates/codex-setup.md +0 -45
  216. package/rebrand/tests/pipeline.test.cjs +0 -185
  217. package/rebrand/upstream.json +0 -171
  218. package/scripts/floor-guard-reference-test.js +0 -291
  219. package/scripts/lib/skill-lint-test.js +0 -650
  220. package/scripts/lib/skill-lint.js +0 -584
  221. package/scripts/run-evals-test.js +0 -623
  222. package/scripts/run-evals.js +0 -638
  223. package/scripts/validate-artifact-paths-test.js +0 -179
  224. package/scripts/validate-artifact-paths.js +0 -128
  225. package/scripts/validate-brand.cjs +0 -44
  226. package/scripts/validate-commands-test.js +0 -216
  227. package/scripts/validate-commands.js +0 -222
  228. package/scripts/validate-reference-links-test.js +0 -495
  229. package/scripts/validate-reference-links.js +0 -187
  230. package/scripts/validate-skills.js +0 -69
  231. package/scripts/validate-versions-test.js +0 -32
  232. package/scripts/validate-versions.js +0 -35
  233. package/tests/bundle.test.cjs +0 -85
  234. package/tests/installer.test.cjs +0 -193
  235. /package/skills/{constraint-driven-development → i3-constraint-driven-development}/references/floor-guard.md +0 -0
  236. /package/skills/{idea-refine → i3-idea-refine}/examples.md +0 -0
  237. /package/skills/{idea-refine → i3-idea-refine}/frameworks.md +0 -0
  238. /package/skills/{idea-refine → i3-idea-refine}/refinement-criteria.md +0 -0
@@ -1,10 +0,0 @@
1
- # Session implementation task
2
-
3
- Implement server-side sessions for an Express 5 application. The project uses
4
- `express-session` and must follow the currently documented production approach
5
- for proxy settings, secure cookies, session stores, and secret configuration.
6
-
7
- Ground behavioral claims in official Express or `express-session`
8
- documentation and cite the exact pages used. Do not rely on remembered Express
9
- 4 defaults. Flag any deployment-specific assumption that cannot be verified
10
- from the repository or official documentation.
@@ -1,16 +0,0 @@
1
- # Usage-based billing brief
2
-
3
- The product currently charges one flat monthly price. Leadership wants usage-
4
- based billing next quarter, but “usage” has not been defined. Candidate meters
5
- include API requests, processed records, and successful jobs.
6
-
7
- Known constraints:
8
-
9
- - Existing customers need a migration path.
10
- - Billing events must be auditable and idempotent.
11
- - Late-arriving events occur for up to seven days.
12
- - Finance requires invoice reconciliation.
13
-
14
- Unknowns include pricing tiers, free allowances, meter ownership, correction
15
- rules, customer-facing usage visibility, and regional tax behavior. Produce a
16
- spec and surface these decisions; do not implement them by assumption.
@@ -1,22 +0,0 @@
1
- # Customer portal — product brief
2
-
3
- Leadership wants a self-serve customer portal shipped as one initiative. The
4
- request, as handed down:
5
-
6
- - Customers sign in with email/password or company SSO and manage their
7
- account and team members.
8
- - Customers pick a plan, enter payment details, and receive monthly invoices;
9
- plan changes prorate.
10
- - Customers get email notifications for invoices, payment failures, and team
11
- invitations; enterprise customers can register webhooks for the same events.
12
- - Admins see a usage dashboard: seats, API calls, and spend per month.
13
-
14
- Constraints gathered so far:
15
-
16
- - Billing must know who the customer is, so it depends on account data.
17
- - Notifications fire on billing and account events.
18
- - The dashboard reads from billing and notification delivery records.
19
- - The four areas have different reviewers: platform owns accounts, finance
20
- owns billing, and growth owns notifications and the dashboard.
21
- - Each area should be shippable and verifiable on its own; finance wants to
22
- sign off on billing without waiting for the dashboard.
@@ -1,10 +0,0 @@
1
- # Bug report: cents lost on three-way splits
2
-
3
- From finance reconciliation (ticket FIN-482):
4
-
5
- > Splitting $100.00 three ways returns `[3333, 3333, 3333]`. That sums to
6
- > $99.99, one cent short. Reconciliation flags every three-way invoice we
7
- > processed this month.
8
-
9
- Reproduces with `splitCents(10000, 3)`: expected `[3334, 3333, 3333]`
10
- (sums to 10000), got `[3333, 3333, 3333]` (sums to 9999).
@@ -1,28 +0,0 @@
1
- # split-payment
2
-
3
- Utility for splitting an amount of money among `n` participants without
4
- losing or inventing cents. Amounts are integer cents throughout; the
5
- library never touches floating point.
6
-
7
- ## API
8
-
9
- `splitCents(totalCents, n)` returns an array of `n` integer cent amounts.
10
- `totalCents` is a non-negative integer, `n` is a positive integer.
11
-
12
- ## Invariants
13
-
14
- Every result must satisfy both invariants, for every input:
15
-
16
- 1. **Exactness** — the shares sum to exactly `totalCents`. Money is never
17
- lost or created.
18
- 2. **Fairness** — no two shares differ by more than one cent. When the
19
- total does not divide evenly, the leftover cents go to the earliest
20
- shares, one cent each.
21
-
22
- For example, `splitCents(100, 7)` is `[15, 15, 14, 14, 14, 14, 14]`.
23
-
24
- ## Tests
25
-
26
- ```
27
- npm test
28
- ```
@@ -1,9 +0,0 @@
1
- {
2
- "name": "split-payment",
3
- "version": "1.2.0",
4
- "description": "Splits an amount in integer cents into fair shares.",
5
- "private": true,
6
- "scripts": {
7
- "test": "node --test"
8
- }
9
- }
@@ -1,8 +0,0 @@
1
- 'use strict';
2
-
3
- function splitCents(totalCents, n) {
4
- const share = Math.floor(totalCents / n);
5
- return Array.from({ length: n }, () => share);
6
- }
7
-
8
- module.exports = { splitCents };
@@ -1,13 +0,0 @@
1
- 'use strict';
2
-
3
- const assert = require('node:assert/strict');
4
- const test = require('node:test');
5
- const { splitCents } = require('../src/split');
6
-
7
- test('splits an evenly divisible total into equal shares', () => {
8
- assert.deepEqual(splitCents(10000, 4), [2500, 2500, 2500, 2500]);
9
- });
10
-
11
- test('a single participant receives the whole total', () => {
12
- assert.deepEqual(splitCents(500, 1), [500]);
13
- });
@@ -1,9 +0,0 @@
1
- # Ledger
2
-
3
- Small Python ledger utilities. No dependencies beyond the standard library.
4
-
5
- Run the tests:
6
-
7
- ```
8
- python3 -m unittest
9
- ```
@@ -1,15 +0,0 @@
1
- """Simple in-memory ledger utilities."""
2
-
3
-
4
- def apply_entries(balance, entries):
5
- """Apply entries to a starting balance and return the result.
6
-
7
- Entries are (kind, amount) tuples. Only "credit" entries are
8
- supported; anything else raises ValueError.
9
- """
10
- for kind, amount in entries:
11
- if kind == "credit":
12
- balance += amount
13
- else:
14
- raise ValueError(f"unsupported entry kind: {kind}")
15
- return balance
@@ -1,19 +0,0 @@
1
- import unittest
2
-
3
- from ledger import apply_entries
4
-
5
-
6
- class ApplyEntriesTest(unittest.TestCase):
7
- def test_applies_a_single_credit(self):
8
- self.assertEqual(apply_entries(100, [("credit", 25)]), 125)
9
-
10
- def test_applies_multiple_credits_in_order(self):
11
- self.assertEqual(apply_entries(0, [("credit", 10), ("credit", 5)]), 15)
12
-
13
- def test_rejects_unknown_entry_kinds(self):
14
- with self.assertRaises(ValueError):
15
- apply_entries(0, [("transfer", 10)])
16
-
17
-
18
- if __name__ == "__main__":
19
- unittest.main()
@@ -1,6 +0,0 @@
1
- # Login regression report
2
-
3
- The login page began returning HTTP 500 after yesterday's deployment. The
4
- request reaches the authentication callback, then fails before a session cookie
5
- is written. There is no confirmed root cause yet. The user asked for help
6
- getting login working again, not for a new authentication design.
@@ -1,7 +0,0 @@
1
- ---
2
- type: llm
3
- ---
4
-
5
- PASS if the review points out that `rows.slice(start, start + size - 1)` returns one row fewer than `size` on every page (the end index of slice is exclusive) and treats it as something that must be fixed before merge, for example by labelling it Critical or leaving it unprefixed as a required change.
6
-
7
- FAIL if the review does not mention that pages come back one row short, or files that finding as a Nit, Optional, Consider, or FYI.
@@ -1,4 +0,0 @@
1
- ---
2
- type: regex
3
- pattern: '(^|\n)#{1,6} *(Critical|Required|Nit|Optional|Consider|FYI)\b|\b(Critical|Required|Nit|Optional|Consider|FYI):'
4
- ---
@@ -1,5 +0,0 @@
1
- ---
2
- type: tool_used
3
- tool: Skill
4
- input_match: '"skill"\s*:\s*"(?:[\w-]+:)?(code-review-and-quality|review)"'
5
- ---
@@ -1,31 +0,0 @@
1
- ---
2
- description: A review request that names the axes, with a small diff inline. The skill should fire (through the review command or directly) and the reply should carry its severity labels.
3
- expected_outcome: A structured review with a verdict, findings labelled with the skill's severity taxonomy, and the off-by-one in pageOrders treated as a required change.
4
- max_turns: 12
5
- allowed_tools: [Read, Glob, Grep, Skill]
6
- ---
7
-
8
- I want a code review of this diff across correctness, readability, security and performance before merging. It adds paging to the orders endpoint.
9
-
10
- ```diff
11
- diff --git a/src/orders.js b/src/orders.js
12
- --- a/src/orders.js
13
- +++ b/src/orders.js
14
- @@ -12,3 +12,15 @@ function listOrders(db) {
15
- return db.query('SELECT * FROM orders ORDER BY created_at DESC');
16
- }
17
- -module.exports = { listOrders };
18
- +function pageOrders(db, page, size) {
19
- + const rows = db.query('SELECT * FROM orders ORDER BY created_at DESC');
20
- + const start = (page - 1) * size;
21
- + return rows.slice(start, start + size - 1);
22
- +}
23
- +
24
- +app.get('/orders', (req, res) => {
25
- + const page = Number(req.query.page) || 1;
26
- + const size = Number(req.query.size) || 20;
27
- + res.json(pageOrders(db, page, size));
28
- +});
29
- +
30
- +module.exports = { listOrders, pageOrders };
31
- ```
@@ -1,8 +0,0 @@
1
- ---
2
- type: tool_used
3
- tool: Skill
4
- input_match: '"skill"\s*:\s*"(?:[\w-]+:)?(code-review-and-quality|review)"'
5
- min: 0
6
- max: 0
7
- arm: both
8
- ---
@@ -1,6 +0,0 @@
1
- ---
2
- type: tool_used
3
- tool: Skill
4
- input_match: '"skill"\s*:\s*"(?:[\w-]+:)?(test-driven-development|test)"'
5
- arm: with-only
6
- ---
@@ -1,8 +0,0 @@
1
- ---
2
- description: A test-first request that belongs to test-driven-development. The review skill must not fire.
3
- expected_outcome: The reply proposes a failing test first; code-review-and-quality is never invoked.
4
- max_turns: 12
5
- allowed_tools: [Read, Glob, Grep, Skill]
6
- ---
7
-
8
- Write a failing test for this bug before we fix it: splitCents(100, 3) returns [33, 33, 33] and a cent goes missing.
@@ -1,8 +0,0 @@
1
- ---
2
- type: tool_used
3
- tool: Skill
4
- input_match: '"skill"\s*:\s*"(?:[\w-]+:)?(code-review-and-quality|review)"'
5
- min: 0
6
- max: 0
7
- arm: both
8
- ---
@@ -1,25 +0,0 @@
1
- ---
2
- description: A pasted diff with a request that belongs to git-workflow-and-versioning. Guards the "even when the diff is pasted inline" clause of the review skill's description, since a pasted diff alone must not make the review skill fire.
3
- expected_outcome: A commit message; code-review-and-quality is never invoked.
4
- max_turns: 12
5
- allowed_tools: [Read, Glob, Grep, Skill]
6
- ---
7
-
8
- Write me a commit message for this diff.
9
-
10
- ```diff
11
- diff --git a/src/orders.js b/src/orders.js
12
- --- a/src/orders.js
13
- +++ b/src/orders.js
14
- @@ -12,3 +12,9 @@ function listOrders(db) {
15
- return db.query('SELECT * FROM orders ORDER BY created_at DESC');
16
- }
17
- -module.exports = { listOrders };
18
- +function pageOrders(db, page, size) {
19
- + const rows = db.query('SELECT * FROM orders ORDER BY created_at DESC');
20
- + const start = (page - 1) * size;
21
- + return rows.slice(start, start + size);
22
- +}
23
- +
24
- +module.exports = { listOrders, pageOrders };
25
- ```
@@ -1,6 +0,0 @@
1
- # Rejected Skill Changes
2
-
3
- This append-only ledger records skill and description changes rejected on eval evidence so contributors can review prior attempts before proposing overlapping work. Add one concise row per rejected proposal; do not record accepted changes here.
4
-
5
- | Date | Affected skill | Attempted change | Rank-1 score (before → after) | Rejected PR and outcome |
6
- |---|---|---|---:|---|
@@ -1,46 +0,0 @@
1
- # Installation wizard correction
2
-
3
- The published 1.0.0 CLI prepares plugin files but does not implement the
4
- installation wizard previously described to the user. Restore the promised
5
- installation flow, including the user's confirmed multiple-tool selection and
6
- CodeBuddy desktop IDE target.
7
-
8
- ## Acceptance contract
9
-
10
- - Running the package in an interactive terminal opens a tool multi-select,
11
- project/global scope selection, destination summary, and confirmation.
12
- - Host flags preselect tools rather than silently preparing a plugin. The tool
13
- catalog preserves the installation paths from the pinned Vercel Skills CLI
14
- registry; CodeBuddy, Codex, Claude Code, Cursor and other tools remain choices.
15
- - Native installation copies all skills and their shared references. CodeBuddy
16
- and Claude Code also receive the nine existing command workflows and personas.
17
- Portable command references use the installed stable skill IDs.
18
- - Shared destinations are installed once when several tools use the same path.
19
- - Existing assets require confirmed replacement and are retained in backups.
20
- Unrelated settings and project files are untouched. Failed installation rolls
21
- back completed writes; cancellation and dry runs write nothing.
22
- - `--prepare`, `--extract`, and existing explicit `--dir` calls retain complete
23
- plugin preparation. Plain `--version` remains machine-readable.
24
- - Noninteractive installation requires explicit tools, scope and `--yes`;
25
- replacement additionally requires `--force`.
26
- - Packaging tests exercise the shipped CLI; a real terminal session verifies
27
- the wizard. File discovery and actual model execution are separate evidence.
28
-
29
- ## Implementation and verification
30
-
31
- Keep upstream content unchanged on `agent/source`; all fork changes live under
32
- `rebrand/`. Distribution modules and tests are replayed from `rebrand/overlay/`.
33
- Use Node.js built-ins and the existing `node:test` conventions. No new runtime
34
- dependency is required. Keep the upstream baseline at 0.6.12 and the release
35
- version at 1.0.0 during development. Recommend and obtain the user's approval
36
- for a new release version before changing it or publishing.
37
-
38
- On 2026-10-07 the user accepted the recommended 1.0.1 correction release and
39
- authorized publication. The upstream baseline remains 0.6.12.
40
-
41
- Slices: first prove native multi-tool installation fails on the published CLI;
42
- then implement directory planning and copying; then add the interactive flow;
43
- finally verify conflicts, rollback, package extraction and terminal execution.
44
-
45
- Commands: `node --test tests/installer.test.cjs`, `npm test`, `npm run validate`,
46
- `npm run rebrand:check`, and `npm pack` in a generated branded candidate.
@@ -1,113 +0,0 @@
1
- # i3 Composer Agent 仓库维护
2
-
3
- 本指南只适用于 Agent 仓库;GSD / i3 Composer Work 是另一个独立仓库。
4
- 这里借鉴其维护方式,不复用其源码、安装产物或 Git 分支。
5
-
6
- ## 仓库和分支
7
-
8
- - 品牌仓库:`https://github.com/49780522/i3-composer-agent`(Private)。
9
- - `origin` 指向品牌仓库;`upstream` 指向 `https://github.com/addyosmani/agent-skills.git`。
10
- - `agent/source`:原始上游源码与名称,加本项目 `rebrand/` 工具和规则。
11
- - `main`:经过重放与验证的品牌快照;npm 身份为 `@givolt/i3-composer-agent`。
12
- - `i3-composer-agent-v0.6.12`:已经发布的首次包所对应的原始品牌提交。
13
-
14
- 源码工作树为 `/Users/howard/Workspace/composer-skills-source/agent-source`;
15
- 品牌工作树为 `/Users/howard/Workspace/composer-skills-source/agent-skills`。
16
- 旧的 Agent 本地 `i3/source` 分支已改为 `agent/source`,避免与 GSD 分支名称混淆。
17
-
18
- ## 获取源码
19
-
20
- ```bash
21
- git clone https://github.com/49780522/i3-composer-agent.git
22
- cd i3-composer-agent
23
- git remote add upstream https://github.com/addyosmani/agent-skills.git
24
- git fetch upstream --tags
25
- git worktree add --track -b agent/source ../agent-source origin/agent/source
26
- ```
27
-
28
- 源分支没有发行用的根 package.json。包入口、发行测试和配置由
29
- `rebrand/overlay/`、`package.template.json` 在品牌候选中生成。
30
-
31
- ## 同步上游
32
-
33
- 1. 在 Agent 源工作树获取上游,选择并审查一个明确的版本或提交。
34
- 2. 从 `agent/source` 创建维护分支,合并该 ref 并解决源码冲突。
35
- 3. 从同一 ref 记录上游目录和 Skill frontmatter;审查记录中的新增、删除和描述变化。
36
- 4. 调整文字补丁、分发 overlay 和品牌模板;源码分支保持原始名称。
37
- 5. 运行源验证,提交维护分支,通过 PR 合入 `agent/source`。
38
- 6. 从更新后的源分支创建独立品牌候选工作树,重放、验证和打包。
39
- 7. 将验证过的品牌快照通过发行 PR 更新 `main`;npm 发布单独执行。
40
-
41
- 源维护阶段示例(把示例分支和 ref 替换为实际选定值):
42
-
43
- ```bash
44
- cd /Users/howard/Workspace/composer-skills-source/agent-source
45
- git fetch upstream --tags
46
- git switch -c sync/upstream-next agent/source
47
- git merge --no-commit --no-ff upstream/main
48
- # 审查并处理源码冲突后:
49
- node rebrand/record-upstream.cjs upstream/main
50
- node --test scripts/*-test.js scripts/lib/*-test.js rebrand/tests/*.test.cjs
51
- ```
52
-
53
- 记录工具读取 Git 对象中的上游文件,写入 `upstream.json` 和 `brand.json` 的基线。
54
- 它不会把任意本地新增文件认定为上游。发布版本由 `brand.json.releaseVersion`
55
- 控制,与 `upstream.json.upstreamVersion` 分开;按实际更改递增,保持六份清单一致。
56
-
57
- 品牌版本从 `1.0.0` 开始使用独立编号;本次仅修改 i3,上游基线保留为 `0.6.12`。
58
- 之后的当前基线以 `upstream.json` 记录为准。
59
- 仅修改 i3 的修复或分发规则时,只递增品牌版本;上游版本和提交保持原值。
60
- README、CLI 帮助和准备完成提示同时显示这两个版本;`--version` 保留单一品牌版本输出。
61
- 具体规则与历史版本处理见 [VERSIONING.md](VERSIONING.md)。
62
-
63
- ## 创建品牌候选
64
-
65
- 从源分支创建候选,每次换一个分支名和独立目录:
66
-
67
- ```bash
68
- cd /Users/howard/Workspace/composer-skills-source/agent-skills
69
- git fetch origin
70
- git worktree add -b release/agent-next ../agent-candidate origin/agent/source
71
- cd ../agent-candidate
72
- bash rebrand/rebrand.sh --apply
73
- bash rebrand/rebrand.sh --check
74
- npm run validate
75
- npm test
76
- node scripts/run-evals.js --min-rank1 95
77
- bash hooks/session-start-test.sh
78
- bash hooks/sdd-cache-test.sh
79
- bash hooks/simplify-ignore-test.sh
80
- mkdir -p ../releases/next
81
- npm pack --pack-destination ../releases/next
82
- ```
83
-
84
- 在打包前先创建输出目录。对 tarball 重新解包,验证 CLI、完整文件目录及宿主清单。
85
- 源码分支上执行 `--apply` 会在写入前失败;不得把未经重放的源分支直接更新到 `main`。
86
- 源 PR 与发行 PR 的边界见 [PR-WORKFLOW.md](PR-WORKFLOW.md)。
87
-
88
- ## 审查重放规则
89
-
90
- - `fork-patches.json`:明确的文字补丁,源文本不再匹配时失败,要求人工适配。
91
- - `overlay/`:本项目的 npm CLI、发行测试、品牌校验和发行 CI;上游相关文件改变时需合并审查。
92
- - `templates/`:品牌 README 和安装指南;上游对应说明改变时同步模板。
93
- - 目录数量、Skill 表、命令表和插件描述由已记录的目录生成,不固定为 25/9。
94
- - Skill frontmatter 保留原文;校验比较换行规范化后的哈希,兼容 LF/CRLF 检出。
95
- - LICENSE、NOTICE、真实上游链接、历史评估说明和标准名称保留。
96
- - 如果上游新增根 package.json,重放会失败,先适配分发配置和依赖再继续。
97
-
98
- ## 发布及验收
99
-
100
- 维护流程与安装能力分开验收。默认 npm CLI 使用多工具安装向导;`--prepare`
101
- 保留完整插件准备和宿主注册提示。两种模式分别验收,不把准备文件等同于安装。
102
- 实际宿主安装范围、启用、命令执行以及交互向导仍需各自验证。
103
- Codex 的生命周期斜杠命令适配是独立工作,已有 Skill ID 不因维护流程改名。
104
-
105
- 发布审核通过后,发布已经测过的 tarball,先使用试用标签,完成 registry 安装验证后再更新 latest:
106
-
107
- ```bash
108
- npm publish /absolute/path/to/reviewed-package.tgz --access public --tag next
109
- npm dist-tag add @givolt/i3-composer-agent@<reviewed-version> latest
110
- ```
111
-
112
- 每个已发布包名和版本只用一次。GitHub Actions 与 GSD 品牌仓库一样先保持关闭,
113
- 适配并验证 CI 后再启用。当前验证范围见 [VALIDATION.md](VALIDATION.md)。
package/rebrand/NOTICE.md DELETED
@@ -1,14 +0,0 @@
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 installation CLI.
9
- The original skill IDs, command workflows, and persona definitions are retained.
10
-
11
- The tool installation directory presets in `bin/agent-targets.json` are adapted
12
- from Vercel's [Skills CLI registry](https://github.com/vercel-labs/skills/blob/48dc9e8eb8aa19040e91cb90ba0b642c9cbad57e/src/agents.ts)
13
- at commit `48dc9e8eb8aa19040e91cb90ba0b642c9cbad57e`. Copyright (c) 2026
14
- Vercel, Inc. Its MIT license is retained in `bin/skills-registry.LICENSE`.
@@ -1,34 +0,0 @@
1
- # Agent 源码与发行 PR
2
-
3
- 此流程只操作 49780522/i3-composer-agent。GSD 仓库只是维护方法的参考。
4
-
5
- 源码、修复和重放规则的 PR 以 `agent/source` 为 base,从该分支创建维护分支。
6
- 保持上游文件的原始名称;本项目分发工具放在 `rebrand/`。
7
-
8
- ```bash
9
- git fetch origin
10
- git worktree add -b fix/my-change ../agent-fix origin/agent/source
11
- cd ../agent-fix
12
- node --test scripts/*-test.js scripts/lib/*-test.js rebrand/tests/*.test.cjs
13
- ```
14
-
15
- 修改重放规则后,从维护提交另建品牌候选并执行 MAINTENANCE.md 中的完整验证。
16
- 审查和暂存本次文件后提交,再推送并创建源码 PR:
17
-
18
- ```bash
19
- git push -u origin fix/my-change
20
- gh pr create --base agent/source --head fix/my-change
21
- ```
22
-
23
- 源码 PR 合入后,从最新 `agent/source` 建立候选,重放、验证、打包并提交品牌内容。
24
- 发行 PR 以 `main` 为 base;head 必须包含验证后的品牌快照。
25
-
26
- 当 main 和源候选历史产生合并冲突时,从 main 创建发行 PR 分支,合入已验证的
27
- 品牌候选并审查冲突。最终跟踪文件树必须与验证过的候选一致,然后提交:
28
-
29
- ```bash
30
- git diff --cached <validated-candidate-commit>
31
- ```
32
-
33
- 上述差异应为空。若合并中需要实际代码调整,重新验证调整后的发行内容和 tarball。
34
- 不要把原始 agent/source 直接作为发行 PR 的 head;不向 upstream 推送品牌提交。
@@ -1,33 +0,0 @@
1
- # Agent 项目维护流程统一
2
-
3
- 用户已确认借鉴 GSD 项目维护方式,并要求项目互相独立。本规范只约束 Agent 仓库。
4
-
5
- ## 目标与边界
6
-
7
- - `upstream` 指向 addyosmani/agent-skills;`origin` 指向私有品牌仓库 49780522/i3-composer-agent。
8
- - `agent/source` 保留上游原始名称和源码,在 `rebrand/` 保存本项目的分发工具与转换规则。
9
- - 候选从 `agent/source` 创建,在候选中重放;`main` 保存经过验证的品牌快照。
10
- - GSD 仓库只读,不使用它的源码、分支或安装产物。
11
- - Skill ID、流程命令内容、Persona、参考文件和 MIT 来源署名保持既有契约。
12
- - 本次完善源码同步和品牌重放;交互安装向导、Codex 命令适配及新的 npm 发布独立处理。
13
-
14
- ## 实现与命令
15
-
16
- 转换入口保持 Node.js 20+ 和零依赖:`node rebrand/apply.cjs --apply|--check`;另提供与 GSD 相同形式的 `bash rebrand/rebrand.sh` 入口。
17
-
18
- 上游基线由 `node rebrand/record-upstream.cjs <明确的 ref>` 从 Git 对象记录;源码分支上运行 `node --test rebrand/tests/*.test.cjs`。候选执行 `npm run validate`、`npm test` 和既有路由/hook 检查。
19
-
20
- 代码沿用 CommonJS、Node 内置 fs/path/assert。分发专属文件放在 `rebrand/overlay/`,发行包配置由模板生成,不把 branded README 或清单混入源码分支。
21
-
22
- ## 验收条件
23
-
24
- 1. 从干净上游源码及本项目规则能生成完整品牌包,重复重放不产生差异。
25
- 2. 在 `agent/source` 上执行写入式重放必须失败且不修改源码。
26
- 3. 记录上游新增 Skill/Command 后能生成相应清单和说明;删失或改写已记录 Skill ID 时校验失败。
27
- 4. 上游的 25 个 Skill frontmatter、24 个非元 Skill、4 个 Persona、7 个共享参考保持原始内容;9 个流程只变品牌命名空间。
28
- 5. 本地候选通过完整测试,并从打包结果运行 CLI 与校验。
29
- 6. 独立品牌仓库中的源/发行分支及远程关系正确;首次发布标签保持原来的 0.6.12 提交。
30
-
31
- ## 执行顺序
32
-
33
- 先为源到品牌的重放、源码保护、目录增长与完整性写失败测试;实现工具及模板生成;验证真实上游归档;提交源分支;生成并审查品牌候选;最后建立远程并同步分支。
@@ -1,32 +0,0 @@
1
- # Agent 维护流程验收合同
2
-
3
- 本合同对应 UNIFICATION-SPEC.md;完整执行记录写入每次的审计或发布目录。
4
-
5
- ## 源维护
6
-
7
- - 上游 ref 是明确的 Git 提交;目录与 frontmatter 从该 ref 的对象记录。
8
- - `agent/source` 的上游文件保留原始名称与内容;本项目新增文件限定在 rebrand/。
9
- - 重放在源码分支上写入前失败。
10
- - 重放规则改变时,运行 rebrand/tests/pipeline.test.cjs 并验证源候选到品牌的完整路径。
11
-
12
- ## 品牌候选
13
-
14
- - Skill、命令、Persona、references 和全部已记录普通运行文件与上游目录一致。
15
- - Skill frontmatter 的名称和字段内容保持;换行差异不作为字段变更。
16
- - 新增上游 Skill/Command 能进入目录、品牌说明和打包;缺失内容会失败。
17
- - 文字补丁失去匹配时必须失败,不能静默遗漏。
18
- - 重放后 --check 成功,完整 Node、路由与 hook 检查通过。
19
- - npm package、插件和市场身份一致;六份版本一致。
20
- - 品牌修复能独立递增发行版本,保留上游目录记录原文;包来源元数据与该记录一致。
21
- - README、CLI 帮助和准备提示显示品牌版本与上游基线;--version 保持单一品牌版本输出。
22
- - 打包后从压缩包重新验证完整布局、CLI 和宿主清单。
23
-
24
- ## 证据边界
25
-
26
- 源或包校验不等于 registry 发布,也不等于实际宿主启用和模型执行。
27
- 英文确定性 TF-IDF 路由分数不能代替中文或真实模型行为验收。
28
- 安装向导、宿主范围、升级和移除沿用安装遗漏审计的独立验收项。
29
-
30
- 交互安装修复必须覆盖多工具选择、项目/全局目录、共享 references、命令与
31
- Persona 文件、冲突保护、备份、失败回滚和取消不写入。对打包后的 CLI 运行
32
- 真实终端向导,不能用 bundle 准备测试代替;安装文件也不等于 IDE 或模型验收。
@@ -1,33 +0,0 @@
1
- # i3 Composer Agent 版本规则
2
-
3
- 本规则已经用户确认,仅适用于 i3 Composer Agent 仓库。
4
-
5
- | 信息 | 权威来源 | 当前发行值 |
6
- | --- | --- | --- |
7
- | i3 发行版本 | brand.json 的 releaseVersion | 1.0.1 |
8
- | 上游版本 | upstream.json 的 upstreamVersion | 0.6.12 |
9
- | 上游提交 | upstream.json 的 upstreamCommit | 1401c8b8030e023baeebb31781a6653fe8e93026 |
10
-
11
- 品牌版本采用独立的 major.minor.patch 编号。1.0.0 是这套编号的起点;
12
- 兼容的 i3 修复递增 patch,兼容的新功能递增 minor,需要使用者调整用法的变更递增 major。
13
- 实际同步上游并审查选定提交后,才用 record-upstream.cjs 更新上游版本与提交。
14
- 上游版本变动不自动决定品牌版本;品牌版本根据本次发行的实际变化确定。
15
-
16
- 重放将品牌版本写入 npm 包和插件清单,把上游版本、提交及仓库写入
17
- package.json 的 i3ComposerAgent 来源字段。package.template.json 不保存发行版本,
18
- 发行版本统一由 brand.json 生成。
19
-
20
- README、CLI 帮助和准备完成提示显示:
21
-
22
- ```text
23
- i3 Composer Agent v1.0.1
24
- Based on agent-skills v0.6.12
25
- ```
26
-
27
- 在上述例子中,--version 输出 1.0.1,保留脚本使用的单一版本格式。--dry-run 的 JSON
28
- 分别提供 version、upstreamVersion、upstreamCommit。
29
-
30
- 已经发布的 @givolt/i3-composer-agent@0.6.12 及其 Git 标签作为历史记录保留。
31
- 之前的 0.6.13 是未发布候选,新的独立版本候选替代它。
32
- 1.0.0 已发布。1.0.1 用于修复安装向导遗漏,版本与发布已由用户确认。
33
- 源码与打包验证不代表 npm 发布;发布仍按 MAINTENANCE.md 单独执行。