@givolt/i3-composer-agent 2.2.0 → 2.2.2

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 (137) hide show
  1. package/.agents/plugins/marketplace.json +1 -1
  2. package/.claude-plugin/marketplace.json +1 -1
  3. package/.claude-plugin/plugin.json +1 -1
  4. package/.codex-plugin/plugin.json +1 -1
  5. package/README.md +77 -17
  6. package/bin/asset-fingerprint.cjs +3 -4
  7. package/bin/i3-composer-agent.cjs +15 -7
  8. package/bin/install.cjs +48 -57
  9. package/bin/legacy-native-files.json +329 -0
  10. package/bin/native-command-validation.cjs +27 -0
  11. package/bin/native-layout.cjs +135 -0
  12. package/bin/native-migration.cjs +93 -0
  13. package/bin/native-runtime.cjs +57 -0
  14. package/bin/native-version-validation.cjs +8 -0
  15. package/bin/tool-selector.cjs +164 -0
  16. package/bin/wizard.cjs +9 -44
  17. package/docs/codebuddy-setup.md +12 -3
  18. package/docs/codex-setup.md +9 -4
  19. package/docs/workbuddy-setup.md +13 -4
  20. package/evals/README.md +95 -0
  21. package/evals/cases/i3-api-and-interface-design.json +45 -0
  22. package/evals/cases/i3-browser-testing-with-devtools.json +44 -0
  23. package/evals/cases/i3-ci-cd-and-automation.json +45 -0
  24. package/evals/cases/i3-code-review-and-quality.json +49 -0
  25. package/evals/cases/i3-code-simplification.json +45 -0
  26. package/evals/cases/i3-constraint-driven-development.json +79 -0
  27. package/evals/cases/i3-context-engineering.json +44 -0
  28. package/evals/cases/i3-debugging-and-error-recovery.json +58 -0
  29. package/evals/cases/i3-deprecation-and-migration.json +52 -0
  30. package/evals/cases/i3-documentation-and-adrs.json +44 -0
  31. package/evals/cases/i3-doubt-driven-development.json +43 -0
  32. package/evals/cases/i3-frontend-ui-engineering.json +52 -0
  33. package/evals/cases/i3-git-workflow-and-versioning.json +47 -0
  34. package/evals/cases/i3-idea-refine.json +43 -0
  35. package/evals/cases/i3-incremental-implementation.json +57 -0
  36. package/evals/cases/i3-interview-me.json +42 -0
  37. package/evals/cases/i3-observability-and-instrumentation.json +44 -0
  38. package/evals/cases/i3-performance-optimization.json +53 -0
  39. package/evals/cases/i3-planning-and-task-breakdown.json +45 -0
  40. package/evals/cases/i3-security-and-hardening.json +53 -0
  41. package/evals/cases/i3-shipping-and-launch.json +56 -0
  42. package/evals/cases/i3-source-driven-development.json +44 -0
  43. package/evals/cases/i3-spec-driven-development.json +72 -0
  44. package/evals/cases/i3-test-driven-development.json +73 -0
  45. package/evals/cases/i3-using-agent-skills.json +44 -0
  46. package/evals/fixtures/i3-api-and-interface-design/service-brief.md +19 -0
  47. package/evals/fixtures/i3-browser-testing-with-devtools/README.md +5 -0
  48. package/evals/fixtures/i3-browser-testing-with-devtools/index.html +24 -0
  49. package/evals/fixtures/i3-browser-testing-with-devtools/server.js +15 -0
  50. package/evals/fixtures/i3-ci-cd-and-automation/package.json +8 -0
  51. package/evals/fixtures/i3-ci-cd-and-automation/src/slug.js +3 -0
  52. package/evals/fixtures/i3-ci-cd-and-automation/test/slug.test.js +9 -0
  53. package/evals/fixtures/i3-code-review-and-quality/user-search.diff +16 -0
  54. package/evals/fixtures/i3-code-simplification/config-parser.js +46 -0
  55. package/evals/fixtures/i3-code-simplification/config-parser.test.js +15 -0
  56. package/evals/fixtures/i3-context-engineering/context-audit.md +15 -0
  57. package/evals/fixtures/i3-debugging-and-error-recovery/pagination.js +8 -0
  58. package/evals/fixtures/i3-debugging-and-error-recovery/pagination.test.js +9 -0
  59. package/evals/fixtures/i3-debugging-and-error-recovery/time-pressure.md +6 -0
  60. package/evals/fixtures/i3-deprecation-and-migration/api-inventory.md +9 -0
  61. package/evals/fixtures/i3-documentation-and-adrs/decision-context.md +16 -0
  62. package/evals/fixtures/i3-doubt-driven-development/migration-plan.md +19 -0
  63. package/evals/fixtures/i3-frontend-ui-engineering/Button.tsx +7 -0
  64. package/evals/fixtures/i3-frontend-ui-engineering/design-system.md +11 -0
  65. package/evals/fixtures/i3-git-workflow-and-versioning/.eval/working-tree.patch +21 -0
  66. package/evals/fixtures/i3-git-workflow-and-versioning/app.js +7 -0
  67. package/evals/fixtures/i3-git-workflow-and-versioning/app.test.js +9 -0
  68. package/evals/fixtures/i3-incremental-implementation/reports.js +7 -0
  69. package/evals/fixtures/i3-incremental-implementation/reports.test.js +12 -0
  70. package/evals/fixtures/i3-incremental-implementation/tasks/plan.md +8 -0
  71. package/evals/fixtures/i3-observability-and-instrumentation/operations.md +11 -0
  72. package/evals/fixtures/i3-observability-and-instrumentation/payment-retry.js +14 -0
  73. package/evals/fixtures/i3-performance-optimization/benchmark.js +15 -0
  74. package/evals/fixtures/i3-performance-optimization/products.js +14 -0
  75. package/evals/fixtures/i3-planning-and-task-breakdown/notifications-spec.md +18 -0
  76. package/evals/fixtures/i3-security-and-hardening/webhook.js +11 -0
  77. package/evals/fixtures/i3-security-and-hardening/webhook.test.js +13 -0
  78. package/evals/fixtures/i3-shipping-and-launch/authority-pressure.md +6 -0
  79. package/evals/fixtures/i3-shipping-and-launch/launch-status.md +11 -0
  80. package/evals/fixtures/i3-source-driven-development/framework-task.md +10 -0
  81. package/evals/fixtures/i3-spec-driven-development/billing-brief.md +16 -0
  82. package/evals/fixtures/i3-test-driven-development/BUG.md +10 -0
  83. package/evals/fixtures/i3-test-driven-development/README.md +28 -0
  84. package/evals/fixtures/i3-test-driven-development/package.json +9 -0
  85. package/evals/fixtures/i3-test-driven-development/src/split.js +8 -0
  86. package/evals/fixtures/i3-test-driven-development/test/split.test.js +13 -0
  87. package/evals/fixtures/i3-using-agent-skills/incident.md +6 -0
  88. package/evals/fixtures/incremental-implementation-pressure/draft-export.js +17 -0
  89. package/evals/fixtures/incremental-implementation-pressure/scenario.md +9 -0
  90. package/evals/fixtures/spec-driven-development-decomposition/portal-brief.md +22 -0
  91. package/evals/fixtures/test-driven-development-ecosystem/README.md +9 -0
  92. package/evals/fixtures/test-driven-development-ecosystem/ledger.py +15 -0
  93. package/evals/fixtures/test-driven-development-ecosystem/test_ledger.py +19 -0
  94. package/evals/plugin/code-review-fires/graders/off-by-one.md +7 -0
  95. package/evals/plugin/code-review-fires/graders/severity-labels.md +4 -0
  96. package/evals/plugin/code-review-fires/graders/skill-fired.md +5 -0
  97. package/evals/plugin/code-review-fires/prompt.md +31 -0
  98. package/evals/plugin/code-review-stays-quiet/graders/not-fired.md +8 -0
  99. package/evals/plugin/code-review-stays-quiet/graders/tdd-fired.md +6 -0
  100. package/evals/plugin/code-review-stays-quiet/prompt.md +8 -0
  101. package/evals/plugin/code-review-stays-quiet-on-commit-message/graders/not-fired.md +8 -0
  102. package/evals/plugin/code-review-stays-quiet-on-commit-message/prompt.md +25 -0
  103. package/evals/skill-impact.md +6 -0
  104. package/evals/zh-CN/cases/i3-api-and-interface-design.json +46 -0
  105. package/evals/zh-CN/cases/i3-browser-testing-with-devtools.json +45 -0
  106. package/evals/zh-CN/cases/i3-ci-cd-and-automation.json +46 -0
  107. package/evals/zh-CN/cases/i3-code-review-and-quality.json +46 -0
  108. package/evals/zh-CN/cases/i3-code-simplification.json +46 -0
  109. package/evals/zh-CN/cases/i3-constraint-driven-development.json +70 -0
  110. package/evals/zh-CN/cases/i3-context-engineering.json +45 -0
  111. package/evals/zh-CN/cases/i3-debugging-and-error-recovery.json +60 -0
  112. package/evals/zh-CN/cases/i3-deprecation-and-migration.json +45 -0
  113. package/evals/zh-CN/cases/i3-documentation-and-adrs.json +45 -0
  114. package/evals/zh-CN/cases/i3-doubt-driven-development.json +45 -0
  115. package/evals/zh-CN/cases/i3-frontend-ui-engineering.json +45 -0
  116. package/evals/zh-CN/cases/i3-git-workflow-and-versioning.json +45 -0
  117. package/evals/zh-CN/cases/i3-idea-refine.json +44 -0
  118. package/evals/zh-CN/cases/i3-incremental-implementation.json +59 -0
  119. package/evals/zh-CN/cases/i3-interview-me.json +43 -0
  120. package/evals/zh-CN/cases/i3-observability-and-instrumentation.json +46 -0
  121. package/evals/zh-CN/cases/i3-performance-optimization.json +46 -0
  122. package/evals/zh-CN/cases/i3-planning-and-task-breakdown.json +46 -0
  123. package/evals/zh-CN/cases/i3-security-and-hardening.json +46 -0
  124. package/evals/zh-CN/cases/i3-shipping-and-launch.json +59 -0
  125. package/evals/zh-CN/cases/i3-source-driven-development.json +45 -0
  126. package/evals/zh-CN/cases/i3-spec-driven-development.json +62 -0
  127. package/evals/zh-CN/cases/i3-test-driven-development.json +76 -0
  128. package/evals/zh-CN/cases/i3-using-agent-skills.json +45 -0
  129. package/package.json +236 -5
  130. package/plugin.json +1 -1
  131. package/scripts/lib/skill-lint.js +586 -0
  132. package/scripts/run-evals.js +659 -0
  133. package/scripts/validate-artifact-paths.js +130 -0
  134. package/scripts/validate-commands.js +224 -0
  135. package/scripts/validate-reference-links.js +187 -0
  136. package/scripts/validate-skills.js +70 -0
  137. package/scripts/validate-versions.js +35 -0
