@ccoalm/ccl-skills 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (561) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +49 -0
  3. package/dist/assets/marketplace/.agents/plugins/marketplace.json +12 -0
  4. package/dist/assets/marketplace/.claude-plugin/marketplace.json +13 -0
  5. package/dist/assets/marketplace/marketplace-manifest.json +12 -0
  6. package/dist/assets/marketplace/plugins/ccl-skills/.claude-plugin/marketplace.json +16 -0
  7. package/dist/assets/marketplace/plugins/ccl-skills/.claude-plugin/plugin.json +5 -0
  8. package/dist/assets/marketplace/plugins/ccl-skills/.codex-plugin/plugin.json +5 -0
  9. package/dist/assets/marketplace/plugins/ccl-skills/.worktree-only +3 -0
  10. package/dist/assets/marketplace/plugins/ccl-skills/agent-context/session-start.md +45 -0
  11. package/dist/assets/marketplace/plugins/ccl-skills/agent-context/subagent-start.md +12 -0
  12. package/dist/assets/marketplace/plugins/ccl-skills/hooks/AGENTS.md +19 -0
  13. package/dist/assets/marketplace/plugins/ccl-skills/hooks/guard-delegation-owner.sh +125 -0
  14. package/dist/assets/marketplace/plugins/ccl-skills/hooks/guard-edit-isolation.sh +102 -0
  15. package/dist/assets/marketplace/plugins/ccl-skills/hooks/guard-merge-authorization.sh +1156 -0
  16. package/dist/assets/marketplace/plugins/ccl-skills/hooks/hooks.json +131 -0
  17. package/dist/assets/marketplace/plugins/ccl-skills/hooks/merge-authorization-prompt.sh +142 -0
  18. package/dist/assets/marketplace/plugins/ccl-skills/hooks/owner-dispatch-guard.sh +12 -0
  19. package/dist/assets/marketplace/plugins/ccl-skills/hooks/owner-dispatch-stop.sh +13 -0
  20. package/dist/assets/marketplace/plugins/ccl-skills/hooks/remind-post-merge-cleanup.sh +144 -0
  21. package/dist/assets/marketplace/plugins/ccl-skills/hooks/session-context.sh +87 -0
  22. package/dist/assets/marketplace/plugins/ccl-skills/hooks/session-start.sh +86 -0
  23. package/dist/assets/marketplace/plugins/ccl-skills/hooks/skill-extraction-gate-stop.sh +69 -0
  24. package/dist/assets/marketplace/plugins/ccl-skills/hooks/subagent-start.sh +26 -0
  25. package/dist/assets/marketplace/plugins/ccl-skills/hooks/test_guard_delegation_owner.sh +329 -0
  26. package/dist/assets/marketplace/plugins/ccl-skills/hooks/test_guard_edit_isolation.sh +322 -0
  27. package/dist/assets/marketplace/plugins/ccl-skills/hooks/test_guard_merge_authorization.sh +902 -0
  28. package/dist/assets/marketplace/plugins/ccl-skills/hooks/test_merge_authorization_prompt.sh +178 -0
  29. package/dist/assets/marketplace/plugins/ccl-skills/hooks/test_remind_post_merge_cleanup.sh +121 -0
  30. package/dist/assets/marketplace/plugins/ccl-skills/hooks/test_session_start.sh +170 -0
  31. package/dist/assets/marketplace/plugins/ccl-skills/packages/opencode-plugin/AGENTS.md +17 -0
  32. package/dist/assets/marketplace/plugins/ccl-skills/packages/opencode-plugin/ccl-skills.ts +564 -0
  33. package/dist/assets/marketplace/plugins/ccl-skills/packages/opencode-plugin/commands/ccl-install-skills.md +14 -0
  34. package/dist/assets/marketplace/plugins/ccl-skills/packages/opencode-plugin/commands/ccl-update-skills.md +44 -0
  35. package/dist/assets/marketplace/plugins/ccl-skills/packages/opencode-plugin/commands/ccl-verify-skills.md +109 -0
  36. package/dist/assets/marketplace/plugins/ccl-skills/packages/opencode-plugin/commands/ccl-worktree-check.md +36 -0
  37. package/dist/assets/marketplace/plugins/ccl-skills/scripts/owner-dispatch/AGENTS.md +28 -0
  38. package/dist/assets/marketplace/plugins/ccl-skills/scripts/owner-dispatch/README.md +276 -0
  39. package/dist/assets/marketplace/plugins/ccl-skills/scripts/owner-dispatch/owner-dispatch.example.json +10 -0
  40. package/dist/assets/marketplace/plugins/ccl-skills/scripts/owner-dispatch/owner-dispatch.sh +1307 -0
  41. package/dist/assets/marketplace/plugins/ccl-skills/scripts/owner-dispatch/test.sh +941 -0
  42. package/dist/assets/marketplace/plugins/ccl-skills/skills/agents-file-coverage-gate/SKILL.md +45 -0
  43. package/dist/assets/marketplace/plugins/ccl-skills/skills/agents-file-coverage-gate/agents/openai.yaml +4 -0
  44. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/SKILL.md +188 -0
  45. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/agents/openai.yaml +4 -0
  46. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/references/android-dev.md +92 -0
  47. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/references/flutter-dev.md +80 -0
  48. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/references/ios-dev.md +72 -0
  49. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/references/kotlin-multiplatform.md +93 -0
  50. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/references/mobile-platform-boundaries.md +77 -0
  51. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/references/mobile-quality-release.md +77 -0
  52. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/references/source-evidence-map.md +64 -0
  53. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/SKILL.md +353 -0
  54. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/agents/openai.yaml +4 -0
  55. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/references/client-routing.md +419 -0
  56. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/references/manual-invocation-and-prompts.md +126 -0
  57. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/references/staged-review-contract.md +197 -0
  58. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/references/timeout-auth-and-capabilities.md +179 -0
  59. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/AGENTS.md +98 -0
  60. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/classify_envelope.py +93 -0
  61. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/classify_timeout_exit.sh +15 -0
  62. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/claude_review.sh +1438 -0
  63. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/codex_review.sh +324 -0
  64. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/concern_excerpt.py +295 -0
  65. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/egress_schema.py +214 -0
  66. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/init_policy_matrix.py +642 -0
  67. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/kimi_packet_mcp.py +181 -0
  68. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/kimi_review.sh +1165 -0
  69. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/opencode_review.sh +1190 -0
  70. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/parse_cli_review.py +946 -0
  71. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/parse_opencode_review.py +474 -0
  72. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/parse_probe_result.py +1899 -0
  73. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/parse_review_json.py +200 -0
  74. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/review_gate.py +2845 -0
  75. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/review_gate.sh +6 -0
  76. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/run_claude_capture.py +71 -0
  77. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/runtime-surface-verification-design.md +53 -0
  78. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_classify_envelope.sh +68 -0
  79. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_claude_review_probe.sh +2311 -0
  80. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_cli_review_wrappers.sh +1832 -0
  81. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_code_review_identity.sh +73 -0
  82. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_concern_excerpt.sh +245 -0
  83. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_egress_schema.sh +177 -0
  84. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_init_policy_matrix.sh +272 -0
  85. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_kimi_packet_mcp.py +195 -0
  86. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_opencode_review_concurrency.sh +120 -0
  87. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_opencode_review_retry.sh +1005 -0
  88. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_parse_opencode_review.sh +258 -0
  89. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_parse_probe_result.sh +574 -0
  90. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_parse_review_json.sh +349 -0
  91. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_review_client_compat.py +434 -0
  92. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_review_client_order.sh +264 -0
  93. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_review_gate.sh +2412 -0
  94. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/verify_native_skill_binding.py +123 -0
  95. package/dist/assets/marketplace/plugins/ccl-skills/skills/defect-diagnosis/SKILL.md +153 -0
  96. package/dist/assets/marketplace/plugins/ccl-skills/skills/defect-diagnosis/agents/openai.yaml +4 -0
  97. package/dist/assets/marketplace/plugins/ccl-skills/skills/defect-diagnosis/references/diagnosis-playbook.md +54 -0
  98. package/dist/assets/marketplace/plugins/ccl-skills/skills/defect-diagnosis/references/prevention-routing.md +36 -0
  99. package/dist/assets/marketplace/plugins/ccl-skills/skills/feature-risk-router/SKILL.md +69 -0
  100. package/dist/assets/marketplace/plugins/ccl-skills/skills/feature-risk-router/agents/openai.yaml +4 -0
  101. package/dist/assets/marketplace/plugins/ccl-skills/skills/feature-risk-router/references/security-review-gate.md +41 -0
  102. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/SKILL.md +165 -0
  103. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/agents/openai.yaml +4 -0
  104. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/api-security-boundaries.md +47 -0
  105. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/architecture-playbook.md +160 -0
  106. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/artifact-generation-architecture.md +37 -0
  107. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/audit-history-architecture.md +29 -0
  108. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/bulk-workflow-architecture.md +33 -0
  109. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/config-rule-routing-architecture.md +34 -0
  110. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/cross-cutting-concerns.md +72 -0
  111. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/data-modeling-and-migrations.md +79 -0
  112. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/data-platform-architecture.md +210 -0
  113. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/dependency-platform.md +105 -0
  114. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/developer-tooling-architecture.md +38 -0
  115. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/error-contract-architecture.md +36 -0
  116. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/event-driven-architecture.md +260 -0
  117. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/http-gateway-architecture.md +74 -0
  118. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/mq-consumer-architecture.md +38 -0
  119. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/multi-tenant-isolation.md +275 -0
  120. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/notification-architecture.md +25 -0
  121. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/ops-checklist.md +57 -0
  122. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/performance-capacity-architecture.md +38 -0
  123. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/protobuf-contract-architecture.md +119 -0
  124. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/redis-cache-coordination.md +93 -0
  125. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/release-runtime-readiness.md +65 -0
  126. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/replay-comparison-architecture.md +26 -0
  127. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/runtime-observability.md +94 -0
  128. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/service-scaffold.md +76 -0
  129. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/source-evidence-map.md +55 -0
  130. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/workflow-state-architecture.md +38 -0
  131. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/SKILL.md +159 -0
  132. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/agents/openai.yaml +4 -0
  133. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/artifact-generation-patterns.md +37 -0
  134. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/audit-history-patterns.md +28 -0
  135. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/bulk-import-export-patterns.md +56 -0
  136. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/config-rule-routing-patterns.md +38 -0
  137. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/data-access-patterns.md +55 -0
  138. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/db-schema-and-dal-patterns.md +109 -0
  139. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/dependency-client-patterns.md +130 -0
  140. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/developer-tooling-patterns.md +70 -0
  141. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/domain-feature-patterns.md +78 -0
  142. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/engineering-patterns.md +119 -0
  143. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/error-contract-patterns.md +55 -0
  144. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/feature-playbook.md +61 -0
  145. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/http-gateway-client-patterns.md +76 -0
  146. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/mq-consumer-patterns.md +55 -0
  147. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/notification-patterns.md +42 -0
  148. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/observability-implementation-patterns.md +101 -0
  149. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/performance-capacity-patterns.md +44 -0
  150. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/protobuf-contract-patterns.md +72 -0
  151. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/public-api-integration-patterns.md +56 -0
  152. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/quality-and-testing-patterns.md +91 -0
  153. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/redis-cache-lock-patterns.md +123 -0
  154. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/release-ops-patterns.md +112 -0
  155. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/reliability-patterns.md +83 -0
  156. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/replay-comparison-patterns.md +32 -0
  157. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/scaffold-and-codegen.md +86 -0
  158. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/source-evidence-map.md +54 -0
  159. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/state-machine-task-patterns.md +45 -0
  160. package/dist/assets/marketplace/plugins/ccl-skills/skills/grill-me/SKILL.md +80 -0
  161. package/dist/assets/marketplace/plugins/ccl-skills/skills/grill-me/agents/openai.yaml +4 -0
  162. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/SKILL.md +117 -0
  163. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/agents/openai.yaml +4 -0
  164. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-approval-auto-reviewer.md +106 -0
  165. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-command-sandbox.md +441 -0
  166. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-context-freshness.md +47 -0
  167. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-credentials-auth.md +13 -0
  168. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-extensions-skills.md +13 -0
  169. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-file-edit-protocol.md +129 -0
  170. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-ide-integration.md +5 -0
  171. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-input-ingestion.md +13 -0
  172. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-instruction-composition.md +13 -0
  173. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-lifecycle-hooks.md +92 -0
  174. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-messaging.md +5 -0
  175. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-runtime-bootstrap.md +5 -0
  176. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-session-persistence.md +448 -0
  177. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-task-orchestration.md +13 -0
  178. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-tool-dispatch.md +123 -0
  179. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-turn-lifecycle.md +131 -0
  180. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/inference-capacity-operations.md +162 -0
  181. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/llm-client-gateway.md +156 -0
  182. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/model-prompt-evaluation.md +146 -0
  183. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/retrieval-agent-safety.md +273 -0
  184. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/SKILL.md +202 -0
  185. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/agents/openai.yaml +4 -0
  186. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/references/contracts-and-state.md +62 -0
  187. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/references/cross-stack-alignment.md +94 -0
  188. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/references/framework-choice.md +76 -0
  189. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/references/online-practice-uptake.md +56 -0
  190. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/references/platform-capabilities.md +91 -0
  191. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/references/product-page-checklist.md +40 -0
  192. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/references/qa-release.md +72 -0
  193. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/references/source-evidence-map.md +82 -0
  194. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-agent-delegation/SKILL.md +103 -0
  195. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-agent-delegation/agents/openai.yaml +5 -0
  196. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-agent-delegation/references/multi-agent-delegation-playbook.md +100 -0
  197. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-perspective-research/SKILL.md +70 -0
  198. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-perspective-research/agents/openai.yaml +4 -0
  199. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-perspective-research/references/public-data-acquisition.md +549 -0
  200. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-perspective-research/references/public-disclosure-channels.md +97 -0
  201. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-perspective-research/references/research-prompts.md +66 -0
  202. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-perspective-research/scripts/AGENTS.md +32 -0
  203. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-perspective-research/scripts/test-public-data-acquisition-recipes.sh +379 -0
  204. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/SKILL.md +244 -0
  205. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/agents/openai.yaml +4 -0
  206. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/alerting-and-on-call.md +76 -0
  207. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/framework-middleware-checklist.md +142 -0
  208. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/infra-component-deployment.md +268 -0
  209. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/log-correlation-recipe.md +124 -0
  210. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/log-schema-canonical.md +208 -0
  211. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/metrics-conventions.md +105 -0
  212. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/obs-stack-architecture.md +107 -0
  213. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/sli-slo-design.md +95 -0
  214. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/source-register.md +11 -0
  215. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/SKILL.md +303 -0
  216. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/agents/openai.yaml +4 -0
  217. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/canary-and-rollout-strategy.md +163 -0
  218. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/config-center-via-etcd.md +245 -0
  219. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/custom-control-plane-boundary.md +298 -0
  220. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/deploy-cli-concrete-recipe.md +312 -0
  221. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/deploy-pipeline.md +165 -0
  222. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/env-and-lane-matrix.md +126 -0
  223. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/lane-orchestration-control-plane.md +383 -0
  224. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/multi-region-and-cluster.md +135 -0
  225. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/promotion-gate-and-review.md +149 -0
  226. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/python-package-registry-release.md +462 -0
  227. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/rollback-playbook.md +123 -0
  228. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/secret-and-config-management.md +231 -0
  229. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/version-authority-and-deprecation.md +21 -0
  230. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/SKILL.md +276 -0
  231. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/agents/openai.yaml +4 -0
  232. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/dual-sidecar-and-traffic-config-center.md +127 -0
  233. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/framework-middleware.md +143 -0
  234. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/grpc-authority-workaround.md +90 -0
  235. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/http-response-envelope-contract.md +24 -0
  236. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/mesh-architecture.md +127 -0
  237. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/multi-env-routing.md +192 -0
  238. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/protobuf-http-contract-signals.md +64 -0
  239. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/retry-timeout-circuit-breaker.md +124 -0
  240. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/rpc-framework-recipe.md +494 -0
  241. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/service-discovery-choice.md +113 -0
  242. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/service-discovery-migration-playbook.md +231 -0
  243. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/service-discovery-recipe.md +131 -0
  244. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/SKILL.md +235 -0
  245. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/agents/openai.yaml +4 -0
  246. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/adr-convention.md +146 -0
  247. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/algorithm-launch-checklist.md +30 -0
  248. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/algorithm-launch-evaluation-report-template.md +25 -0
  249. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/algorithm-launch-execution-spec.md +108 -0
  250. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/algorithm-launch-sop.md +457 -0
  251. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/algorithm-launch-templates.md +24 -0
  252. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/artifact-egress-confidentiality.md +58 -0
  253. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/code-review-checklist.md +86 -0
  254. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/cross-repo-coordination.md +46 -0
  255. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/delivery-lifecycle.md +192 -0
  256. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/design-review-gate-mechanics.md +62 -0
  257. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/design-routing-and-readiness.md +45 -0
  258. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/diagnostic-spec-match-gate.md +36 -0
  259. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/dispatch-owner-skills.md +35 -0
  260. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/dormant-code-activation.md +47 -0
  261. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/existing-project-assessment-report.md +223 -0
  262. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/external-skill-augmentation.md +46 -0
  263. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/feature-deprecation-cascade.md +15 -0
  264. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/high-risk-resilience-gates.md +73 -0
  265. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/implementation-completeness-and-minimality.md +120 -0
  266. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/implementation-entry-reentry-gate.md +122 -0
  267. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/modular-monolith-heuristic.md +105 -0
  268. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/pre-final-continuation-gate.md +115 -0
  269. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/problem-resolution-and-learning.md +62 -0
  270. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/quality-attributes.md +112 -0
  271. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/quality-remediation-program.md +88 -0
  272. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/rd-standards-doc-family-checklist.md +27 -0
  273. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/refactoring-discipline.md +52 -0
  274. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/review-reception.md +34 -0
  275. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/shared-gate-artifact-classification.md +76 -0
  276. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/source-evidence-map.md +31 -0
  277. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/status-tracker-sync.md +77 -0
  278. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/sync-spec-repo-contract.md +25 -0
  279. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/verify-developer-experience.md +34 -0
  280. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/worktree-mechanics.md +55 -0
  281. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/scripts/AGENTS.md +18 -0
  282. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/scripts/check-agent-contract-coverage.sh +213 -0
  283. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/SKILL.md +136 -0
  284. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/agents/openai.yaml +9 -0
  285. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/analytics-visualization-interactions.md +206 -0
  286. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/behavioral-aesthetic-logic.md +108 -0
  287. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/complex-creation-interactions.md +194 -0
  288. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/design-execution-checklist.md +214 -0
  289. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/design-impl-naming-and-versioning.md +53 -0
  290. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/design-intake-and-acceptance.md +129 -0
  291. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/design-system-source-of-truth.md +97 -0
  292. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/external-ui-ux-quality-benchmarks.md +79 -0
  293. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/frontend-code-evidence-map.md +63 -0
  294. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/interaction-design-patterns.md +146 -0
  295. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/layout-recipes-and-screenshot-acceptance.md +250 -0
  296. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/multi-project-token-consistency.md +237 -0
  297. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/multi-stack-strategy.md +65 -0
  298. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/operational-processing-workflows.md +237 -0
  299. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/platform-mobile-patterns.md +324 -0
  300. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/platform-web-desktop-patterns.md +456 -0
  301. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/product-lifecycle-acceptance-and-iteration.md +114 -0
  302. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/product-surface-patterns.md +79 -0
  303. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/resource-management-interactions.md +113 -0
  304. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/scenario-community-patterns.md +133 -0
  305. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/source-map.md +130 -0
  306. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/tokens-and-components.md +47 -0
  307. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/trust-sensitive-ai-and-data-patterns.md +96 -0
  308. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/ui-ux-audit.md +106 -0
  309. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/ui-ux-design-development.md +176 -0
  310. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/visual-craft.md +111 -0
  311. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/SKILL.md +157 -0
  312. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/agents/openai.yaml +4 -0
  313. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/ai-service-integration-boundaries.md +57 -0
  314. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/api-contract-and-schema.md +62 -0
  315. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/api-security-boundaries.md +39 -0
  316. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/architecture-playbook.md +46 -0
  317. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/async-execution-model.md +24 -0
  318. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/background-jobs-and-scheduling.md +18 -0
  319. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/batch-and-pipeline-architecture.md +11 -0
  320. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/config-secrets-runtime.md +22 -0
  321. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/data-modeling-and-migrations.md +64 -0
  322. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/data-platform-architecture.md +211 -0
  323. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/event-driven-architecture.md +263 -0
  324. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/multi-tenant-isolation.md +281 -0
  325. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/observability-and-ops.md +26 -0
  326. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/packaging-runtime-readiness.md +20 -0
  327. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/redis-cache-coordination.md +41 -0
  328. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/reliability-and-error-contract.md +17 -0
  329. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/source-evidence-map.md +55 -0
  330. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/web-framework-boundaries.md +26 -0
  331. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/SKILL.md +143 -0
  332. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/agents/openai.yaml +4 -0
  333. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/ai-service-wiring-patterns.md +16 -0
  334. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/async-and-worker-patterns.md +24 -0
  335. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/background-job-patterns.md +18 -0
  336. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/batch-and-artifact-patterns.md +13 -0
  337. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/dependency-client-patterns.md +39 -0
  338. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/error-handling-patterns.md +26 -0
  339. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/feature-playbook.md +43 -0
  340. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/observability-implementation-patterns.md +31 -0
  341. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/project-structure-and-tooling.md +24 -0
  342. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/public-api-security-patterns.md +52 -0
  343. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/redis-cache-lock-patterns.md +78 -0
  344. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/schema-and-validation-patterns.md +23 -0
  345. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/source-evidence-map.md +56 -0
  346. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/sqlalchemy-and-migrations-patterns.md +99 -0
  347. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/testing-and-quality-patterns.md +61 -0
  348. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/web-framework-patterns.md +35 -0
  349. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/SKILL.md +91 -0
  350. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/agents/openai.yaml +4 -0
  351. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/references/config-runtime-readback.md +20 -0
  352. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/references/mr-merge-authorization.md +31 -0
  353. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/references/post-release-env-reset.md +31 -0
  354. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/references/release-closeout-evidence.md +20 -0
  355. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/references/release-scope-confirmation.md +21 -0
  356. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/references/tag-and-prod-pipeline-gate.md +20 -0
  357. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/references/test-scope-prompt.md +24 -0
  358. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/references/watcher-discipline.md +14 -0
  359. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-doc-writer/SKILL.md +64 -0
  360. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-doc-writer/agents/openai.yaml +4 -0
  361. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-doc-writer/references/comment-safe-release-doc.md +19 -0
  362. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-doc-writer/references/release-evidence-workflow.md +23 -0
  363. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-doc-writer/references/release-testing-scope-section.md +15 -0
  364. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-baseline/SKILL.md +87 -0
  365. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-baseline/agents/openai.yaml +4 -0
  366. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-doc-writer/SKILL.md +130 -0
  367. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-doc-writer/agents/openai.yaml +4 -0
  368. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-doc-writer/references/prd-composition-contract.md +35 -0
  369. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-doc-writer/references/requirement-closure-contract.md +86 -0
  370. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-doc-writer/references/security-four-questions.md +38 -0
  371. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-intent/SKILL.md +91 -0
  372. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-intent/agents/openai.yaml +4 -0
  373. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-scope/SKILL.md +88 -0
  374. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-scope/agents/openai.yaml +4 -0
  375. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/SKILL.md +337 -0
  376. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/agents/openai.yaml +4 -0
  377. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/analysis-parse-fix-test-challenge-replay.md +47 -0
  378. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/attribution-verification.md +69 -0
  379. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/bootstrap-slim-c3-obligation-table.md +112 -0
  380. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/coverage-exhaustion-traps.md +45 -0
  381. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/description-authoring.md +162 -0
  382. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/dual-track-review-gate.md +507 -0
  383. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/eval-routing.md +86 -0
  384. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/evidence-card-template.md +51 -0
  385. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/example-domain-preselect.md +79 -0
  386. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/external-practice-controls.md +57 -0
  387. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/extraction-lifecycle-handoff.md +65 -0
  388. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/extraction-quickstart.md +194 -0
  389. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/firing-point-placement.md +75 -0
  390. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/harness-patterns-and-eval.md +286 -0
  391. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/incident-postmortem-extraction.md +190 -0
  392. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/l0-l1-l2-routing.md +114 -0
  393. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/online-skill-review.md +47 -0
  394. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/parallel-stack-references-pattern.md +164 -0
  395. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/r0-leakage-audit.md +90 -0
  396. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/recurring-anti-patterns-checklist.md +320 -0
  397. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/resume-paused-delivery.md +16 -0
  398. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/review-feedback-mining.md +33 -0
  399. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/review-finding-standards.md +57 -0
  400. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/review-rubric.md +40 -0
  401. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/rule-consolidation.md +118 -0
  402. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/skill-listing-budget.md +19 -0
  403. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/source-register.md +254 -0
  404. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/source-to-skill-extraction.md +658 -0
  405. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/two-source-extraction-pattern.md +167 -0
  406. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/uiux-judgment-extraction.md +179 -0
  407. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/uiux-routing-map.md +51 -0
  408. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/validation-and-landing.md +180 -0
  409. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/AGENTS.md +18 -0
  410. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/check-ccl-skills.sh +1452 -0
  411. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/check-evidence-card-leak.sh +491 -0
  412. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/check-mr-target-freshness.sh +173 -0
  413. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/check-size-budget.sh +488 -0
  414. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/check-sync-pointers.sh +419 -0
  415. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/eval-golden-trace.rb +197 -0
  416. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/eval-health.rb +327 -0
  417. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/eval-routing-bank.rb +401 -0
  418. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/eval-routing.rb +248 -0
  419. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/generic-r0-leak-scan.sh +282 -0
  420. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/governing-chain-diff.py +321 -0
  421. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/impact-chain-gate.rb +964 -0
  422. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/register-firing-path-resolution.rb +708 -0
  423. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/skill-behavior-eval.py +540 -0
  424. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/source-register-lifecycle.rb +51 -0
  425. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/source-register-pending-status.rb +55 -0
  426. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_ai_coding_implementation_gates.sh +829 -0
  427. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_ccl_impact_chain_refscripts.sh +1203 -0
  428. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_ccl_r0_status.sh +75 -0
  429. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_ccl_register_pending_exclusion.sh +137 -0
  430. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_ccl_regressions.sh +173 -0
  431. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_ccl_route_drift.sh +377 -0
  432. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_ccl_size_budget.sh +833 -0
  433. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_ccl_skill_catalog.sh +491 -0
  434. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_ccl_source_register_lifecycle.sh +114 -0
  435. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_mr_target_freshness.sh +261 -0
  436. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_sync_pointers.sh +538 -0
  437. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_controlled_escalation_pins.sh +154 -0
  438. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_eval_routing_bank_grader_diagnostics.sh +190 -0
  439. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_eval_routing_bank_surface_binding.sh +178 -0
  440. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_eval_routing_prose_target.sh +86 -0
  441. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_generic_r0_leak_scan.sh +131 -0
  442. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_git_identity_predicate_gate.sh +243 -0
  443. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_governing_chain_diff.sh +419 -0
  444. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_impact_chain_gate_dateless_host.sh +120 -0
  445. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_register_firing_path_resolution.sh +724 -0
  446. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_register_firing_path_wiring.sh +414 -0
  447. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_regression_runner_registration.sh +34 -0
  448. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_routing_bank_integrity.sh +205 -0
  449. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_routing_pointer_integrity.sh +194 -0
  450. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_validate_skill_credential_cwd.sh +61 -0
  451. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_validate_skill_cross_refs.sh +111 -0
  452. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_validate_skill_root_depth.sh +53 -0
  453. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/validate-skill.sh +257 -0
  454. package/dist/assets/marketplace/plugins/ccl-skills/skills/terminal-cli-dev/SKILL.md +98 -0
  455. package/dist/assets/marketplace/plugins/ccl-skills/skills/terminal-cli-dev/agents/openai.yaml +4 -0
  456. package/dist/assets/marketplace/plugins/ccl-skills/skills/terminal-cli-dev/references/input-state-machines.md +36 -0
  457. package/dist/assets/marketplace/plugins/ccl-skills/skills/terminal-cli-dev/references/streaming-rich-output.md +130 -0
  458. package/dist/assets/marketplace/plugins/ccl-skills/skills/terminal-cli-dev/references/terminal-side-channels.md +96 -0
  459. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/SKILL.md +408 -0
  460. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/agents/openai.yaml +4 -0
  461. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/AGENTS.md +18 -0
  462. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/bitable-setup.md +573 -0
  463. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/ci_templates/README.md +120 -0
  464. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/ci_templates/github-actions.yml +119 -0
  465. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/ci_templates/gitlab-ci.yml +76 -0
  466. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/ci_templates/jenkins.Jenkinsfile +106 -0
  467. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/classical-test-design-techniques.md +279 -0
  468. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/gen_report.py +2807 -0
  469. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/makefile-template.md +200 -0
  470. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/report-config-schema.md +272 -0
  471. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/run_pytestless.py +475 -0
  472. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/source-to-case-workflows.md +258 -0
  473. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/tc-marker-conventions.md +316 -0
  474. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/tc-review-and-prioritization.md +145 -0
  475. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/tc_helpers/AGENTS.md +16 -0
  476. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/tc_helpers/tc.dart +129 -0
  477. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/tc_helpers/tc.go +197 -0
  478. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/tc_helpers/tc.py +135 -0
  479. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/tc_helpers/tc.ts +285 -0
  480. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/test_gen_report.py +2144 -0
  481. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/update-lifecycle.md +62 -0
  482. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/SKILL.md +212 -0
  483. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/agents/openai.yaml +4 -0
  484. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/ci-fixtures-and-flake-control.md +75 -0
  485. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/client-runtime-test-matrices.md +50 -0
  486. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/data-and-workflow-testing.md +34 -0
  487. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/design-closed-contract-oracles.md +31 -0
  488. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/e2e-real-flow-testing.md +71 -0
  489. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/fitness-functions.md +240 -0
  490. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/integration-contract-testing.md +235 -0
  491. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/non-functional-specialized-scenarios.md +296 -0
  492. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/rd-testing-standard-template.md +126 -0
  493. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/run-killing-mutation-walk.md +43 -0
  494. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/scenario-testing.md +136 -0
  495. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/source-evidence-map.md +59 -0
  496. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/structured-tc-input-translation.md +67 -0
  497. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/test-code-authoring-patterns.md +392 -0
  498. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/test-data-and-determinism.md +39 -0
  499. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/test-topology-and-commands.md +92 -0
  500. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/unit-testing.md +46 -0
  501. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/vendored-contract-drift-checklist.md +64 -0
  502. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/verify-enforcement-mechanisms.md +18 -0
  503. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/scripts/AGENTS.md +17 -0
  504. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/scripts/client-terminal-ansi-check.py +140 -0
  505. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/scripts/client-terminal-ansi-check.test.sh +75 -0
  506. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/scripts/lang-basics-ast-check.py +170 -0
  507. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/scripts/lang-basics-ast-check.test.sh +87 -0
  508. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/scripts/lang-basics-go-check.go +198 -0
  509. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/scripts/lang-basics-go-check.test.sh +109 -0
  510. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/scripts/test_mutation_backup_recipe.sh +237 -0
  511. package/dist/assets/marketplace/plugins/ccl-skills/skills/tighten-doc/SKILL.md +184 -0
  512. package/dist/assets/marketplace/plugins/ccl-skills/skills/tighten-doc/agents/openai.yaml +4 -0
  513. package/dist/assets/marketplace/plugins/ccl-skills/skills/tighten-doc/references/comment-safe-feishu.md +93 -0
  514. package/dist/assets/marketplace/plugins/ccl-skills/skills/tighten-doc/references/cross-model-co-review.md +3 -0
  515. package/dist/assets/marketplace/plugins/ccl-skills/skills/tighten-doc/references/delivery-face-closeout.md +60 -0
  516. package/dist/assets/marketplace/plugins/ccl-skills/skills/tighten-doc/references/doc-charter-first.md +17 -0
  517. package/dist/assets/marketplace/plugins/ccl-skills/skills/tighten-doc/references/session-vantage-leakage.md +58 -0
  518. package/dist/assets/marketplace/plugins/ccl-skills/skills/web-react-dev/SKILL.md +126 -0
  519. package/dist/assets/marketplace/plugins/ccl-skills/skills/web-react-dev/agents/openai.yaml +4 -0
  520. package/dist/assets/marketplace/plugins/ccl-skills/skills/web-react-dev/references/complex-workspace-patterns.md +47 -0
  521. package/dist/assets/marketplace/plugins/ccl-skills/skills/web-react-dev/references/embedded-h5-in-host.md +87 -0
  522. package/dist/assets/marketplace/plugins/ccl-skills/skills/web-react-dev/references/react-architecture.md +194 -0
  523. package/dist/assets/marketplace/plugins/ccl-skills/skills/web-react-dev/references/source-evidence-map.md +60 -0
  524. package/dist/assets/marketplace/plugins/ccl-skills/skills/web-react-dev/references/web-quality-release.md +190 -0
  525. package/dist/assets/marketplace/plugins/ccl-skills/skills/web-react-dev/references/web-ui-quality.md +83 -0
  526. package/dist/assets/marketplace/plugins/ccl-skills/skills/worktree-isolation/SKILL.md +179 -0
  527. package/dist/assets/marketplace/plugins/ccl-skills/skills/worktree-isolation/agents/openai.yaml +4 -0
  528. package/dist/assets/marketplace/plugins/ccl-skills/skills/worktree-isolation/references/shared-branch-rebase.md +25 -0
  529. package/dist/assets/marketplace/plugins/ccl-skills/skills/worktree-isolation/scripts/AGENTS.md +23 -0
  530. package/dist/assets/marketplace/plugins/ccl-skills/skills/worktree-isolation/scripts/test_worktree_status.sh +207 -0
  531. package/dist/assets/marketplace/plugins/ccl-skills/skills/worktree-isolation/scripts/test_worktree_sweep.sh +481 -0
  532. package/dist/assets/marketplace/plugins/ccl-skills/skills/worktree-isolation/scripts/worktree-status.sh +325 -0
  533. package/dist/assets/marketplace/plugins/ccl-skills/skills/worktree-isolation/scripts/worktree-sweep.sh +245 -0
  534. package/dist/assets/release.json +2797 -0
  535. package/dist/claude-adapter.d.ts +9 -0
  536. package/dist/claude-adapter.js +240 -0
  537. package/dist/cli-worker.d.ts +1 -0
  538. package/dist/cli-worker.js +32 -0
  539. package/dist/cli.d.ts +22 -0
  540. package/dist/cli.js +214 -0
  541. package/dist/codex-host.d.ts +30 -0
  542. package/dist/codex-host.js +162 -0
  543. package/dist/fs-safe.d.ts +21 -0
  544. package/dist/fs-safe.js +241 -0
  545. package/dist/index.d.ts +2 -0
  546. package/dist/index.js +1 -0
  547. package/dist/manifest.d.ts +8 -0
  548. package/dist/manifest.js +135 -0
  549. package/dist/opencode-adapter.d.ts +10 -0
  550. package/dist/opencode-adapter.js +416 -0
  551. package/dist/operations.d.ts +3 -0
  552. package/dist/operations.js +956 -0
  553. package/dist/paths.d.ts +20 -0
  554. package/dist/paths.js +4 -0
  555. package/dist/types.d.ts +58 -0
  556. package/dist/types.js +1 -0
  557. package/dist/unified.d.ts +4 -0
  558. package/dist/unified.js +64 -0
  559. package/dist/version.d.ts +2 -0
  560. package/dist/version.js +5 -0
  561. package/package.json +35 -0