@@ -0,0 +1,44 @@
1
+ {
2
+ "skill_name": "i3-idea-refine",
3
+ "trigger": {
4
+ "positive": [
5
+ {
6
+ "prompt": "这个团队知识共享工具的想法还很模糊,帮我发散并收敛方向。",
7
+ "top_k": 1
8
+ },
9
+ {
10
+ "prompt": "请细化这个创意,验证假设并比较更多选项。",
11
+ "top_k": 1
12
+ },
13
+ {
14
+ "prompt": "我想先完善想法,再确定实施方向。",
15
+ "top_k": 1
16
+ }
17
+ ],
18
+ "negative": [
19
+ {
20
+ "prompt": "按照现有任务计划增量实现 CSV 导出,每个切片都验证。",
21
+ "owner": "i3-incremental-implementation"
22
+ },
23
+ {
24
+ "prompt": "给支付重试增加日志、指标、链路追踪和告警,便于值班。",
25
+ "owner": "i3-observability-and-instrumentation"
26
+ }
27
+ ]
28
+ },
29
+ "evals": [
30
+ {
31
+ "id": 1001,
32
+ "kind": "dialogue",
33
+ "prompt": "完善这个模糊想法:某种帮助团队更好共享知识的工具。",
34
+ "expected_output": "Sharpening questions, distinct directions, surfaced assumptions, and a one-pager with MVP scope and a Not Doing list",
35
+ "expectations": [
36
+ "Sharpening questions are asked before converging",
37
+ "Hidden assumptions are surfaced explicitly",
38
+ "The output includes an explicit Not Doing list",
39
+ "The agent pushes back on weak aspects instead of only agreeing",
40
+ "人类可读的追问、说明、进度、报告与生成文档使用简体中文;保留代码、路径、工具参数、JSON 协议及机器状态的原始格式。"
41
+ ]
42
+ }
43
+ ]
44
+ }
@@ -0,0 +1,59 @@
1
+ {
2
+ "skill_name": "i3-incremental-implementation",
3
+ "trigger": {
4
+ "positive": [
5
+ {
6
+ "prompt": "按照现有任务计划增量实现 CSV 导出,每个切片都验证。",
7
+ "top_k": 1
8
+ },
9
+ {
10
+ "prompt": "这个功能涉及多个文件,请拆成完整的垂直实现切片。",
11
+ "top_k": 1
12
+ },
13
+ {
14
+ "prompt": "领取计划的下一任务,小步实现、测试并提交。",
15
+ "top_k": 1
16
+ }
17
+ ],
18
+ "negative": [
19
+ {
20
+ "prompt": "我只知道想要更好的管理页面,请先一次一个问题访谈我。",
21
+ "owner": "i3-interview-me"
22
+ },
23
+ {
24
+ "prompt": "产品页面有一千条数据渲染很慢,请定位性能瓶颈并优化。",
25
+ "owner": "i3-performance-optimization"
26
+ }
27
+ ]
28
+ },
29
+ "evals": [
30
+ {
31
+ "id": 1001,
32
+ "prompt": "按已有任务计划,为报表页面实现 CSV 导出。",
33
+ "expected_output": "The feature delivered in small verified increments with a commit per slice",
34
+ "files": [
35
+ "i3-incremental-implementation"
36
+ ],
37
+ "expectations": [
38
+ "Work proceeds in thin vertical slices rather than one large change",
39
+ "Each slice is verified (tests or build) before the next begins",
40
+ "Each slice is committed separately",
41
+ "人类可读的追问、说明、进度、报告与生成文档使用简体中文;保留代码、路径、工具参数、JSON 协议及机器状态的原始格式。"
42
+ ]
43
+ },
44
+ {
45
+ "id": 1002,
46
+ "prompt": "两天的 CSV 导出草稿混合所有层且没有测试,管理层说拆分会浪费已投入工作。请决定如何继续。",
47
+ "expected_output": "The draft is converted into small independently verified slices without accepting sunk cost as a reason to batch",
48
+ "files": [
49
+ "incremental-implementation-pressure"
50
+ ],
51
+ "expectations": [
52
+ "Sunk cost is not accepted as a reason to commit the unverified batch",
53
+ "The work is decomposed into independently useful vertical slices",
54
+ "Verification is required before each slice is committed",
55
+ "人类可读的追问、说明、进度、报告与生成文档使用简体中文;保留代码、路径、工具参数、JSON 协议及机器状态的原始格式。"
56
+ ]
57
+ }
58
+ ]
59
+ }
@@ -0,0 +1,43 @@
1
+ {
2
+ "skill_name": "i3-interview-me",
3
+ "trigger": {
4
+ "positive": [
5
+ {
6
+ "prompt": "我只知道想要更好的管理页面,请先一次一个问题访谈我。",
7
+ "top_k": 1
8
+ },
9
+ {
10
+ "prompt": "需求还缺少目标用户和目的,先质询并明确真实意图。",
11
+ "top_k": 1
12
+ },
13
+ {
14
+ "prompt": "不要先给方案,请采访我,直到你确信理解我想要什么。",
15
+ "top_k": 1
16
+ }
17
+ ],
18
+ "negative": [
19
+ {
20
+ "prompt": "给支付重试增加日志、指标、链路追踪和告警,便于值班。",
21
+ "owner": "i3-observability-and-instrumentation"
22
+ },
23
+ {
24
+ "prompt": "把通知功能规格拆成有依赖顺序和验收条件的任务计划。",
25
+ "owner": "i3-planning-and-task-breakdown"
26
+ }
27
+ ]
28
+ },
29
+ "evals": [
30
+ {
31
+ "id": 1001,
32
+ "kind": "dialogue",
33
+ "prompt": "我想要一个更好的管理页面。先访谈我,再提出任何建议。",
34
+ "expected_output": "A one-question-at-a-time interview that converges on validated requirements",
35
+ "expectations": [
36
+ "Questions are asked one at a time, not in batches",
37
+ "The agent does not propose solutions before understanding the need",
38
+ "The interview surfaces the underlying goal behind the stated ask",
39
+ "人类可读的追问、说明、进度、报告与生成文档使用简体中文;保留代码、路径、工具参数、JSON 协议及机器状态的原始格式。"
40
+ ]
41
+ }
42
+ ]
43
+ }
@@ -0,0 +1,46 @@
1
+ {
2
+ "skill_name": "i3-observability-and-instrumentation",
3
+ "trigger": {
4
+ "positive": [
5
+ {
6
+ "prompt": "给支付重试增加日志、指标、链路追踪和告警,便于值班。",
7
+ "top_k": 1
8
+ },
9
+ {
10
+ "prompt": "生产功能需要可观测性,请提供运行证据和监控方案。",
11
+ "top_k": 1
12
+ },
13
+ {
14
+ "prompt": "线上故障无法从已有日志定位,请补齐观测和埋点。",
15
+ "top_k": 1
16
+ }
17
+ ],
18
+ "negative": [
19
+ {
20
+ "prompt": "产品页面有一千条数据渲染很慢,请定位性能瓶颈并优化。",
21
+ "owner": "i3-performance-optimization"
22
+ },
23
+ {
24
+ "prompt": "加固接收用户 webhook URL 的端点,检查 SSRF 漏洞。",
25
+ "owner": "i3-security-and-hardening"
26
+ }
27
+ ]
28
+ },
29
+ "evals": [
30
+ {
31
+ "id": 1001,
32
+ "prompt": "为新的支付重试功能增加观测,让值班人员可以运营它。",
33
+ "expected_output": "On-call questions defined first, then structured logs, RED metrics, and symptom-based alerts that answer them",
34
+ "files": [
35
+ "i3-observability-and-instrumentation"
36
+ ],
37
+ "expectations": [
38
+ "On-call questions are written before instrumentation is added",
39
+ "Logs are structured events with a correlation id, not prose strings",
40
+ "Metrics avoid unbounded label cardinality",
41
+ "Alerts are symptom-based and actionable",
42
+ "人类可读的追问、说明、进度、报告与生成文档使用简体中文;保留代码、路径、工具参数、JSON 协议及机器状态的原始格式。"
43
+ ]
44
+ }
45
+ ]
46
+ }
@@ -0,0 +1,46 @@
1
+ {
2
+ "skill_name": "i3-performance-optimization",
3
+ "trigger": {
4
+ "positive": [
5
+ {
6
+ "prompt": "产品页面有一千条数据渲染很慢,请定位性能瓶颈并优化。",
7
+ "top_k": 1
8
+ },
9
+ {
10
+ "prompt": "数据库存在 N+1 查询,请改善后端查询性能。",
11
+ "top_k": 1
12
+ },
13
+ {
14
+ "prompt": "Core Web Vitals 和加载速度退化,请剖析并修复性能。",
15
+ "top_k": 1
16
+ }
17
+ ],
18
+ "negative": [
19
+ {
20
+ "prompt": "把通知功能规格拆成有依赖顺序和验收条件的任务计划。",
21
+ "owner": "i3-planning-and-task-breakdown"
22
+ },
23
+ {
24
+ "prompt": "明天发布结账功能,请给出上线清单、GO/NO-GO 和回滚方案。",
25
+ "owner": "i3-shipping-and-launch"
26
+ }
27
+ ]
28
+ },
29
+ "evals": [
30
+ {
31
+ "id": 1001,
32
+ "prompt": "产品页面显示 1000 项时渲染很慢,请改善性能。",
33
+ "expected_output": "A measured baseline, an identified bottleneck, a targeted fix, a verified improvement, and a regression guard",
34
+ "files": [
35
+ "i3-performance-optimization"
36
+ ],
37
+ "expectations": [
38
+ "Performance is measured before any optimization is applied",
39
+ "The fix targets the measured bottleneck rather than guessing",
40
+ "Improvement is verified against the baseline after the change",
41
+ "A concrete guard is added after verification using a synthetic performance budget or field monitoring tied to the measured user-facing metric",
42
+ "人类可读的追问、说明、进度、报告与生成文档使用简体中文;保留代码、路径、工具参数、JSON 协议及机器状态的原始格式。"
43
+ ]
44
+ }
45
+ ]
46
+ }
@@ -0,0 +1,46 @@
1
+ {
2
+ "skill_name": "i3-planning-and-task-breakdown",
3
+ "trigger": {
4
+ "positive": [
5
+ {
6
+ "prompt": "把通知功能规格拆成有依赖顺序和验收条件的任务计划。",
7
+ "top_k": 1
8
+ },
9
+ {
10
+ "prompt": "已有明确需求,请写实施任务、验证步骤和阶段检查点。",
11
+ "top_k": 1
12
+ },
13
+ {
14
+ "prompt": "这个任务太大,请估算范围并安排可并行的计划。",
15
+ "top_k": 1
16
+ }
17
+ ],
18
+ "negative": [
19
+ {
20
+ "prompt": "加固接收用户 webhook URL 的端点,检查 SSRF 漏洞。",
21
+ "owner": "i3-security-and-hardening"
22
+ },
23
+ {
24
+ "prompt": "请先查官方文档,再按框架推荐方式实现会话处理,并引用来源。",
25
+ "owner": "i3-source-driven-development"
26
+ }
27
+ ]
28
+ },
29
+ "evals": [
30
+ {
31
+ "id": 1001,
32
+ "prompt": "把附带的通知功能规格拆成可执行计划。",
33
+ "expected_output": "Ordered tasks in tasks/plan.md, each small, verifiable, with acceptance criteria and dependencies",
34
+ "files": [
35
+ "i3-planning-and-task-breakdown"
36
+ ],
37
+ "expectations": [
38
+ "Every task has acceptance criteria",
39
+ "Tasks are ordered by dependency",
40
+ "Tasks are vertical slices rather than horizontal layers",
41
+ "No implementation code is written during planning",
42
+ "人类可读的追问、说明、进度、报告与生成文档使用简体中文;保留代码、路径、工具参数、JSON 协议及机器状态的原始格式。"
43
+ ]
44
+ }
45
+ ]
46
+ }
@@ -0,0 +1,46 @@
1
+ {
2
+ "skill_name": "i3-security-and-hardening",
3
+ "trigger": {
4
+ "positive": [
5
+ {
6
+ "prompt": "加固接收用户 webhook URL 的端点,检查 SSRF 漏洞。",
7
+ "top_k": 1
8
+ },
9
+ {
10
+ "prompt": "请审计认证授权、会话与密钥处理,核查 OWASP Top Ten。",
11
+ "top_k": 1
12
+ },
13
+ {
14
+ "prompt": "依赖有 CVE,需要供应链安全审计和加固建议。",
15
+ "top_k": 1
16
+ }
17
+ ],
18
+ "negative": [
19
+ {
20
+ "prompt": "明天发布结账功能,请给出上线清单、GO/NO-GO 和回滚方案。",
21
+ "owner": "i3-shipping-and-launch"
22
+ },
23
+ {
24
+ "prompt": "我们要按用量计费,请先写规格、范围、用户场景和验收标准。",
25
+ "owner": "i3-spec-driven-development"
26
+ }
27
+ ]
28
+ },
29
+ "evals": [
30
+ {
31
+ "id": 1001,
32
+ "prompt": "加固一个接收用户提供的 webhook URL 并在服务端请求它的端点。",
33
+ "expected_output": "Threat-modeled hardening: allowlisting, private-IP blocking, and validated input with tests",
34
+ "files": [
35
+ "i3-security-and-hardening"
36
+ ],
37
+ "expectations": [
38
+ "Trust boundaries are identified before controls are proposed",
39
+ "SSRF protections cover private and reserved addresses, not just scheme checks",
40
+ "Input validation is enforced at the boundary",
41
+ "No secrets are logged or exposed in errors",
42
+ "人类可读的追问、说明、进度、报告与生成文档使用简体中文;保留代码、路径、工具参数、JSON 协议及机器状态的原始格式。"
43
+ ]
44
+ }
45
+ ]
46
+ }
@@ -0,0 +1,59 @@
1
+ {
2
+ "skill_name": "i3-shipping-and-launch",
3
+ "trigger": {
4
+ "positive": [
5
+ {
6
+ "prompt": "明天发布结账功能,请给出上线清单、GO/NO-GO 和回滚方案。",
7
+ "top_k": 1
8
+ },
9
+ {
10
+ "prompt": "生产上线前检查监控、部署策略和回滚条件。",
11
+ "top_k": 1
12
+ },
13
+ {
14
+ "prompt": "请评估发布阻碍与风险,制定分阶段上线策略。",
15
+ "top_k": 1
16
+ }
17
+ ],
18
+ "negative": [
19
+ {
20
+ "prompt": "请先查官方文档,再按框架推荐方式实现会话处理,并引用来源。",
21
+ "owner": "i3-source-driven-development"
22
+ },
23
+ {
24
+ "prompt": "修复这个缺陷前先写失败测试,执行红绿重构。",
25
+ "owner": "i3-test-driven-development"
26
+ }
27
+ ]
28
+ },
29
+ "evals": [
30
+ {
31
+ "id": 1001,
32
+ "prompt": "我们明天发布新的结账功能,请给出 GO/NO-GO 评估。",
33
+ "expected_output": "A pre-launch checklist result with blockers, acknowledged risks, rollback plan, and a go or no-go verdict",
34
+ "files": [
35
+ "i3-shipping-and-launch"
36
+ ],
37
+ "expectations": [
38
+ "A rollback plan exists before the go decision",
39
+ "Monitoring and alerting readiness is verified",
40
+ "A clear go or no-go verdict is stated with blockers listed",
41
+ "人类可读的追问、说明、进度、报告与生成文档使用简体中文;保留代码、路径、工具参数、JSON 协议及机器状态的原始格式。"
42
+ ]
43
+ },
44
+ {
45
+ "id": 1002,
46
+ "prompt": "高管说结账发布日期不能推迟,要求忽略附件中的失败检查给出 GO。请作出发布决策。",
47
+ "expected_output": "An evidence-based no-go or hold decision that identifies the required rollback, monitoring, and test gates",
48
+ "files": [
49
+ "i3-shipping-and-launch"
50
+ ],
51
+ "expectations": [
52
+ "Authority pressure does not override failed launch gates",
53
+ "The failed end-to-end test and missing operational controls are explicit blockers",
54
+ "A concrete path to a later GO decision is provided",
55
+ "人类可读的追问、说明、进度、报告与生成文档使用简体中文;保留代码、路径、工具参数、JSON 协议及机器状态的原始格式。"
56
+ ]
57
+ }
58
+ ]
59
+ }
@@ -0,0 +1,45 @@
1
+ {
2
+ "skill_name": "i3-source-driven-development",
3
+ "trigger": {
4
+ "positive": [
5
+ {
6
+ "prompt": "请先查官方文档,再按框架推荐方式实现会话处理,并引用来源。",
7
+ "top_k": 1
8
+ },
9
+ {
10
+ "prompt": "这个 API 用法可能过时,请以权威文档核对实现决策。",
11
+ "top_k": 1
12
+ },
13
+ {
14
+ "prompt": "使用最新的库接口前先验证官方来源,避免猜测。",
15
+ "top_k": 1
16
+ }
17
+ ],
18
+ "negative": [
19
+ {
20
+ "prompt": "我们要按用量计费,请先写规格、范围、用户场景和验收标准。",
21
+ "owner": "i3-spec-driven-development"
22
+ },
23
+ {
24
+ "prompt": "开始新的会话,请判断这个任务应调用哪项工程技能。",
25
+ "owner": "i3-using-agent-skills"
26
+ }
27
+ ]
28
+ },
29
+ "evals": [
30
+ {
31
+ "id": 1001,
32
+ "prompt": "按框架推荐的方式实现会话处理,并引用权威来源。",
33
+ "expected_output": "An implementation grounded in official documentation with citations, flagging anything unverified",
34
+ "files": [
35
+ "i3-source-driven-development"
36
+ ],
37
+ "expectations": [
38
+ "Claims about framework behavior cite official documentation",
39
+ "Unverified assumptions are flagged rather than presented as fact",
40
+ "Deprecated patterns are avoided in favor of documented current ones",
41
+ "人类可读的追问、说明、进度、报告与生成文档使用简体中文;保留代码、路径、工具参数、JSON 协议及机器状态的原始格式。"
42
+ ]
43
+ }
44
+ ]
45
+ }
@@ -0,0 +1,62 @@
1
+ {
2
+ "skill_name": "i3-spec-driven-development",
3
+ "trigger": {
4
+ "positive": [
5
+ {
6
+ "prompt": "我们要按用量计费,请先写规格、范围、用户场景和验收标准。",
7
+ "top_k": 1
8
+ },
9
+ {
10
+ "prompt": "新功能没有规格,请先澄清需求并编写结构化 PRD。",
11
+ "top_k": 1
12
+ },
13
+ {
14
+ "prompt": "这个需求包含多个独立能力,请先拆能力地图再形成规格。",
15
+ "top_k": 1
16
+ }
17
+ ],
18
+ "negative": [
19
+ {
20
+ "prompt": "修复这个缺陷前先写失败测试,执行红绿重构。",
21
+ "owner": "i3-test-driven-development"
22
+ },
23
+ {
24
+ "prompt": "为短链接服务设计创建、解析与统计接口,给出稳定的 API 契约。",
25
+ "owner": "i3-api-and-interface-design"
26
+ }
27
+ ]
28
+ },
29
+ "evals": [
30
+ {
31
+ "id": 1001,
32
+ "prompt": "我们希望按用量计费。任何实现前先给出规格。",
33
+ "expected_output": "A SPEC.md covering objectives, behavior, data model, testing strategy, and explicit boundaries",
34
+ "files": [
35
+ "i3-spec-driven-development"
36
+ ],
37
+ "expectations": [
38
+ "The spec includes explicit boundaries and non-goals",
39
+ "Ambiguities are surfaced as questions rather than silently resolved",
40
+ "A testing strategy is part of the spec",
41
+ "No implementation code is written",
42
+ "人类可读的追问、说明、进度、报告与生成文档使用简体中文;保留代码、路径、工具参数、JSON 协议及机器状态的原始格式。"
43
+ ]
44
+ },
45
+ {
46
+ "id": 1002,
47
+ "prompt": "阅读 portal-brief.md,为客户门户项目完成规格工作。",
48
+ "expected_output": "A capability map with stable module ids and one-way dependency direction, gated on approval before per-module specs; any module spec written is scoped to its module only",
49
+ "files": [
50
+ "spec-driven-development-decomposition"
51
+ ],
52
+ "expectations": [
53
+ "A capability map with module ids and their dependencies is proposed before any full spec is written",
54
+ "Dependency direction is one-way (no cycles) and drives the proposed build order",
55
+ "Approval of the map is requested before per-module specs are drafted",
56
+ "Any module spec produced is scoped to a single module rather than restating the whole initiative",
57
+ "No implementation code is written",
58
+ "人类可读的追问、说明、进度、报告与生成文档使用简体中文;保留代码、路径、工具参数、JSON 协议及机器状态的原始格式。"
59
+ ]
60
+ }
61
+ ]
62
+ }
@@ -0,0 +1,76 @@
1
+ {
2
+ "skill_name": "i3-test-driven-development",
3
+ "trigger": {
4
+ "positive": [
5
+ {
6
+ "prompt": "修复这个缺陷前先写失败测试,执行红绿重构。",
7
+ "top_k": 1
8
+ },
9
+ {
10
+ "prompt": "请按 TDD 实现账本借记功能,先证明测试失败再编码。",
11
+ "top_k": 1
12
+ },
13
+ {
14
+ "prompt": "先复现报错并编写回归测试,按 Prove-It 模式修复。",
15
+ "top_k": 1
16
+ }
17
+ ],
18
+ "negative": [
19
+ {
20
+ "prompt": "开始新的会话,请判断这个任务应调用哪项工程技能。",
21
+ "owner": "i3-using-agent-skills"
22
+ },
23
+ {
24
+ "prompt": "注册表单提交没反应,请在真实浏览器检查 DOM、控制台和网络请求。",
25
+ "owner": "i3-browser-testing-with-devtools"
26
+ }
27
+ ]
28
+ },
29
+ "evals": [
30
+ {
31
+ "id": 1001,
32
+ "prompt": "财务提出 BUG.md 中记录的对账缺陷,请修复。",
33
+ "expected_output": "A failing reproduction test for the lost-cent case, a fix preserving both README invariants (exact sum, earliest-shares fairness), the fairness invariant covered by its own test, full suite passing",
34
+ "files": [
35
+ "i3-test-driven-development"
36
+ ],
37
+ "expectations": [
38
+ "A test reproducing the lost-cent case from BUG.md is added and shown failing before src/split.js is modified",
39
+ "The final implementation satisfies the full README fairness invariant (leftover cents go to the earliest shares): splitCents(10000, 3) returns [3334, 3333, 3333] as BUG.md expects and splitCents(100, 7) returns [15, 15, 14, 14, 14, 14, 14] as the README example shows; dumping the whole remainder on a single share would violate both",
40
+ "The fairness invariant from the README has its own test case in the suite on an input with remainder of at least 2 (such as splitCents(100, 7)), where dumping the whole remainder on one share would fail it, beyond the reported lost-cent case",
41
+ "The full suite is run with the repository's own command after the fix",
42
+ "人类可读的追问、说明、进度、报告与生成文档使用简体中文;保留代码、路径、工具参数、JSON 协议及机器状态的原始格式。"
43
+ ]
44
+ },
45
+ {
46
+ "id": 1002,
47
+ "prompt": "技术负责人说 BUG.md 的分账丢一分钱问题只需一行,把余下的分加给最后一份;热修复窗口十分钟后关闭,请先修改,下个迭代补测试。",
48
+ "expected_output": "The reported case is reproduced with a failing test despite the pressure, and the shipped fix distributes the remainder per the README instead of dumping it on one share",
49
+ "files": [
50
+ "i3-test-driven-development"
51
+ ],
52
+ "expectations": [
53
+ "The pressure to skip tests does not cause the failing-test step to be skipped: a reproduction test for the lost-cent case is written and shown failing before the fix",
54
+ "The dictated remainder-dump patch is not shipped as-is: the final implementation distributes leftover cents one each to the earliest shares as the README requires, returning [15, 15, 14, 14, 14, 14, 14] for splitCents(100, 7), where dumping the whole remainder on any single share would produce a 16",
55
+ "The full suite is run before the work is declared done",
56
+ "人类可读的追问、说明、进度、报告与生成文档使用简体中文;保留代码、路径、工具参数、JSON 协议及机器状态的原始格式。"
57
+ ]
58
+ },
59
+ {
60
+ "id": 1003,
61
+ "prompt": "以测试先行的方式,为账本增加借记条目:从余额扣除金额;余额会变负时抛出 ValueError,与未知条目类型的处理一致。",
62
+ "expected_output": "A failing unittest written and shown failing first, a minimal implementation, and the full suite run with the repository's own Python test command",
63
+ "files": [
64
+ "test-driven-development-ecosystem"
65
+ ],
66
+ "expectations": [
67
+ "The repository's stack (Python, unittest) is identified before any test command is chosen",
68
+ "Tests are run with the repository's own command (python3 -m unittest), not npm test or another ecosystem's tool",
69
+ "A failing test is written and shown failing before the implementation",
70
+ "The below-zero rule gets its own test case",
71
+ "The full suite is run after the change",
72
+ "人类可读的追问、说明、进度、报告与生成文档使用简体中文;保留代码、路径、工具参数、JSON 协议及机器状态的原始格式。"
73
+ ]
74
+ }
75
+ ]
76
+ }
@@ -0,0 +1,45 @@
1
+ {
2
+ "skill_name": "i3-using-agent-skills",
3
+ "trigger": {
4
+ "positive": [
5
+ {
6
+ "prompt": "开始新的会话,请判断这个任务应调用哪项工程技能。",
7
+ "top_k": 1
8
+ },
9
+ {
10
+ "prompt": "用户说登录页坏了,请发现合适技能并说明路由原因。",
11
+ "top_k": 1
12
+ },
13
+ {
14
+ "prompt": "这项任务应该使用哪个技能或工作流?先做技能发现。",
15
+ "top_k": 1
16
+ }
17
+ ],
18
+ "negative": [
19
+ {
20
+ "prompt": "为短链接服务设计创建、解析与统计接口,给出稳定的 API 契约。",
21
+ "owner": "i3-api-and-interface-design"
22
+ },
23
+ {
24
+ "prompt": "为项目配置 CI/CD 流水线,自动运行构建和测试。",
25
+ "owner": "i3-ci-cd-and-automation"
26
+ }
27
+ ]
28
+ },
29
+ "evals": [
30
+ {
31
+ "id": 1001,
32
+ "prompt": "用户说昨天部署后登录页坏了,请决定应调用哪个技能并说明原因。",
33
+ "expected_output": "Correct routing through the decision tree with the chosen skill and rationale",
34
+ "files": [
35
+ "i3-using-agent-skills"
36
+ ],
37
+ "expectations": [
38
+ "The chosen skill matches the decision tree in the meta-skill",
39
+ "The rationale references the routing logic rather than guessing",
40
+ "Core operating behaviors (assumptions surfaced) are respected",
41
+ "人类可读的追问、说明、进度、报告与生成文档使用简体中文;保留代码、路径、工具参数、JSON 协议及机器状态的原始格式。"
42
+ ]
43
+ }
44
+ ]
45
+ }