@@ -0,0 +1,448 @@
1
+ # Agent Session Persistence (Durable Log, Resume/Fork, Compaction)
2
+
3
+ Implementation companion to the Agent Loop and "Sessions" building block in `retrieval-agent-safety.md`
4
+ and the Context-Editing/Memory notes there. Those say a session must be persistable and resumable and
5
+ that long loops cross a compaction boundary; this reference is *how* to build durable session state for
6
+ a multi-turn agent so it survives crashes, resumes/forks faithfully, and compacts past the context
7
+ window without corrupting history.
8
+
9
+ Use when an agent runs multi-turn conversations that must survive process restarts, be resumed or
10
+ forked later, or run long enough to exceed the model context window. For a single request/response
11
+ call with no persisted state, skip this.
12
+
13
+ Patterns observed in a production reference agent; the underlying append-only-event-log idea is the
14
+ well-established event-sourcing / write-ahead-log shape applied to agent conversations.
15
+
16
+ ## 1. The session is an append-only event log, not a mutable blob
17
+
18
+ Persist the conversation as an **append-only log of canonical events** (one record per line, e.g.
19
+ JSONL), written in order as the turn progresses. This log is the *source of truth*; full state is
20
+ reconstructed by replaying it. Benefits that mutable-snapshot persistence loses: crash safety (a
21
+ half-written turn is a truncated tail, not a corrupted document — *under the §2 durability
22
+ preconditions*), faithful resume/fork (replay), and human/tool inspectability (each line is a
23
+ self-contained event you can `grep`/`jq`).
24
+
25
+ The flip side of append-only is unbounded growth: a long session accumulates every pre-compaction
26
+ event forever, and every resume replays all of it. Bound it with **segmented logs plus durable
27
+ compacted checkpoints** (§5): once a compaction checkpoint is written and replay-verified, older
28
+ segments it subsumes can be archived so the live replay set stays bounded.
29
+
30
+ - Give each session a stable id and a creation-time metadata header record (id, created-at, source,
31
+ base instructions, model, fork parent if any) as the first line, so a listing can summarize a
32
+ session by reading only its head.
33
+ - Keep a **separate index** (a small SQLite/DB or derived cache) for listing, search, sort, and
34
+ pagination. The index is derived/disposable; never make it the source of truth. Rebuildable from
35
+ the logs means a corrupt index is recoverable.
36
+ - Store active sessions and archived sessions in distinct locations so listing the active set does
37
+ not scan archives.
38
+
39
+ ## 2. Write through a background writer with flush-before-finality and observable failure
40
+
41
+ Appends should not block the turn, but they also must not be silently lost. The crash-safety claim in
42
+ §1 only holds under these durability preconditions — state them, do not assume them:
43
+
44
+ - **One exclusive writer per session** (a lock/lease), so appends cannot interleave from two
45
+ processes into the same file.
46
+ - **Whole-record atomic append** — serialize each event to a complete line and write it in one
47
+ operation; never flush a partial record, so a crash leaves a clean truncated tail, not a spliced
48
+ half-line.
49
+ - **`fsync` (or platform equivalent) before acking a Flush** — an OS crash can lose buffered writes
50
+ the application already "wrote"; durability is only real after fsync.
51
+ - **Monotonic per-event sequence number, and ideally a checksum**, so a truncated/garbled tail is
52
+ detectable on resume and the high-water mark is unambiguous.
53
+
54
+ Use a background writer fed by a queue with explicit control messages:
55
+
56
+ - **Append** (enqueue events), **Flush** (process all prior writes, ack when on disk), **Shutdown**
57
+ (drain + ack), each acknowledged so callers can await durability at the points that matter.
58
+ - **Flush before any finality signal.** Before you tell the user, the model, the SDK/control stream,
59
+ or a transcript consumer that a turn/session completed, flush the log. A "done" that outraces the
60
+ writer can lose the last turn on crash. (This mirrors the background-task finality rule in
61
+ `terminal-cli-dev`: retain final output until consumers have acknowledged it.)
62
+ - **Make writer failure observable.** If the writer task dies (disk full, IO error), record a
63
+ terminal-failure state that every later append/flush call surfaces — never let the recorder keep
64
+ accepting events into the void. A dropped persist is a data-loss bug, not a best-effort log line.
65
+ - Do not return an empty-success on a failed write/flush; raise it. Silent log-and-continue on a
66
+ persistence failure is the data-loss anti-pattern.
67
+
68
+ ## 3. A persistence policy decides what is durable, ephemeral, or truncated
69
+
70
+ Not every in-memory event belongs in the durable log. Define an explicit policy:
71
+
72
+ - **Always persist structural markers** the replay depends on: the session-meta header, per-turn
73
+ context records, and **compaction markers** (§5). Without these, a replayed or compacted session
74
+ reconstructs wrong.
75
+ - **Persist canonical conversation items** (user/assistant messages, tool calls + outputs) needed to
76
+ rebuild model context.
77
+ - **Classify volatile UI/telemetry events as ephemeral** — progress ticks, spinners, and status
78
+ updates do not belong in the durable transcript.
79
+ - **Bound payloads before persisting — but persist what the model actually saw.** Capping/middle-
80
+ truncating large tool output keeps one noisy command from bloating the file, *but truncation that
81
+ diverges from the model-visible context breaks faithful replay* (replay would reconstruct a
82
+ different context than the original run). Reconcile by either (a) applying the same truncation to
83
+ the model input, so the persisted form *is* what the model saw; or (b) storing the full payload
84
+ content-addressed out-of-line and logging a deterministic truncation artifact applied identically
85
+ at original run and replay. Do not promise faithful replay while silently persisting less than the
86
+ model consumed. Sanitize/redact at persistence time as well as display time.
87
+ - Support more than one persistence mode (e.g. a lean default vs an extended/debug mode that keeps
88
+ larger payloads) so verbosity is a policy choice, not hardcoded.
89
+ - **Model-visible ⟹ accounted-for.** Every item in the client-dispatched envelope must carry
90
+ exactly one durable accounting classification (the sealed envelope defined below; the
91
+ provider-effective context is the separate, conditional surface at the end of this rule).
92
+ The policy above decides what is durable; this invariant decides what is *explainable
93
+ afterwards* — user/assistant messages, tool outputs, injected context, and resolved
94
+ instruction surfaces all count. The classes:
95
+ - **Reconstructable (raw)** — the persisted content is byte-equivalent to its item in the
96
+ sealed client-dispatched envelope and lives in the session log itself (per the truncation
97
+ rule above, the client dispatched the same truncated form that was persisted; what the
98
+ provider did after that is the provider-effective surface at the end of this rule). A payload stored out-of-line classifies by
99
+ reference below — never raw — so the availability and authorization criteria apply to it.
100
+ An item transformed by persistence-time redaction does not classify raw — classify it
101
+ non-reconstructable, with the redacted derivative recorded as the marker's metadata rather
102
+ than as the item.
103
+ - **Reconstructable (by reference)** — the log carries an immutable, versioned reference
104
+ (an opaque pinned id or version; for content-derived ids see the digest rule below)
105
+ plus a digest, and the referenced store keeps the item
106
+ resolvable for the session log's whole retention horizon, with access no broader than
107
+ the log's policy while the authorized replay principal keeps access. "Stricter policy" is
108
+ not the test: a store that purges earlier than the log, or denies the replay principal,
109
+ fails it — availability and authorization are what make the promise true.
110
+ A mutable reference target does not qualify: replay would resolve different or missing
111
+ content, turning "reconstructable" into a false promise — classify such an item
112
+ non-reconstructable instead.
113
+ - **Non-reconstructable** — an explicit marker carrying the reason (policy forbids persistence,
114
+ the payload was ephemeral, the source lives behind stricter access control) plus either a
115
+ keyed digest or an explicit no-digest note.
116
+ - **The accounting invariant audits records; it must never force raw persistence.** Assertions
117
+ over a session log check completeness (no envelope item without a classification) and
118
+ validity (by-reference targets immutable and policy-aligned) — never "everything model-visible
119
+ is persisted raw"; that inversion is how an accounting rule becomes a credential-persistence
120
+ bug. Completeness is only as real as the record it audits: assign stable per-item ids at
121
+ context assembly and durably commit each item's complete accounting record — the id, the
122
+ classification, and that classification's evidence (the raw content itself, the validated
123
+ pinned reference plus digest, or the full non-reconstructable marker) — before model
124
+ dispatch, failing closed if that commit fails; a retry reuses the ids so a replayed
125
+ dispatch deduplicates rather than double-classifies. The denominator must be authoritative
126
+ too: derive one atomic, invocation-scoped manifest from the finalized dispatch payload
127
+ itself — the ordered item ids and boundaries — and commit it with the records, so an audit
128
+ checks the log against the invocation's own manifest rather than against whatever subset of
129
+ records happened to land. Seal before you account: freeze the dispatch payload into an
130
+ immutable envelope, derive the manifest and records from that sealed envelope, and let
131
+ transport and retries send only the sealed envelope — a payload middleware can still mutate
132
+ between commit and send re-opens the window (the same check-then-act closure the §4 config
133
+ lock pins with a generation). Account the attempt, not only the content: record durable
134
+ attempt states around the sealed envelope — prepared, dispatch-attempted, then accepted or
135
+ delivery-uncertain — plus the provider request/idempotency key; the durable
136
+ dispatch-attempted state (unique attempt id plus that key) commits before transport is
137
+ invoked, failing closed like the item records, and after transport the state moves only to
138
+ accepted, delivery-uncertain, or rejected — the last a provider-attested definitive rejection
139
+ before model execution, recording that no invocation occurred; a corrected resend after it is
140
+ a new sealed invocation with its own envelope and key, since an idempotency key may only ever
141
+ cover one identical payload — so a retry that may have
142
+ invoked the model twice shows as two attempts even while item accounting deduplicates.
143
+ Recovery treats a stale dispatch-attempted record as delivery-uncertain — a crash just after
144
+ the commit and a crash after provider acceptance leave the same record — reconciling by
145
+ provider request id where the provider supports it, and auto-retrying only under
146
+ provider-guaranteed idempotency with the invocation's original key and the identical sealed
147
+ envelope — a retry that mints a fresh key is a second invocation, not a retry; otherwise the
148
+ uncertainty is surfaced, not retried through. A stale prepared record — committed but never
149
+ dispatch-attempted, so transport cannot have run — is recovered explicitly too: either cancel
150
+ it into a typed terminal state, its committed evidence following the normal retention or
151
+ erasure policy, or resume by committing dispatch-attempted and sending the identical sealed
152
+ envelope under the original key; left prepared forever it surfaces nothing and strands
153
+ committed evidence with no invocation to explain it.
154
+ Version the accounting schema and apply it prospectively: an invocation recorded before the
155
+ accounting existed carries a typed legacy marker (the non-reconstructable family, with
156
+ pre-accounting as the reason) — never synthesized classifications — the same rule §4 applies
157
+ to sessions recorded before the config lock existed. The guarantee is honest about its edge:
158
+ it is scoped to what the client dispatched. A provider can inject, truncate, or compact
159
+ server-side, so the accounting claims the sealed envelope, not the provider's effective
160
+ context — where authoritative provider evidence of the effective context exists, record it;
161
+ where it does not, the invocation carries a typed model-context-unverifiable marker rather
162
+ than an implied full-fidelity claim. A crash between dispatch and append
163
+ otherwise leaves items whose classification landed but whose evidence never did, and a
164
+ log-only audit sees neither gap.
165
+ Credentials and secrets never reach this accounting as content, because they are never
166
+ model-visible raw (resolve them by reference at the boundary — `agent-credentials-auth.md`).
167
+ A secret detected in the sealed envelope before dispatch aborts the transport and records a
168
+ rejected-exposure event, itself under the same discipline as every exposure record (never
169
+ the value, never a plain digest); accounting for a known exposure never licenses sending it.
170
+ The scan
171
+ runs before accounting evidence is derived or committed and fails closed itself: a scanner
172
+ error, timeout, or absence never reads as no detection — the dispatch waits or aborts; where
173
+ any persistence preceded
174
+ detection, the late-discovery transition below applies to the aborted dispatch as well. If a
175
+ secret is discovered only after it reached model context, classify that item
176
+ non-reconstructable with an explicit no-digest note — never raw, never by reference — and
177
+ attach the exposure as that marker's metadata: the accounting records a typed exposure event
178
+ (class, source, span) — never the value, and never a plain digest of it. Late discovery is a
179
+ transition, not a label, and it covers every class that persisted content: whether the item
180
+ was raw in the log or reachable through a by-reference target, supersede the classification,
181
+ contain read access to the affected records and the referenced target at once, and purge or
182
+ cryptographically erase the persisted or referenced content, its replicas, and any digest or
183
+ content-derived identifier stored for it, where the store supports it —
184
+ an append-only log does this as a supersession event plus erasure, never a silent rewrite —
185
+ recording any residue that could not be erased as part of the exposure event. A digest is itself a
186
+ disclosure channel: a plain content hash of an enumerable value is reversible by dictionary,
187
+ so a plain digest is allowed only where the same record already persists the content raw
188
+ (pure integrity use). A content-derived reference identifier is a digest under this rule, so
189
+ a by-reference record identifies its target by an opaque pinned id or version, or a keyed
190
+ derivation — never a plain content hash of the referenced content. Where the digest is the
191
+ only residue — the by-reference and
192
+ non-reconstructable classes — use a keyed digest with a non-secret key-id and algorithm-id,
193
+ verified against a retained keyring, rotation handled as `migration-required` (the same
194
+ discipline the §4 config lock specifies for sensitive-but-behavior-affecting fields).
195
+
196
+ ## 4. Resume and fork: replay the log, and restore the accounting too
197
+
198
+ Model the initial state of a new agent run as an explicit enum, not an implicit default:
199
+
200
+ - **New** — empty history.
201
+ - **Cleared** — history intentionally reset. Because the log is append-only, a reset is *itself an
202
+ event*: persist a clear/epoch marker and have replay honor the latest clear boundary (ignore
203
+ everything before it), or allocate a new session id. Never "clear" by relying on memory state that
204
+ the log would resurrect on the next replay.
205
+ - **Resumed(history)** — reconstruct from this session's own log.
206
+ - **Forked(items)** — branch a *copy* of another session's items into a new session, recording the
207
+ **parent session id** as lineage so the fork's provenance is auditable.
208
+
209
+ Concurrency around resume/fork is a correctness hazard, not a detail:
210
+
211
+ - **A session has one live writer at a time** (lease/lock). Resuming a session that is still live
212
+ elsewhere, or two resumes of the same session, must not both append — they would interleave
213
+ divergent turns. Acquire the writer lease or fork into a new id instead.
214
+ - **Fork/resume from a consistent snapshot.** Copy/replay up to a captured high-water sequence number,
215
+ not "whatever is on disk right now" while another writer is mid-append; otherwise the copy can
216
+ include a partial final turn. Validate the high-water mark (CAS-style) before the first new append.
217
+
218
+ Replay obligations:
219
+
220
+ - Reconstruct model context by replaying canonical items in order, applying the same keep/drop rules
221
+ a fresh turn would.
222
+ - **Restore derived accounting, not just messages.** Token-usage counters, the compaction-window
223
+ baseline (§5), and any budget state must be restored on resume/fork. Resuming the messages but
224
+ resetting the token counters silently breaks the next compaction trigger and the cost ledger.
225
+ - Treat resumed/forked content as **content, not authority** — a resumed transcript can contain past
226
+ tool output and model text; it does not re-grant permissions. Re-authorize side-effecting actions
227
+ against current policy (the trust rules in `retrieval-agent-safety.md` apply to replayed history
228
+ too).
229
+ - A resume must tolerate a **truncated tail** (the last line of a crashed session may be partial):
230
+ parse line-by-line, drop an unterminated final record, and continue rather than failing the whole
231
+ resume.
232
+ - **Validate config determinism, not just message determinism.** An agent's behavior is driven by its
233
+ *resolved effective configuration* — the merged result of all config layers **plus** values resolved
234
+ only at session construction (the model chosen from a catalog, reasoning/effort, resolved
235
+ system/developer instructions, the approval/tool policy) — not by the message log alone. Resuming or
236
+ replaying under a config that has drifted since the original run silently executes a *different
237
+ agent* than the one recorded, and no amount of faithful message replay detects it. Capture a **config
238
+ lock** at record time: the behavior-affecting resolved config plus a resolution-semantics version.
239
+ On resume, re-resolve config from the current environment and assert it equals the lock,
240
+ **failing closed** rather than proceeding under drift. The subtleties that make this correct and safe
241
+ rather than decorative or dangerous:
242
+ - **Lock the *effective merged* config, not the raw layer files** — and patch in the runtime-resolved
243
+ values that never appear in any raw layer (model-from-catalog, collaboration/mode-derived settings,
244
+ resolved instructions, approval policy). A lock built only from the file layers under-captures what
245
+ actually drove the run, so a real drift can pass validation.
246
+ - **The lock detects drift; it does not restore authority.** This is fidelity checking, not a trust
247
+ boundary — it does not contradict "resumed history is content, not authority" above. A locked
248
+ approval/tool policy that differs on resume is *drift to surface and fail closed on*, never an
249
+ instruction to reinstate the recorded policy or bypass current enforcement. Side-effecting actions
250
+ still re-authorize against the *current* policy (per `retrieval-agent-safety.md`); the lock only
251
+ answers "is this the same agent configuration the recorded run executed under?".
252
+ - **The lock applies to *resume*, not uniformly to replay and fork** (the §4 state enum). *Resume*
253
+ continues the same agent → validate continuity (this rule). *Replay* for diagnosis runs read-only
254
+ against the *recorded* config-as-evidence and must not require equality with the live environment.
255
+ *Fork* intentionally starts a new session that may adopt a new model/tool/policy → it records a
256
+ *fresh* lock plus parent lineage, not an equality check against the parent's lock. Applying the
257
+ resume gate to replay or fork either blocks valid operations or pushes operators toward a blanket
258
+ override.
259
+ - **Lock canonicalized, behavior-affecting values only — and treat the lock and its diff as
260
+ disclosure-sensitive.** A raw effective config carries secrets/tokens, env-derived ephemerals,
261
+ absolute paths, timestamps, and availability-probe results; persisting or comparing those leaks data
262
+ (§3 / R10 sanitization) and manufactures false drift. But "non-secret" is not enough: resolved
263
+ *instructions*, tool manifests, policy text, internal endpoints, and tenant/router identifiers are
264
+ behavior-affecting yet still sensitive. Lock such fields by **stable id + keyed digest**, not raw
265
+ value, and surface drift as *which fields changed* by default; expose value-level diffs only to a
266
+ privileged operator. The error a normal user sees must not become an exfiltration channel for the
267
+ hidden prompt/policy surface the lock is meant to protect. The digest must record a **non-secret
268
+ key-id and algorithm-id**, and verification must run against a *retained keyring* for the session
269
+ retention window — otherwise a key rotation makes every prior session falsely drift (then someone
270
+ "fixes" it by disabling sensitive-field comparison, reopening the hole). A missing/retired digest
271
+ key is a `migration-required` case (below), never silently equality, inequality, or a global
272
+ bypass; rotation produces a new lock generation or a typed migration record, never a demand to
273
+ re-expose the protected raw value.
274
+ - **Canonicalization must be one specified scheme, not "canonicalize" hand-waved.** Two resolvers that
275
+ disagree on key ordering, default elision, path/float/string normalization, env expansion, or
276
+ redaction placeholders will either lock users out (false drift) or compare equal after dropping a
277
+ behavior-affecting distinction (missed drift). Pin a single canonical schema with field-level
278
+ equality rules and golden test vectors; the lock is only as trustworthy as that scheme is
279
+ deterministic across versions.
280
+ - **Strip the lock's own control knobs before comparing.** The settings that enable/locate the lock
281
+ are not part of the locked surface; if you compare them too, the lock diverges on its own
282
+ configuration (self-reference) and every resume fails spuriously.
283
+ - **Classify drift; do not collapse it to one coarse override.** Fail-closed-with-a-single-bypass-flag
284
+ is a footgun: the same flag that waves through an unsafe silent change also blocks (or normalizes
285
+ bypassing) *required* changes — a deprecated model removed, a rotated endpoint, a tightened safety
286
+ limit, a schema migration. Distinguish drift classes (compatible / safety-tightening /
287
+ safety-loosening / unavailable-deprecated / migration-required) and require a *typed* migration or
288
+ acceptance per class, so accepting a forced upgrade never silently also accepts a behavior-loosening
289
+ drift. Relatedly, when a locked value was resolved from a mutable catalog / feature-flag service /
290
+ remote default, current resolution may no longer be able to reproduce it: lock stable artifact
291
+ *identities and resolver inputs* (so the lock stays interpretable), and treat an unreproducible value
292
+ as a migration-required case to record explicitly — never a silent pass. A migration/acceptance is
293
+ itself a durable, auditable record that yields a *new* lock generation, not an in-memory "operator
294
+ clicked OK".
295
+ - **Version the lock on resolution semantics, not raw build, and fail on mismatch by default** with an
296
+ explicit, *typed* operator acceptance (not a global ignore-all). The durable invariant is the config
297
+ resolver/schema/catalog-semantics version — a routine build/patch bump that does not change
298
+ resolution semantics should not hard-fail an otherwise-identical resume (record raw build as audit
299
+ metadata, not as the gate); but bump the semantics version whenever resolution can differ even when
300
+ the serialized config looks identical.
301
+ - **Scope one lock per config-authority boundary, normally the root session.** A child/sub-agent that
302
+ truly inherits the parent's already-resolved config references the parent lock rather than
303
+ re-locking (re-locking inherited config validates against the wrong baseline); a sub-agent launched
304
+ with its *own* distinct model/tool/instruction scope is its own boundary and locks that.
305
+ - **Pin the validated config as the turn's authority to close the check-then-act window.** "Re-resolve,
306
+ compare, proceed" leaves a TOCTOU gap: config can change after validation but before a side effect,
307
+ so the resumed turn acts under a config neither validated nor current. Snapshot the validated
308
+ resolution as a generation/lease that is the turn's runtime authority, and re-check it (CAS-style,
309
+ like the high-water mark above) — together with current policy — before each side-effecting action.
310
+ - **A session with no lock is not silently resumable.** Sessions recorded before locking existed (or
311
+ with the lock disabled) have no baseline to validate against; default them to `migration-required`
312
+ or `replay-only`, never "resume as if validated". And log every lock outcome — *including denials
313
+ and migration rejections*, not only acceptances — or the audit trail only shows the resumes that
314
+ succeeded.
315
+ This is the configuration analogue of "restore derived accounting" above: replay fidelity requires
316
+ the same *inputs*, not just the same *history*.
317
+
318
+ ## 5. Compaction: summarize past the context window without corrupting history
319
+
320
+ When a session's estimated context approaches the model window, compact it.
321
+
322
+ - **Trigger on a token-budget watermark measured from the last compaction.** Track a per-window
323
+ baseline and a window ordinal so "how much have we grown" is measured since the previous compaction,
324
+ not from zero. **Prefer server-reported token usage over local estimation** when the provider
325
+ returns it; estimation is the fallback that drives the trigger when no server count is available
326
+ yet.
327
+ - **Two strategies, chosen by provider capability:** *local/inline* compaction (you send the history
328
+ to the model with a dedicated summarization prompt and replace it with the returned summary) or
329
+ *provider-remote* compaction (the provider compacts server-side). Pick per provider; do not assume
330
+ one is always available.
331
+ - **Record a self-sufficient compaction marker in the log** so replay is deterministic. The marker
332
+ must carry the summary text itself, the covered range / window ordinal, and ideally a summary hash
333
+ — not just "a boundary happened". Without the summary in the log, replay must either re-summarize
334
+ (nondeterministic) or re-expand the dropped items (defeats compaction). This marker is what later
335
+ segments can be archived behind (§1).
336
+ - **Store the summary as a typed synthetic event, not a text prefix.** A stable prefix string is not
337
+ a trust boundary — a compactor can emit text that mimics user instructions or role labels. Give the
338
+ summary a non-user role/source on its event, escape embedded role-like text, and make replay
339
+ serialize it so it can never become a user message or carry authority (the "history is content, not
340
+ authority" rule applies in full).
341
+ - **Keep/drop rules decide what survives, and the kept set must shrink.** Keep: the recent
342
+ conversational tail (the last user/assistant turns), the compaction summary itself, and still-
343
+ authoritative system/hook prompts. Drop or subsume into the summary: older user/assistant turns the
344
+ summary now covers, instruction/developer wrappers, session-prefix scaffolding, and stale
345
+ tool-call / function-output / reasoning items. Keeping *every* user and assistant message across
346
+ compaction re-bloats the window and duplicates what the summary already says — compaction must
347
+ actually reduce the kept set, not just relabel it.
348
+ - **Re-filter provider-produced compaction output.** A remote compactor can echo stale or duplicated
349
+ instruction content; run the same keep/drop filter over its output before trusting it.
350
+ - **Re-inject durable initial context at a deterministic position** relative to the summary (the
351
+ fixed system/tool context must survive compaction). Be explicit and consistent about whether fresh
352
+ context goes before or after the summary and the last user message; an inconsistent injection point
353
+ produces subtly different model behavior across compaction paths.
354
+ - **Fallback when even the summary plus recent turns do not fit:** trim the oldest/largest tool-call
355
+ and tool-output records to fit the window, preserving the conversational messages. Trimming bulky
356
+ tool output is less damaging than dropping user/assistant turns.
357
+
358
+ ## Non-negotiables
359
+
360
+ - The append-only log is the source of truth; any index/cache is derived and rebuildable.
361
+ - Crash-safety requires the §2 preconditions: one exclusive writer per session, whole-record atomic
362
+ append, `fsync` before acking Flush, and a monotonic sequence number.
363
+ - Flush the log before signaling turn/session finality; never let a completion signal outrace the
364
+ writer.
365
+ - A failed persist/flush is raised and made observable, never swallowed as empty success.
366
+ - Always persist the structural markers (session meta, turn context, compaction) that replay needs.
367
+ - Truncating a persisted payload is allowed only if it matches what the model saw (or the full
368
+ payload is stored out-of-line); never claim faithful replay while persisting less than the model
369
+ consumed.
370
+ - A "clear" is a persisted epoch marker (or a new session id), never an in-memory reset the log
371
+ would resurrect.
372
+ - One live writer per session; resume/fork copies from a validated high-water snapshot, not a
373
+ concurrently-appended file.
374
+ - Resume/fork restores token-usage and compaction-window accounting, not just messages; forks record
375
+ parent lineage; replay tolerates a truncated final record.
376
+ - **Resume** validates a **config lock** and fails closed on drift (replay runs read-only against
377
+ recorded config; fork records a fresh lock + lineage). The lock captures canonicalized
378
+ behavior-affecting values including runtime-resolved ones (not just raw layers) under one specified
379
+ canonicalization scheme; sensitive-but-behavior-affecting fields (instructions, policy text,
380
+ endpoints, identifiers) are locked by id+keyed-digest and drift surfaces as which-fields-changed,
381
+ value diffs operator-only — the resume error is not an exfiltration channel. The lock detects drift
382
+ without restoring authority (current policy still enforces), strips its own control knobs, gates on a
383
+ resolution-semantics version (not raw build), classifies drift into typed migration/acceptance
384
+ classes (never one coarse bypass), is scoped per config-authority boundary (normally root session),
385
+ and is pinned as the turn's authority + re-checked (CAS) before side effects to close the
386
+ check-then-act window.
387
+ - Replayed/resumed history is untrusted content and does not re-grant permissions.
388
+ - The compaction marker carries the summary, covered range, and window ordinal so replay is
389
+ deterministic; the summary is a typed non-user event that can never become user input or authority;
390
+ compaction must shrink the kept set, and bounded growth needs segmented logs + durable checkpoints.
391
+ - A compaction summary is marked as a summary, recorded as a log marker, and produced/accepted only
392
+ after the keep/drop filter; durable system/tool context is re-injected at a deterministic position.
393
+ - Every item in the client-dispatched envelope is accounted for as reconstructable-raw, reconstructable by immutable
394
+ reference (digest + policy-aligned store), or explicitly non-reconstructable with reason;
395
+ accounting assertions check completeness and classification, never force raw persistence; secrets
396
+ stay reference-resolved — a leaked secret classifies non-reconstructable with an explicit
397
+ no-digest note and a typed exposure event as metadata — and a digest that is the only
398
+ residue of an item is keyed, never plain.
399
+
400
+ ## Routing
401
+
402
+ - The Agent Loop bounds (max turns/tokens/time), tool-result re-entry, and "history is not authority"
403
+ rule live in `retrieval-agent-safety.md` — this reference is the persistence/compaction layer
404
+ beneath them.
405
+ - Background-writer finality and flush-before-completion as a *terminal-UI task* concern →
406
+ `terminal-cli-dev` (this reference covers the session-log durability concern; keep them aligned).
407
+ - Durable session metrics, session-index health, and compaction-rate signals → `platform-observability`.
408
+ - Replaying a session log to reproduce a bug or a bad turn → `defect-diagnosis`.
409
+ - Rollout/migration of a session-file format change or a default-compaction-policy change →
410
+ `platform-release-engineering`.
411
+ - Generic relational-store/index durability mechanics (if the index grows into a real service DB) →
412
+ `go-microservice-architecture` / `python-service-architecture`; the agent-session semantics stay here.
413
+
414
+ ## Remote or externally controlled agent sessions
415
+
416
+ For remote or externally controlled agent sessions, keep session/worker credentials scoped to the transport instance, not process-wide environment or shared client globals that untrusted or user-configured tools can read. Account switch, logout, or re-enrollment must clear stale credential caches before any new control channel can send requests.
417
+
418
+ ## Runtime workspace-scope changes
419
+
420
+ Treat runtime workspace-scope changes as permission-boundary transitions, not UI preferences. Adding, removing, or persisting working directories must validate a canonical directory identity before it can affect tools: expanded path, platform-normalized path form, stable filesystem identity or realpath-equivalent where available, existence, directory type, accessibility class, root/parent/child/sibling relationship to current working roots, source scope, session versus persisted lifetime, principal/session/workspace identity, policy version, root-set generation, and approval request id when user-mediated. Serialize root-set transitions or use compare-and-swap generation fencing so memory state, persisted settings, approval caches, and sandbox allowlists cannot commit on different generations; revalidate the directory identity before persistence, sandbox refresh, and first use, and fail closed if it changed. A narrower or duplicate child root must not widen scope; any sibling, unrelated, broad home/drive/root, or broader parent root that expands reachable resources needs explicit approval and policy allowance naming the widened resource set. Every root-set change must invalidate cached allow decisions, planned tool invocations, permission suggestions, file/source caches, prompt-visible file context, and sandbox allowlists keyed to the old root set. Scope shrink or removal must also make stale reads, writes, shell commands, late callbacks, resumed sessions, and queued filesystem-capable actions re-authorize against the new root set or fail closed. Persisted-scope writes need clear success, failure, rollback, or partial-finality semantics so a runtime cannot report durable access that exists only in memory. Refresh sandbox configuration synchronously before the next filesystem-capable command after any root-set change, and treat refresh failure or stale config as permission uncertainty rather than allow. Diagnostics may expose bounded categories and counts, but not raw local paths, sensitive project structure, denied path values, or full command contents; route sink policy to `platform-observability`.
421
+
422
+ ## Persisted settings/config migrations
423
+
424
+ When persisted agent/runtime settings migrations change model/runtime choices, permission modes, tool approvals, tool-source scope, or default safety behavior, treat the migration as a runtime policy change: invalidate prompt/tool caches keyed by old settings, recompute model-visible tool schemas, require fresh execution-time authorization, preserve explicit deny/revocation and narrower scopes, and replay representative allow/deny/resume/dynamic-tool-change traces after migration.
425
+
426
+ ## Session discovery, resume, and fork
427
+
428
+ Treat session discovery, resume, and fork as provenance-boundary transitions, not log browsing or convenience startup. A resumable session must be selected and reopened only after binding the candidate to an exact tuple: principal, account, tenant, organization, or explicit absent-scope markers; workspace or repository identity; canonical working root; branch or worktree identity when present; privacy/data-residency state; session id; transcript artifact identity plus content digest, signed or manifested transcript generation, or monotonic durable append/high-watermark identity; current session incarnation; policy and permission generation; tool/capability generation; prompt/model generation; and source trust scope. Search text, custom names, summaries, tags, branch labels, project paths, modified times, and indexes are discovery hints, not authority; discovery indexes and results themselves must be scope-authorized and redacted before model or UI exposure, and cross-workspace discovery may expose only sanitized existence or counts until an explicit directory/session switch is authorized and revalidates the tuple. Ambiguous matches, stale metadata, missing transcript proof, auxiliary/background transcripts, and current-session self-matches must be suppressed or fail closed; cross-workspace candidates require an explicit switch and tuple revalidation before model-visible context or tools are restored. Resume must open a stable immutable snapshot or locked generation across candidate selection, transcript open, rehydration, and fork-copy preparation; revalidate transcript identity and high-watermark immediately before restoring context/tools or copying a fork prefix; and reject concurrent append, delete, rename, compaction, or partial-copy drift. Resume must clear or revalidate stale file, skill, memory, prompt, approval, session-message, tool, capability, tool-server, connector, and settings-derived caches before rehydration; restore cost, content-replacement, attribution, worktree, task, and metadata state only when the stored tuple still matches or an explicit migration policy says which fields may carry forward.
429
+
430
+ ## Forked session incarnation and boundaries
431
+
432
+ Forked sessions need a new session incarnation and parent-child boundary. Copy only the authorized per-message conversation prefix through a verified fork point after checking each message, attachment, replacement record, summary, and source-scope provenance label; summaries that merged differently scoped parent sources must be rejected or replaced with typed redacted markers. Preserve ordering and tool-use/tool-result pairing, remap durable message ids, record parent session and fork-point provenance, and reject fork points outside the selected transcript chain or stable snapshot. Copied-prefix effect and finality records must be preserved as immutable parent provenance and no-reexecute barriers; committed or unknown effects must block automatic retry in the child until reconciled. Do not inherit undo history, removable worktree ownership, pending approvals, permission bypasses, live background tasks, remote-control credentials, prompt/tool caches, or usage counters unless each item is explicitly rebound to the child tuple or intentionally omitted with degraded finality. Parent and child transcripts, cost/accounting, cached approvals, file-history state, replacement records, memory writes, side-effect ledgers, usage counters, and diagnostics must stay distinguishable so a child cannot mutate, delete, share, rerun, or bill against the parent by accident. Diagnostics may expose bounded categories, counts, and sanitized reason codes, but not raw prompts, local paths, branch names, transcript contents, session ids, credentials, or free-form metadata.
433
+
434
+ ## History and transcript synchronization
435
+
436
+ History or transcript synchronization must preserve ordering across initial replay, live writes, echoes, reconnect, and server-side replay. Use durable message ids, monotonic sequence or cursor state, ack/high-watermark advancement only after durable write, bounded deduplication, flush gates, explicit gap detection, and fail-closed stop/resync behavior when replay or ordering is ambiguous.
437
+
438
+ ## SDK/headless/remote protocol streams
439
+
440
+ SDK, headless, or remote-agent protocol streams are runtime control planes, not plain logs. Define a versioned frame envelope, discriminated message types, one-message-per-frame serialization rules, safe line/framing escaping, schema validation for every inbound control and data frame, maximum frame/queue sizes, unknown-type behavior, and parse-error finality. Outbound control requests need stable request ids, cancellation frames, one writer or ordered outbound queue, pending-request cleanup when input closes, duplicate or orphan response suppression, and response binding to the pending request, tool/action id, session/transport incarnation, policy/capability version, and normalized payload digest. Streamed deltas must either be reconstructable from durable prior state or emitted as self-contained snapshots; retries, reconnects, and late completions must not duplicate mutable messages, lose terminal results, or re-open a completed authorization/action path.
441
+
442
+ ## Protocol-to-transcript adapters
443
+
444
+ Remote/headless protocol-to-transcript adapters are model-visible finality boundaries, not display glue. For each entrypoint mode, define which protocol messages become assistant, user, system, stream, permission, progress, history, or status-only local state; bind conversion to session/incarnation, transport generation, history cursor or live-stream generation, message id or bounded dedupe key, tool-use id where present, and viewer versus actor role. Live user-message echoes must be deduplicated without hiding historical user messages; remote tool-result messages must clear in-progress tool state even when user messages are otherwise not rendered; task, progress, compaction, and heartbeat/status signals must update counters, loading, timeout, and stale-spinner state without polluting the model-visible transcript. Product-visible status requires either a bounded typed marker outside the model-visible transcript or a lower-precedence redacted meta/status record with no raw protocol payload. Result messages need separated terminal finality and display policy: success may be status-only, but errors and unknown finality need visible degraded evidence. History pagination and replay must preserve scroll/anchor or cursor position, suppress duplicate init/setup records, cap fill loops when many protocol events convert to no visible message, and treat failed pages as retryable degraded state rather than end-of-history truth. Connection gaps, reconnect, direct-connect, remote-shell, viewer-only, and live actor modes need explicit state reset or reconciliation for pending permissions, streaming fragments, in-progress tools, background task counters, response timers, and title/suggestion side effects; diagnostics may expose bounded categories and counts, not raw messages, tool names, session ids, transport endpoints, command labels, stderr, prompt text, payload bodies, credentials, or free-form remote errors.
445
+
446
+ ## Machine-readable stdout purity
447
+
448
+ When a CLI, SDK, or headless runtime declares stdout as a machine-readable protocol channel, treat stdout/stderr separation as part of the protocol contract. Install any stdout purity guard before the first structured write; allow only complete structured frames or tolerated blank separators on stdout; divert human text, debug prints, dependency banners, setup warnings, progress lines, and console-style telemetry output to stderr or an approved diagnostic sink with a bounded marker. Structured error results that are part of the machine-readable protocol may go to stdout; human-readable validation, setup, and degraded-mode messages go to stderr unless a versioned protocol frame carries them. Guards must be idempotent, preserve writer callbacks or backpressure semantics where the host exposes them, buffer until frame boundaries before classification, flush or divert partial buffered text during abort, exception, broken-pipe, forced-close, and shutdown paths, restore the original writer during cleanup, and surface diversion as sanitized diagnostics without recording raw prompts, paths, credentials, payload bodies, account/session/principal/workspace identifiers, transport or request ids, raw stdout/stderr byte chunks, or free-form diverted lines. Disable or reroute console exporters and other background emitters that can write formatted objects to stdout while the protocol channel is active. Language-level writer guards are not enough when subprocesses, native extensions, inherited file descriptors, or host wrappers can write to the same channel; use fd-level capture/isolation or explicit child-process stdout routing for every spawned or embedded emitter under machine-readable mode. A polluted, truncated, or mixed stdout stream is a protocol failure, not a recoverable parser warning, unless the protocol defines versioned, bounded, self-delimiting resynchronization that is bound to the current generation, clears or tombstones pending requests safely, preserves durable high-watermarks, and cannot re-open completed authorization or action paths.
@@ -0,0 +1,13 @@
1
+ # Agent Task Orchestration
2
+
3
+ ## Product/runtime agent tasks as a control plane
4
+
5
+ Treat product/runtime agent tasks as a control plane, not as ad hoc promises or UI-only state. Every foreground, background, worker, remote, or in-process task needs a stable task id, task type, parent/session identity, user intent summary, capability/permission scope, tool-use or request correlation id where applicable, start/end timestamps, terminal status, output location and read offset, notification state, cleanup owner, and resumability policy. A durable task list or checklist is part of the same model-visible state: bind its storage namespace to principal/session/team/workspace scope, sanitize storage keys, preserve monotonic task identity across deletion or reset, serialize create/update/delete/claim operations with list-level or task-level locks as appropriate, validate task schema before use, and distinguish missing, malformed, blocked, already-owned, already-completed, busy-owner, and deleted tasks instead of treating them as empty success. Output for backgrounded work must be isolated from the foreground transcript unless explicitly merged, and task result insertion must preserve ordering, provenance, and finality. Bind every model-visible task summary, suggestion, queued attachment, and speculative response to task id, output generation or digest, read cursor, progress/event id, notification generation, retention generation, session incarnation, and privacy/source-scope labels; invalidate or revalidate after any output append, truncation, eviction, progress movement, read-offset change, background state change, completion notification, stalled-prompt notification, checklist create/update/claim/delete, dependency change, owner change, watcher refresh, stop/kill event, or tuple drift.
6
+
7
+ ## Task state transition safety
8
+
9
+ Task state transitions must be monotonic and race-safe. Only running or pending tasks may accept progress, injected messages, or shutdown requests; terminal tasks must reject late output, late approvals, late user messages, duplicate completion, duplicate notification, and stale poll results. Checklist/task-list transitions need the same finality: a task may be claimed only after unresolved blockers and existing owners are checked under the current list generation; dependency updates must reject cycles, dangling or deleted-task edges, cross-list or cross-namespace edges, and stale blocker snapshots before claim or completion; ownership assignment, dependency edges, creation hooks, and completion hooks must either commit atomically or surface a non-completion result without leaving half-created, falsely completed, wrongly assigned, or partially notified tasks. Watchers and polling loops must debounce file or storage events, avoid per-turn watch churn, fence hide/reset timers by the task-list generation they were scheduled for, release claims when prompt submission fails, and fall back to polling or explicit refresh when storage notifications are missed. A multi-step checklist that closes without any verification item should surface a bounded verification nudge rather than letting the final response become the only evidence of completion. Cancellation needs a typed result that distinguishes user stop, parent abort, dependency failure, timeout, and unsupported task type; parent task cancellation must abort child workers and cleanup their owned background processes, queued notifications, credentials, and output handles without killing unrelated tasks.
10
+
11
+ ## Background and remote task recovery
12
+
13
+ Background and remote task recovery must fetch fresh authority before resurrection. Persist only the metadata needed to reconnect; on resume, re-check live status, session generation/incarnation, principal/workspace scope, command/request intent, and authorization policy before re-registering a task. Archived, missing, unauthorized, or terminal remote work must not be resurrected. Pollers must use cursors or event ids, delta append, stable-idle or heartbeat debouncing, bounded timeout, and fencing against in-flight stop/kill races so a stale poll cannot overwrite a terminal state or emit a second completion. Before a resumed, retried, or replacement worker performs any write, tool action, remote call, or other external side effect, bind it to a task id, execution-attempt id, effect id or idempotency key, and authorization tuple; record durable prepared/committed/failed/unknown finality. Resume must reconnect or reconcile committed and unknown effects, not re-execute them, unless there is durable proof that no side effect committed.