xtrm-tools 0.7.0 → 0.7.1

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 (632) hide show
  1. package/.xtrm/config/README.md +10 -0
  2. package/{config/mcp_servers.json → .xtrm/config/claude.mcp.json} +0 -28
  3. package/{config → .xtrm/config}/instructions/agents-top.md +12 -3
  4. package/{config → .xtrm/config}/instructions/claude-top.md +12 -3
  5. package/{config → .xtrm/config}/pi/extensions/beads/index.ts +44 -13
  6. package/{config → .xtrm/config}/pi/extensions/custom-footer/index.ts +59 -82
  7. package/{config → .xtrm/config}/pi/extensions/xtrm-ui/index.ts +2 -2
  8. package/{config → .xtrm/config}/pi/install-schema.json +2 -2
  9. package/.xtrm/config/pi.mcp.json +39 -0
  10. package/.xtrm/config/settings.json +41 -0
  11. package/.xtrm/extensions/auto-session-name/index.ts +29 -0
  12. package/.xtrm/extensions/auto-session-name/package.json +16 -0
  13. package/.xtrm/extensions/auto-update/index.ts +71 -0
  14. package/.xtrm/extensions/auto-update/package.json +16 -0
  15. package/.xtrm/extensions/beads/index.ts +232 -0
  16. package/.xtrm/extensions/beads/package.json +19 -0
  17. package/.xtrm/extensions/compact-header/index.ts +69 -0
  18. package/.xtrm/extensions/compact-header/package.json +16 -0
  19. package/.xtrm/extensions/core/adapter.ts +52 -0
  20. package/.xtrm/extensions/core/guard-rules.ts +100 -0
  21. package/.xtrm/extensions/core/lib.ts +3 -0
  22. package/.xtrm/extensions/core/logger.ts +45 -0
  23. package/.xtrm/extensions/core/package.json +18 -0
  24. package/.xtrm/extensions/core/runner.ts +71 -0
  25. package/.xtrm/extensions/core/session-state.ts +59 -0
  26. package/.xtrm/extensions/custom-footer/index.ts +398 -0
  27. package/.xtrm/extensions/custom-footer/package.json +19 -0
  28. package/.xtrm/extensions/custom-provider-qwen-cli/index.ts +363 -0
  29. package/.xtrm/extensions/custom-provider-qwen-cli/package.json +1 -0
  30. package/.xtrm/extensions/git-checkpoint/index.ts +53 -0
  31. package/.xtrm/extensions/git-checkpoint/package.json +16 -0
  32. package/.xtrm/extensions/lsp-bootstrap/index.ts +134 -0
  33. package/.xtrm/extensions/lsp-bootstrap/package.json +17 -0
  34. package/.xtrm/extensions/pi-serena-compact/index.ts +121 -0
  35. package/.xtrm/extensions/pi-serena-compact/package.json +16 -0
  36. package/.xtrm/extensions/quality-gates/index.ts +66 -0
  37. package/.xtrm/extensions/quality-gates/package.json +19 -0
  38. package/.xtrm/extensions/service-skills/index.ts +108 -0
  39. package/.xtrm/extensions/service-skills/package.json +19 -0
  40. package/.xtrm/extensions/session-flow/index.ts +96 -0
  41. package/.xtrm/extensions/session-flow/package.json +19 -0
  42. package/.xtrm/extensions/xtrm-loader/index.ts +152 -0
  43. package/.xtrm/extensions/xtrm-loader/package.json +19 -0
  44. package/.xtrm/extensions/xtrm-ui/format.ts +93 -0
  45. package/.xtrm/extensions/xtrm-ui/index.ts +1044 -0
  46. package/.xtrm/extensions/xtrm-ui/package.json +10 -0
  47. package/.xtrm/extensions/xtrm-ui/themes/pidex-dark.json +85 -0
  48. package/.xtrm/extensions/xtrm-ui/themes/pidex-light.json +85 -0
  49. package/{hooks → .xtrm/hooks}/README.md +2 -1
  50. package/{hooks → .xtrm/hooks}/beads-commit-gate.mjs +4 -0
  51. package/.xtrm/hooks/beads-memory-gate.mjs +119 -0
  52. package/{plugins/xtrm-tools → .xtrm}/hooks/quality-check-env.mjs +1 -4
  53. package/.xtrm/hooks/statusline.mjs +156 -0
  54. package/{plugins/xtrm-tools → .xtrm}/hooks/using-xtrm-reminder.mjs +8 -7
  55. package/.xtrm/registry.json +1323 -0
  56. package/CHANGELOG.md +27 -0
  57. package/README.md +3 -1
  58. package/cli/dist/index.cjs +27158 -31320
  59. package/cli/dist/index.cjs.map +1 -1
  60. package/cli/package.json +2 -1
  61. package/package.json +12 -12
  62. package/.claude-plugin/marketplace.json +0 -19
  63. package/.claude-plugin/plugin.json +0 -9
  64. package/config/hooks.json +0 -83
  65. package/config/settings.json +0 -70
  66. package/hooks/beads-memory-gate.mjs +0 -94
  67. package/hooks/quality-check-env.mjs +0 -79
  68. package/hooks/statusline.mjs +0 -183
  69. package/hooks/tsconfig-cache.json +0 -4
  70. package/hooks/using-xtrm-reminder.mjs +0 -47
  71. package/plugins/xtrm-tools/.claude-plugin/plugin.json +0 -9
  72. package/plugins/xtrm-tools/.mcp.json +0 -18
  73. package/plugins/xtrm-tools/hooks/README.md +0 -61
  74. package/plugins/xtrm-tools/hooks/beads-claim-sync.mjs +0 -154
  75. package/plugins/xtrm-tools/hooks/beads-commit-gate.mjs +0 -70
  76. package/plugins/xtrm-tools/hooks/beads-compact-restore.mjs +0 -77
  77. package/plugins/xtrm-tools/hooks/beads-compact-save.mjs +0 -63
  78. package/plugins/xtrm-tools/hooks/beads-edit-gate.mjs +0 -85
  79. package/plugins/xtrm-tools/hooks/beads-gate-core.mjs +0 -236
  80. package/plugins/xtrm-tools/hooks/beads-gate-messages.mjs +0 -75
  81. package/plugins/xtrm-tools/hooks/beads-gate-utils.mjs +0 -176
  82. package/plugins/xtrm-tools/hooks/beads-memory-gate.mjs +0 -94
  83. package/plugins/xtrm-tools/hooks/beads-stop-gate.mjs +0 -53
  84. package/plugins/xtrm-tools/hooks/gitnexus/gitnexus-hook.cjs +0 -222
  85. package/plugins/xtrm-tools/hooks/hooks.json +0 -129
  86. package/plugins/xtrm-tools/hooks/quality-check.cjs +0 -1286
  87. package/plugins/xtrm-tools/hooks/quality-check.py +0 -345
  88. package/plugins/xtrm-tools/hooks/statusline.mjs +0 -183
  89. package/plugins/xtrm-tools/hooks/tsconfig-cache.json +0 -4
  90. package/plugins/xtrm-tools/hooks/worktree-boundary.mjs +0 -33
  91. package/plugins/xtrm-tools/hooks/xtrm-logger.mjs +0 -123
  92. package/plugins/xtrm-tools/hooks/xtrm-session-logger.mjs +0 -27
  93. package/plugins/xtrm-tools/hooks/xtrm-tool-logger.mjs +0 -53
  94. package/plugins/xtrm-tools/skills/README.txt +0 -31
  95. package/plugins/xtrm-tools/skills/clean-code/SKILL.md +0 -201
  96. package/plugins/xtrm-tools/skills/creating-service-skills/SKILL.md +0 -433
  97. package/plugins/xtrm-tools/skills/creating-service-skills/references/script_quality_standards.md +0 -425
  98. package/plugins/xtrm-tools/skills/creating-service-skills/references/service_skill_system_guide.md +0 -278
  99. package/plugins/xtrm-tools/skills/creating-service-skills/scripts/bootstrap.py +0 -326
  100. package/plugins/xtrm-tools/skills/creating-service-skills/scripts/deep_dive.py +0 -304
  101. package/plugins/xtrm-tools/skills/creating-service-skills/scripts/scaffolder.py +0 -482
  102. package/plugins/xtrm-tools/skills/delegating/SKILL.md +0 -196
  103. package/plugins/xtrm-tools/skills/delegating/config.yaml +0 -210
  104. package/plugins/xtrm-tools/skills/delegating/references/orchestration-protocols.md +0 -41
  105. package/plugins/xtrm-tools/skills/docker-expert/SKILL.md +0 -409
  106. package/plugins/xtrm-tools/skills/documenting/CHANGELOG.md +0 -23
  107. package/plugins/xtrm-tools/skills/documenting/README.md +0 -148
  108. package/plugins/xtrm-tools/skills/documenting/SKILL.md +0 -113
  109. package/plugins/xtrm-tools/skills/documenting/examples/example_pattern.md +0 -70
  110. package/plugins/xtrm-tools/skills/documenting/examples/example_reference.md +0 -70
  111. package/plugins/xtrm-tools/skills/documenting/examples/example_ssot_analytics.md +0 -64
  112. package/plugins/xtrm-tools/skills/documenting/examples/example_workflow.md +0 -141
  113. package/plugins/xtrm-tools/skills/documenting/references/changelog-format.md +0 -97
  114. package/plugins/xtrm-tools/skills/documenting/references/metadata-schema.md +0 -136
  115. package/plugins/xtrm-tools/skills/documenting/references/taxonomy.md +0 -81
  116. package/plugins/xtrm-tools/skills/documenting/references/versioning-rules.md +0 -78
  117. package/plugins/xtrm-tools/skills/documenting/scripts/bump_version.sh +0 -60
  118. package/plugins/xtrm-tools/skills/documenting/scripts/changelog/__init__.py +0 -0
  119. package/plugins/xtrm-tools/skills/documenting/scripts/changelog/add_entry.py +0 -216
  120. package/plugins/xtrm-tools/skills/documenting/scripts/changelog/bump_release.py +0 -117
  121. package/plugins/xtrm-tools/skills/documenting/scripts/changelog/init_changelog.py +0 -54
  122. package/plugins/xtrm-tools/skills/documenting/scripts/changelog/validate_changelog.py +0 -128
  123. package/plugins/xtrm-tools/skills/documenting/scripts/drift_detector.py +0 -266
  124. package/plugins/xtrm-tools/skills/documenting/scripts/generate_template.py +0 -311
  125. package/plugins/xtrm-tools/skills/documenting/scripts/list_by_category.sh +0 -84
  126. package/plugins/xtrm-tools/skills/documenting/scripts/orchestrator.py +0 -255
  127. package/plugins/xtrm-tools/skills/documenting/scripts/validate_metadata.py +0 -242
  128. package/plugins/xtrm-tools/skills/documenting/templates/CHANGELOG.md.template +0 -13
  129. package/plugins/xtrm-tools/skills/documenting/tests/integration_test.sh +0 -70
  130. package/plugins/xtrm-tools/skills/documenting/tests/test_changelog.py +0 -201
  131. package/plugins/xtrm-tools/skills/documenting/tests/test_drift_detector.py +0 -80
  132. package/plugins/xtrm-tools/skills/documenting/tests/test_orchestrator.py +0 -52
  133. package/plugins/xtrm-tools/skills/documenting/tests/test_validate_metadata.py +0 -64
  134. package/plugins/xtrm-tools/skills/find-skills/SKILL.md +0 -133
  135. package/plugins/xtrm-tools/skills/gitnexus-exploring/SKILL.md +0 -75
  136. package/plugins/xtrm-tools/skills/gitnexus-impact-analysis/SKILL.md +0 -94
  137. package/plugins/xtrm-tools/skills/gitnexus-refactoring/SKILL.md +0 -113
  138. package/plugins/xtrm-tools/skills/hook-development/SKILL.md +0 -797
  139. package/plugins/xtrm-tools/skills/hook-development/examples/load-context.sh +0 -55
  140. package/plugins/xtrm-tools/skills/hook-development/examples/quality-check.js +0 -1168
  141. package/plugins/xtrm-tools/skills/hook-development/examples/validate-bash.sh +0 -43
  142. package/plugins/xtrm-tools/skills/hook-development/examples/validate-write.sh +0 -38
  143. package/plugins/xtrm-tools/skills/hook-development/references/advanced.md +0 -527
  144. package/plugins/xtrm-tools/skills/hook-development/references/migration.md +0 -369
  145. package/plugins/xtrm-tools/skills/hook-development/references/patterns.md +0 -412
  146. package/plugins/xtrm-tools/skills/hook-development/scripts/README.md +0 -164
  147. package/plugins/xtrm-tools/skills/hook-development/scripts/hook-linter.sh +0 -153
  148. package/plugins/xtrm-tools/skills/hook-development/scripts/test-hook.sh +0 -252
  149. package/plugins/xtrm-tools/skills/hook-development/scripts/validate-hook-schema.sh +0 -159
  150. package/plugins/xtrm-tools/skills/obsidian-cli/SKILL.md +0 -106
  151. package/plugins/xtrm-tools/skills/orchestrating-agents/SKILL.md +0 -135
  152. package/plugins/xtrm-tools/skills/orchestrating-agents/config.yaml +0 -45
  153. package/plugins/xtrm-tools/skills/orchestrating-agents/references/agent-context-integration.md +0 -37
  154. package/plugins/xtrm-tools/skills/orchestrating-agents/references/examples.md +0 -45
  155. package/plugins/xtrm-tools/skills/orchestrating-agents/references/handover-protocol.md +0 -31
  156. package/plugins/xtrm-tools/skills/orchestrating-agents/references/workflows.md +0 -42
  157. package/plugins/xtrm-tools/skills/orchestrating-agents/scripts/detect_neighbors.py +0 -23
  158. package/plugins/xtrm-tools/skills/planning/SKILL.md +0 -405
  159. package/plugins/xtrm-tools/skills/planning/evals/evals.json +0 -19
  160. package/plugins/xtrm-tools/skills/prompt-improving/README.md +0 -162
  161. package/plugins/xtrm-tools/skills/prompt-improving/SKILL.md +0 -74
  162. package/plugins/xtrm-tools/skills/prompt-improving/references/analysis_commands.md +0 -24
  163. package/plugins/xtrm-tools/skills/prompt-improving/references/chain_of_thought.md +0 -24
  164. package/plugins/xtrm-tools/skills/prompt-improving/references/mcp_definitions.md +0 -20
  165. package/plugins/xtrm-tools/skills/prompt-improving/references/multishot.md +0 -23
  166. package/plugins/xtrm-tools/skills/prompt-improving/references/xml_core.md +0 -60
  167. package/plugins/xtrm-tools/skills/python-testing/SKILL.md +0 -815
  168. package/plugins/xtrm-tools/skills/scoping-service-skills/SKILL.md +0 -231
  169. package/plugins/xtrm-tools/skills/scoping-service-skills/scripts/scope.py +0 -74
  170. package/plugins/xtrm-tools/skills/senior-backend/SKILL.md +0 -209
  171. package/plugins/xtrm-tools/skills/senior-backend/references/api_design_patterns.md +0 -103
  172. package/plugins/xtrm-tools/skills/senior-backend/references/backend_security_practices.md +0 -103
  173. package/plugins/xtrm-tools/skills/senior-backend/references/database_optimization_guide.md +0 -103
  174. package/plugins/xtrm-tools/skills/senior-backend/scripts/api_load_tester.py +0 -114
  175. package/plugins/xtrm-tools/skills/senior-backend/scripts/api_scaffolder.py +0 -114
  176. package/plugins/xtrm-tools/skills/senior-backend/scripts/database_migration_tool.py +0 -114
  177. package/plugins/xtrm-tools/skills/senior-data-scientist/SKILL.md +0 -226
  178. package/plugins/xtrm-tools/skills/senior-data-scientist/references/experiment_design_frameworks.md +0 -80
  179. package/plugins/xtrm-tools/skills/senior-data-scientist/references/feature_engineering_patterns.md +0 -80
  180. package/plugins/xtrm-tools/skills/senior-data-scientist/references/statistical_methods_advanced.md +0 -80
  181. package/plugins/xtrm-tools/skills/senior-data-scientist/scripts/experiment_designer.py +0 -100
  182. package/plugins/xtrm-tools/skills/senior-data-scientist/scripts/feature_engineering_pipeline.py +0 -100
  183. package/plugins/xtrm-tools/skills/senior-data-scientist/scripts/model_evaluation_suite.py +0 -100
  184. package/plugins/xtrm-tools/skills/senior-devops/SKILL.md +0 -209
  185. package/plugins/xtrm-tools/skills/senior-devops/references/cicd_pipeline_guide.md +0 -103
  186. package/plugins/xtrm-tools/skills/senior-devops/references/deployment_strategies.md +0 -103
  187. package/plugins/xtrm-tools/skills/senior-devops/references/infrastructure_as_code.md +0 -103
  188. package/plugins/xtrm-tools/skills/senior-devops/scripts/deployment_manager.py +0 -114
  189. package/plugins/xtrm-tools/skills/senior-devops/scripts/pipeline_generator.py +0 -114
  190. package/plugins/xtrm-tools/skills/senior-devops/scripts/terraform_scaffolder.py +0 -114
  191. package/plugins/xtrm-tools/skills/senior-security/SKILL.md +0 -209
  192. package/plugins/xtrm-tools/skills/senior-security/references/cryptography_implementation.md +0 -103
  193. package/plugins/xtrm-tools/skills/senior-security/references/penetration_testing_guide.md +0 -103
  194. package/plugins/xtrm-tools/skills/senior-security/references/security_architecture_patterns.md +0 -103
  195. package/plugins/xtrm-tools/skills/senior-security/scripts/pentest_automator.py +0 -114
  196. package/plugins/xtrm-tools/skills/senior-security/scripts/security_auditor.py +0 -114
  197. package/plugins/xtrm-tools/skills/senior-security/scripts/threat_modeler.py +0 -114
  198. package/plugins/xtrm-tools/skills/skill-creator/LICENSE.txt +0 -202
  199. package/plugins/xtrm-tools/skills/skill-creator/SKILL.md +0 -479
  200. package/plugins/xtrm-tools/skills/skill-creator/agents/analyzer.md +0 -274
  201. package/plugins/xtrm-tools/skills/skill-creator/agents/comparator.md +0 -202
  202. package/plugins/xtrm-tools/skills/skill-creator/agents/grader.md +0 -223
  203. package/plugins/xtrm-tools/skills/skill-creator/assets/eval_review.html +0 -146
  204. package/plugins/xtrm-tools/skills/skill-creator/eval-viewer/generate_review.py +0 -471
  205. package/plugins/xtrm-tools/skills/skill-creator/eval-viewer/viewer.html +0 -1325
  206. package/plugins/xtrm-tools/skills/skill-creator/references/schemas.md +0 -430
  207. package/plugins/xtrm-tools/skills/skill-creator/scripts/__init__.py +0 -0
  208. package/plugins/xtrm-tools/skills/skill-creator/scripts/aggregate_benchmark.py +0 -401
  209. package/plugins/xtrm-tools/skills/skill-creator/scripts/generate_report.py +0 -326
  210. package/plugins/xtrm-tools/skills/skill-creator/scripts/improve_description.py +0 -248
  211. package/plugins/xtrm-tools/skills/skill-creator/scripts/package_skill.py +0 -136
  212. package/plugins/xtrm-tools/skills/skill-creator/scripts/quick_validate.py +0 -103
  213. package/plugins/xtrm-tools/skills/skill-creator/scripts/run_eval.py +0 -310
  214. package/plugins/xtrm-tools/skills/skill-creator/scripts/run_loop.py +0 -332
  215. package/plugins/xtrm-tools/skills/skill-creator/scripts/utils.py +0 -47
  216. package/plugins/xtrm-tools/skills/sync-docs/SKILL.md +0 -286
  217. package/plugins/xtrm-tools/skills/sync-docs/evals/evals.json +0 -89
  218. package/plugins/xtrm-tools/skills/sync-docs/references/doc-structure.md +0 -99
  219. package/plugins/xtrm-tools/skills/sync-docs/references/schema.md +0 -103
  220. package/plugins/xtrm-tools/skills/sync-docs/scripts/changelog/add_entry.py +0 -216
  221. package/plugins/xtrm-tools/skills/sync-docs/scripts/context_gatherer.py +0 -240
  222. package/plugins/xtrm-tools/skills/sync-docs/scripts/doc_structure_analyzer.py +0 -495
  223. package/plugins/xtrm-tools/skills/sync-docs/scripts/drift_detector.py +0 -563
  224. package/plugins/xtrm-tools/skills/sync-docs/scripts/validate_doc.py +0 -365
  225. package/plugins/xtrm-tools/skills/sync-docs/scripts/validate_metadata.py +0 -185
  226. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/benchmark.json +0 -293
  227. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/benchmark.md +0 -13
  228. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-doc-audit/eval_metadata.json +0 -27
  229. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-doc-audit/with_skill/outputs/result.md +0 -210
  230. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-doc-audit/with_skill/run-1/grading.json +0 -28
  231. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-doc-audit/with_skill/run-1/timing.json +0 -1
  232. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-doc-audit/without_skill/outputs/result.md +0 -101
  233. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-doc-audit/without_skill/run-1/grading.json +0 -28
  234. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-doc-audit/without_skill/run-1/timing.json +0 -5
  235. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-doc-audit/without_skill/timing.json +0 -5
  236. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-fix-mode/eval_metadata.json +0 -27
  237. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-fix-mode/with_skill/outputs/result.md +0 -198
  238. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-fix-mode/with_skill/run-1/grading.json +0 -28
  239. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-fix-mode/with_skill/run-1/timing.json +0 -1
  240. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-fix-mode/without_skill/outputs/result.md +0 -94
  241. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-fix-mode/without_skill/run-1/grading.json +0 -28
  242. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-fix-mode/without_skill/run-1/timing.json +0 -1
  243. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-sprint-closeout/eval_metadata.json +0 -27
  244. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-sprint-closeout/with_skill/outputs/result.md +0 -237
  245. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-sprint-closeout/with_skill/run-1/grading.json +0 -28
  246. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-sprint-closeout/with_skill/run-1/timing.json +0 -1
  247. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-sprint-closeout/without_skill/outputs/result.md +0 -134
  248. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-sprint-closeout/without_skill/run-1/grading.json +0 -28
  249. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-1/eval-sprint-closeout/without_skill/run-1/timing.json +0 -1
  250. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/benchmark.json +0 -297
  251. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/benchmark.md +0 -13
  252. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-doc-audit/eval_metadata.json +0 -27
  253. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-doc-audit/with_skill/outputs/result.md +0 -137
  254. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-doc-audit/with_skill/run-1/grading.json +0 -92
  255. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-doc-audit/with_skill/run-1/timing.json +0 -1
  256. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-doc-audit/without_skill/outputs/result.md +0 -134
  257. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-doc-audit/without_skill/run-1/grading.json +0 -86
  258. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-doc-audit/without_skill/run-1/timing.json +0 -1
  259. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-fix-mode/eval_metadata.json +0 -27
  260. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-fix-mode/with_skill/outputs/result.md +0 -193
  261. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-fix-mode/with_skill/run-1/grading.json +0 -72
  262. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-fix-mode/with_skill/run-1/timing.json +0 -1
  263. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-fix-mode/without_skill/outputs/result.md +0 -211
  264. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-fix-mode/without_skill/run-1/grading.json +0 -91
  265. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-fix-mode/without_skill/run-1/timing.json +0 -5
  266. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-sprint-closeout/eval_metadata.json +0 -27
  267. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-sprint-closeout/with_skill/outputs/result.md +0 -182
  268. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-sprint-closeout/with_skill/run-1/grading.json +0 -95
  269. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-sprint-closeout/with_skill/run-1/timing.json +0 -1
  270. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-sprint-closeout/without_skill/outputs/result.md +0 -222
  271. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-sprint-closeout/without_skill/run-1/grading.json +0 -88
  272. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-2/eval-sprint-closeout/without_skill/run-1/timing.json +0 -5
  273. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/benchmark.json +0 -298
  274. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/benchmark.md +0 -13
  275. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-doc-audit/eval_metadata.json +0 -27
  276. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-doc-audit/with_skill/outputs/result.md +0 -125
  277. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-doc-audit/with_skill/run-1/grading.json +0 -97
  278. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-doc-audit/with_skill/run-1/timing.json +0 -5
  279. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-doc-audit/without_skill/outputs/result.md +0 -144
  280. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-doc-audit/without_skill/run-1/grading.json +0 -78
  281. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-doc-audit/without_skill/run-1/timing.json +0 -5
  282. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-fix-mode/eval_metadata.json +0 -27
  283. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-fix-mode/with_skill/outputs/result.md +0 -104
  284. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-fix-mode/with_skill/run-1/grading.json +0 -91
  285. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-fix-mode/with_skill/run-1/timing.json +0 -5
  286. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-fix-mode/without_skill/outputs/result.md +0 -79
  287. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-fix-mode/without_skill/run-1/grading.json +0 -82
  288. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-fix-mode/without_skill/run-1/timing.json +0 -5
  289. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/eval_metadata.json +0 -27
  290. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/with_skill/outputs/phase1_context.json +0 -302
  291. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/with_skill/outputs/phase2_drift.txt +0 -33
  292. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/with_skill/outputs/phase3_analysis.json +0 -114
  293. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/with_skill/outputs/phase4_fix.txt +0 -118
  294. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/with_skill/outputs/phase5_validate.txt +0 -38
  295. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/with_skill/outputs/result.md +0 -158
  296. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/with_skill/run-1/grading.json +0 -95
  297. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/with_skill/run-1/timing.json +0 -5
  298. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/without_skill/outputs/result.md +0 -71
  299. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/without_skill/run-1/grading.json +0 -90
  300. package/plugins/xtrm-tools/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/without_skill/run-1/timing.json +0 -5
  301. package/plugins/xtrm-tools/skills/test-planning/SKILL.md +0 -465
  302. package/plugins/xtrm-tools/skills/test-planning/evals/evals.json +0 -23
  303. package/plugins/xtrm-tools/skills/updating-service-skills/SKILL.md +0 -136
  304. package/plugins/xtrm-tools/skills/updating-service-skills/scripts/drift_detector.py +0 -222
  305. package/plugins/xtrm-tools/skills/using-quality-gates/SKILL.md +0 -254
  306. package/plugins/xtrm-tools/skills/using-serena-lsp/README.md +0 -8
  307. package/plugins/xtrm-tools/skills/using-serena-lsp/REFERENCE.md +0 -194
  308. package/plugins/xtrm-tools/skills/using-serena-lsp/SKILL.md +0 -82
  309. package/plugins/xtrm-tools/skills/using-service-skills/SKILL.md +0 -108
  310. package/plugins/xtrm-tools/skills/using-service-skills/scripts/cataloger.py +0 -74
  311. package/plugins/xtrm-tools/skills/using-service-skills/scripts/skill_activator.py +0 -152
  312. package/plugins/xtrm-tools/skills/using-service-skills/scripts/test_skill_activator.py +0 -58
  313. package/plugins/xtrm-tools/skills/using-tdd/SKILL.md +0 -410
  314. package/plugins/xtrm-tools/skills/using-xtrm/SKILL.md +0 -127
  315. package/plugins/xtrm-tools/skills/xt-debugging/SKILL.md +0 -149
  316. package/plugins/xtrm-tools/skills/xt-end/SKILL.md +0 -297
  317. package/plugins/xtrm-tools/skills/xt-merge/SKILL.md +0 -313
  318. package/project-skills/quality-gates/.claude/hooks/hook-config.json +0 -66
  319. package/project-skills/quality-gates/.claude/hooks/quality-check.cjs +0 -1286
  320. package/project-skills/quality-gates/.claude/hooks/quality-check.py +0 -334
  321. package/project-skills/quality-gates/.claude/settings.json +0 -3
  322. package/project-skills/quality-gates/.claude/skills/using-quality-gates/SKILL.md +0 -254
  323. package/project-skills/quality-gates/README.md +0 -109
  324. package/project-skills/quality-gates/evals/evals.json +0 -181
  325. package/project-skills/quality-gates/workspace/iteration-1/FINAL-EVAL-SUMMARY.md +0 -75
  326. package/project-skills/quality-gates/workspace/iteration-1/edge-case-auto-fix-verification/with_skill/outputs/response.md +0 -59
  327. package/project-skills/quality-gates/workspace/iteration-1/edge-case-mixed-language-project/with_skill/outputs/response.md +0 -60
  328. package/project-skills/quality-gates/workspace/iteration-1/eval-summary.md +0 -105
  329. package/project-skills/quality-gates/workspace/iteration-1/partial-install-python-only/with_skill/outputs/response.md +0 -93
  330. package/project-skills/quality-gates/workspace/iteration-1/python-refactor-request/with_skill/outputs/response.md +0 -104
  331. package/project-skills/quality-gates/workspace/iteration-1/quality-gate-error-fix/with_skill/outputs/response.md +0 -74
  332. package/project-skills/quality-gates/workspace/iteration-1/should-not-trigger-general-chat/with_skill/outputs/response.md +0 -18
  333. package/project-skills/quality-gates/workspace/iteration-1/should-not-trigger-math-question/with_skill/outputs/response.md +0 -18
  334. package/project-skills/quality-gates/workspace/iteration-1/should-not-trigger-unrelated-coding/with_skill/outputs/response.md +0 -56
  335. package/project-skills/quality-gates/workspace/iteration-1/tdd-guard-blocking-confusion/with_skill/outputs/response.md +0 -67
  336. package/project-skills/quality-gates/workspace/iteration-1/typescript-feature-with-tests/with_skill/outputs/response.md +0 -97
  337. package/project-skills/service-skills-set/.claude/git-hooks/doc_reminder.py +0 -67
  338. package/project-skills/service-skills-set/.claude/git-hooks/skill_staleness.py +0 -194
  339. package/project-skills/service-skills-set/.claude/service-registry.json +0 -4
  340. package/project-skills/service-skills-set/.claude/settings.json +0 -37
  341. package/project-skills/service-skills-set/.claude/skills/creating-service-skills/SKILL.md +0 -433
  342. package/project-skills/service-skills-set/.claude/skills/creating-service-skills/references/script_quality_standards.md +0 -425
  343. package/project-skills/service-skills-set/.claude/skills/creating-service-skills/references/service_skill_system_guide.md +0 -278
  344. package/project-skills/service-skills-set/.claude/skills/creating-service-skills/scripts/bootstrap.py +0 -308
  345. package/project-skills/service-skills-set/.claude/skills/creating-service-skills/scripts/deep_dive.py +0 -304
  346. package/project-skills/service-skills-set/.claude/skills/creating-service-skills/scripts/scaffolder.py +0 -482
  347. package/project-skills/service-skills-set/.claude/skills/scoping-service-skills/SKILL.md +0 -231
  348. package/project-skills/service-skills-set/.claude/skills/scoping-service-skills/scripts/scope.py +0 -74
  349. package/project-skills/service-skills-set/.claude/skills/updating-service-skills/SKILL.md +0 -136
  350. package/project-skills/service-skills-set/.claude/skills/updating-service-skills/scripts/drift_detector.py +0 -222
  351. package/project-skills/service-skills-set/.claude/skills/using-service-skills/SKILL.md +0 -108
  352. package/project-skills/service-skills-set/.claude/skills/using-service-skills/scripts/cataloger.py +0 -74
  353. package/project-skills/service-skills-set/.claude/skills/using-service-skills/scripts/skill_activator.py +0 -152
  354. package/project-skills/service-skills-set/README.md +0 -93
  355. package/project-skills/service-skills-set/install-service-skills.py +0 -193
  356. package/project-skills/service-skills-set/service-skills-readme.md +0 -236
  357. package/skills/README.txt +0 -31
  358. package/skills/clean-code/SKILL.md +0 -201
  359. package/skills/creating-service-skills/SKILL.md +0 -433
  360. package/skills/creating-service-skills/references/script_quality_standards.md +0 -425
  361. package/skills/creating-service-skills/references/service_skill_system_guide.md +0 -278
  362. package/skills/creating-service-skills/scripts/bootstrap.py +0 -326
  363. package/skills/creating-service-skills/scripts/deep_dive.py +0 -304
  364. package/skills/creating-service-skills/scripts/scaffolder.py +0 -482
  365. package/skills/delegating/SKILL.md +0 -196
  366. package/skills/delegating/config.yaml +0 -210
  367. package/skills/delegating/references/orchestration-protocols.md +0 -41
  368. package/skills/docker-expert/SKILL.md +0 -409
  369. package/skills/documenting/CHANGELOG.md +0 -23
  370. package/skills/documenting/README.md +0 -148
  371. package/skills/documenting/SKILL.md +0 -113
  372. package/skills/documenting/examples/example_pattern.md +0 -70
  373. package/skills/documenting/examples/example_reference.md +0 -70
  374. package/skills/documenting/examples/example_ssot_analytics.md +0 -64
  375. package/skills/documenting/examples/example_workflow.md +0 -141
  376. package/skills/documenting/references/changelog-format.md +0 -97
  377. package/skills/documenting/references/metadata-schema.md +0 -136
  378. package/skills/documenting/references/taxonomy.md +0 -81
  379. package/skills/documenting/references/versioning-rules.md +0 -78
  380. package/skills/documenting/scripts/bump_version.sh +0 -60
  381. package/skills/documenting/scripts/changelog/__init__.py +0 -0
  382. package/skills/documenting/scripts/changelog/add_entry.py +0 -216
  383. package/skills/documenting/scripts/changelog/bump_release.py +0 -117
  384. package/skills/documenting/scripts/changelog/init_changelog.py +0 -54
  385. package/skills/documenting/scripts/changelog/validate_changelog.py +0 -128
  386. package/skills/documenting/scripts/drift_detector.py +0 -266
  387. package/skills/documenting/scripts/generate_template.py +0 -311
  388. package/skills/documenting/scripts/list_by_category.sh +0 -84
  389. package/skills/documenting/scripts/orchestrator.py +0 -255
  390. package/skills/documenting/scripts/validate_metadata.py +0 -242
  391. package/skills/documenting/templates/CHANGELOG.md.template +0 -13
  392. package/skills/find-skills/SKILL.md +0 -133
  393. package/skills/gitnexus-exploring/SKILL.md +0 -75
  394. package/skills/gitnexus-impact-analysis/SKILL.md +0 -94
  395. package/skills/gitnexus-refactoring/SKILL.md +0 -113
  396. package/skills/hook-development/SKILL.md +0 -797
  397. package/skills/hook-development/examples/load-context.sh +0 -55
  398. package/skills/hook-development/examples/quality-check.js +0 -1168
  399. package/skills/hook-development/examples/validate-bash.sh +0 -43
  400. package/skills/hook-development/examples/validate-write.sh +0 -38
  401. package/skills/hook-development/references/advanced.md +0 -527
  402. package/skills/hook-development/references/migration.md +0 -369
  403. package/skills/hook-development/references/patterns.md +0 -412
  404. package/skills/hook-development/scripts/README.md +0 -164
  405. package/skills/hook-development/scripts/hook-linter.sh +0 -153
  406. package/skills/hook-development/scripts/test-hook.sh +0 -252
  407. package/skills/hook-development/scripts/validate-hook-schema.sh +0 -159
  408. package/skills/obsidian-cli/SKILL.md +0 -106
  409. package/skills/orchestrating-agents/SKILL.md +0 -135
  410. package/skills/orchestrating-agents/config.yaml +0 -45
  411. package/skills/orchestrating-agents/references/agent-context-integration.md +0 -37
  412. package/skills/orchestrating-agents/references/examples.md +0 -45
  413. package/skills/orchestrating-agents/references/handover-protocol.md +0 -31
  414. package/skills/orchestrating-agents/references/workflows.md +0 -42
  415. package/skills/orchestrating-agents/scripts/detect_neighbors.py +0 -23
  416. package/skills/planning/SKILL.md +0 -405
  417. package/skills/planning/evals/evals.json +0 -19
  418. package/skills/prompt-improving/README.md +0 -162
  419. package/skills/prompt-improving/SKILL.md +0 -74
  420. package/skills/prompt-improving/references/analysis_commands.md +0 -24
  421. package/skills/prompt-improving/references/chain_of_thought.md +0 -24
  422. package/skills/prompt-improving/references/mcp_definitions.md +0 -20
  423. package/skills/prompt-improving/references/multishot.md +0 -23
  424. package/skills/prompt-improving/references/xml_core.md +0 -60
  425. package/skills/python-testing/SKILL.md +0 -815
  426. package/skills/scoping-service-skills/SKILL.md +0 -231
  427. package/skills/scoping-service-skills/scripts/scope.py +0 -74
  428. package/skills/senior-backend/SKILL.md +0 -209
  429. package/skills/senior-backend/references/api_design_patterns.md +0 -103
  430. package/skills/senior-backend/references/backend_security_practices.md +0 -103
  431. package/skills/senior-backend/references/database_optimization_guide.md +0 -103
  432. package/skills/senior-backend/scripts/api_load_tester.py +0 -114
  433. package/skills/senior-backend/scripts/api_scaffolder.py +0 -114
  434. package/skills/senior-backend/scripts/database_migration_tool.py +0 -114
  435. package/skills/senior-data-scientist/SKILL.md +0 -226
  436. package/skills/senior-data-scientist/references/experiment_design_frameworks.md +0 -80
  437. package/skills/senior-data-scientist/references/feature_engineering_patterns.md +0 -80
  438. package/skills/senior-data-scientist/references/statistical_methods_advanced.md +0 -80
  439. package/skills/senior-data-scientist/scripts/experiment_designer.py +0 -100
  440. package/skills/senior-data-scientist/scripts/feature_engineering_pipeline.py +0 -100
  441. package/skills/senior-data-scientist/scripts/model_evaluation_suite.py +0 -100
  442. package/skills/senior-devops/SKILL.md +0 -209
  443. package/skills/senior-devops/references/cicd_pipeline_guide.md +0 -103
  444. package/skills/senior-devops/references/deployment_strategies.md +0 -103
  445. package/skills/senior-devops/references/infrastructure_as_code.md +0 -103
  446. package/skills/senior-devops/scripts/deployment_manager.py +0 -114
  447. package/skills/senior-devops/scripts/pipeline_generator.py +0 -114
  448. package/skills/senior-devops/scripts/terraform_scaffolder.py +0 -114
  449. package/skills/senior-security/SKILL.md +0 -209
  450. package/skills/senior-security/references/cryptography_implementation.md +0 -103
  451. package/skills/senior-security/references/penetration_testing_guide.md +0 -103
  452. package/skills/senior-security/references/security_architecture_patterns.md +0 -103
  453. package/skills/senior-security/scripts/pentest_automator.py +0 -114
  454. package/skills/senior-security/scripts/security_auditor.py +0 -114
  455. package/skills/senior-security/scripts/threat_modeler.py +0 -114
  456. package/skills/skill-creator/LICENSE.txt +0 -202
  457. package/skills/skill-creator/SKILL.md +0 -479
  458. package/skills/skill-creator/agents/analyzer.md +0 -274
  459. package/skills/skill-creator/agents/comparator.md +0 -202
  460. package/skills/skill-creator/agents/grader.md +0 -223
  461. package/skills/skill-creator/assets/eval_review.html +0 -146
  462. package/skills/skill-creator/eval-viewer/generate_review.py +0 -471
  463. package/skills/skill-creator/eval-viewer/viewer.html +0 -1325
  464. package/skills/skill-creator/references/schemas.md +0 -430
  465. package/skills/skill-creator/scripts/__init__.py +0 -0
  466. package/skills/skill-creator/scripts/aggregate_benchmark.py +0 -401
  467. package/skills/skill-creator/scripts/generate_report.py +0 -326
  468. package/skills/skill-creator/scripts/improve_description.py +0 -248
  469. package/skills/skill-creator/scripts/package_skill.py +0 -136
  470. package/skills/skill-creator/scripts/quick_validate.py +0 -103
  471. package/skills/skill-creator/scripts/run_eval.py +0 -310
  472. package/skills/skill-creator/scripts/run_loop.py +0 -332
  473. package/skills/skill-creator/scripts/utils.py +0 -47
  474. package/skills/sync-docs/SKILL.md +0 -286
  475. package/skills/sync-docs/evals/evals.json +0 -89
  476. package/skills/sync-docs/references/doc-structure.md +0 -99
  477. package/skills/sync-docs/references/schema.md +0 -103
  478. package/skills/sync-docs/scripts/changelog/add_entry.py +0 -216
  479. package/skills/sync-docs/scripts/context_gatherer.py +0 -240
  480. package/skills/sync-docs/scripts/doc_structure_analyzer.py +0 -495
  481. package/skills/sync-docs/scripts/drift_detector.py +0 -563
  482. package/skills/sync-docs/scripts/validate_doc.py +0 -365
  483. package/skills/sync-docs/scripts/validate_metadata.py +0 -185
  484. package/skills/sync-docs-workspace/iteration-1/benchmark.json +0 -293
  485. package/skills/sync-docs-workspace/iteration-1/benchmark.md +0 -13
  486. package/skills/sync-docs-workspace/iteration-1/eval-doc-audit/eval_metadata.json +0 -27
  487. package/skills/sync-docs-workspace/iteration-1/eval-doc-audit/with_skill/outputs/result.md +0 -210
  488. package/skills/sync-docs-workspace/iteration-1/eval-doc-audit/with_skill/run-1/grading.json +0 -28
  489. package/skills/sync-docs-workspace/iteration-1/eval-doc-audit/with_skill/run-1/timing.json +0 -1
  490. package/skills/sync-docs-workspace/iteration-1/eval-doc-audit/without_skill/outputs/result.md +0 -101
  491. package/skills/sync-docs-workspace/iteration-1/eval-doc-audit/without_skill/run-1/grading.json +0 -28
  492. package/skills/sync-docs-workspace/iteration-1/eval-doc-audit/without_skill/run-1/timing.json +0 -5
  493. package/skills/sync-docs-workspace/iteration-1/eval-doc-audit/without_skill/timing.json +0 -5
  494. package/skills/sync-docs-workspace/iteration-1/eval-fix-mode/eval_metadata.json +0 -27
  495. package/skills/sync-docs-workspace/iteration-1/eval-fix-mode/with_skill/outputs/result.md +0 -198
  496. package/skills/sync-docs-workspace/iteration-1/eval-fix-mode/with_skill/run-1/grading.json +0 -28
  497. package/skills/sync-docs-workspace/iteration-1/eval-fix-mode/with_skill/run-1/timing.json +0 -1
  498. package/skills/sync-docs-workspace/iteration-1/eval-fix-mode/without_skill/outputs/result.md +0 -94
  499. package/skills/sync-docs-workspace/iteration-1/eval-fix-mode/without_skill/run-1/grading.json +0 -28
  500. package/skills/sync-docs-workspace/iteration-1/eval-fix-mode/without_skill/run-1/timing.json +0 -1
  501. package/skills/sync-docs-workspace/iteration-1/eval-sprint-closeout/eval_metadata.json +0 -27
  502. package/skills/sync-docs-workspace/iteration-1/eval-sprint-closeout/with_skill/outputs/result.md +0 -237
  503. package/skills/sync-docs-workspace/iteration-1/eval-sprint-closeout/with_skill/run-1/grading.json +0 -28
  504. package/skills/sync-docs-workspace/iteration-1/eval-sprint-closeout/with_skill/run-1/timing.json +0 -1
  505. package/skills/sync-docs-workspace/iteration-1/eval-sprint-closeout/without_skill/outputs/result.md +0 -134
  506. package/skills/sync-docs-workspace/iteration-1/eval-sprint-closeout/without_skill/run-1/grading.json +0 -28
  507. package/skills/sync-docs-workspace/iteration-1/eval-sprint-closeout/without_skill/run-1/timing.json +0 -1
  508. package/skills/sync-docs-workspace/iteration-2/benchmark.json +0 -297
  509. package/skills/sync-docs-workspace/iteration-2/benchmark.md +0 -13
  510. package/skills/sync-docs-workspace/iteration-2/eval-doc-audit/eval_metadata.json +0 -27
  511. package/skills/sync-docs-workspace/iteration-2/eval-doc-audit/with_skill/outputs/result.md +0 -137
  512. package/skills/sync-docs-workspace/iteration-2/eval-doc-audit/with_skill/run-1/grading.json +0 -92
  513. package/skills/sync-docs-workspace/iteration-2/eval-doc-audit/with_skill/run-1/timing.json +0 -1
  514. package/skills/sync-docs-workspace/iteration-2/eval-doc-audit/without_skill/outputs/result.md +0 -134
  515. package/skills/sync-docs-workspace/iteration-2/eval-doc-audit/without_skill/run-1/grading.json +0 -86
  516. package/skills/sync-docs-workspace/iteration-2/eval-doc-audit/without_skill/run-1/timing.json +0 -1
  517. package/skills/sync-docs-workspace/iteration-2/eval-fix-mode/eval_metadata.json +0 -27
  518. package/skills/sync-docs-workspace/iteration-2/eval-fix-mode/with_skill/outputs/result.md +0 -193
  519. package/skills/sync-docs-workspace/iteration-2/eval-fix-mode/with_skill/run-1/grading.json +0 -72
  520. package/skills/sync-docs-workspace/iteration-2/eval-fix-mode/with_skill/run-1/timing.json +0 -1
  521. package/skills/sync-docs-workspace/iteration-2/eval-fix-mode/without_skill/outputs/result.md +0 -211
  522. package/skills/sync-docs-workspace/iteration-2/eval-fix-mode/without_skill/run-1/grading.json +0 -91
  523. package/skills/sync-docs-workspace/iteration-2/eval-fix-mode/without_skill/run-1/timing.json +0 -5
  524. package/skills/sync-docs-workspace/iteration-2/eval-sprint-closeout/eval_metadata.json +0 -27
  525. package/skills/sync-docs-workspace/iteration-2/eval-sprint-closeout/with_skill/outputs/result.md +0 -182
  526. package/skills/sync-docs-workspace/iteration-2/eval-sprint-closeout/with_skill/run-1/grading.json +0 -95
  527. package/skills/sync-docs-workspace/iteration-2/eval-sprint-closeout/with_skill/run-1/timing.json +0 -1
  528. package/skills/sync-docs-workspace/iteration-2/eval-sprint-closeout/without_skill/outputs/result.md +0 -222
  529. package/skills/sync-docs-workspace/iteration-2/eval-sprint-closeout/without_skill/run-1/grading.json +0 -88
  530. package/skills/sync-docs-workspace/iteration-2/eval-sprint-closeout/without_skill/run-1/timing.json +0 -5
  531. package/skills/sync-docs-workspace/iteration-3/benchmark.json +0 -298
  532. package/skills/sync-docs-workspace/iteration-3/benchmark.md +0 -13
  533. package/skills/sync-docs-workspace/iteration-3/eval-doc-audit/eval_metadata.json +0 -27
  534. package/skills/sync-docs-workspace/iteration-3/eval-doc-audit/with_skill/outputs/result.md +0 -125
  535. package/skills/sync-docs-workspace/iteration-3/eval-doc-audit/with_skill/run-1/grading.json +0 -97
  536. package/skills/sync-docs-workspace/iteration-3/eval-doc-audit/with_skill/run-1/timing.json +0 -5
  537. package/skills/sync-docs-workspace/iteration-3/eval-doc-audit/without_skill/outputs/result.md +0 -144
  538. package/skills/sync-docs-workspace/iteration-3/eval-doc-audit/without_skill/run-1/grading.json +0 -78
  539. package/skills/sync-docs-workspace/iteration-3/eval-doc-audit/without_skill/run-1/timing.json +0 -5
  540. package/skills/sync-docs-workspace/iteration-3/eval-fix-mode/eval_metadata.json +0 -27
  541. package/skills/sync-docs-workspace/iteration-3/eval-fix-mode/with_skill/outputs/result.md +0 -104
  542. package/skills/sync-docs-workspace/iteration-3/eval-fix-mode/with_skill/run-1/grading.json +0 -91
  543. package/skills/sync-docs-workspace/iteration-3/eval-fix-mode/with_skill/run-1/timing.json +0 -5
  544. package/skills/sync-docs-workspace/iteration-3/eval-fix-mode/without_skill/outputs/result.md +0 -79
  545. package/skills/sync-docs-workspace/iteration-3/eval-fix-mode/without_skill/run-1/grading.json +0 -82
  546. package/skills/sync-docs-workspace/iteration-3/eval-fix-mode/without_skill/run-1/timing.json +0 -5
  547. package/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/eval_metadata.json +0 -27
  548. package/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/with_skill/outputs/phase1_context.json +0 -302
  549. package/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/with_skill/outputs/phase2_drift.txt +0 -33
  550. package/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/with_skill/outputs/phase3_analysis.json +0 -114
  551. package/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/with_skill/outputs/phase4_fix.txt +0 -118
  552. package/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/with_skill/outputs/phase5_validate.txt +0 -38
  553. package/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/with_skill/outputs/result.md +0 -158
  554. package/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/with_skill/run-1/grading.json +0 -95
  555. package/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/with_skill/run-1/timing.json +0 -5
  556. package/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/without_skill/outputs/result.md +0 -71
  557. package/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/without_skill/run-1/grading.json +0 -90
  558. package/skills/sync-docs-workspace/iteration-3/eval-sprint-closeout/without_skill/run-1/timing.json +0 -5
  559. package/skills/test-planning/SKILL.md +0 -465
  560. package/skills/test-planning/evals/evals.json +0 -23
  561. package/skills/updating-service-skills/SKILL.md +0 -136
  562. package/skills/updating-service-skills/scripts/drift_detector.py +0 -222
  563. package/skills/using-quality-gates/SKILL.md +0 -254
  564. package/skills/using-serena-lsp/README.md +0 -8
  565. package/skills/using-serena-lsp/REFERENCE.md +0 -194
  566. package/skills/using-serena-lsp/SKILL.md +0 -82
  567. package/skills/using-service-skills/SKILL.md +0 -108
  568. package/skills/using-service-skills/scripts/cataloger.py +0 -74
  569. package/skills/using-service-skills/scripts/skill_activator.py +0 -152
  570. package/skills/using-service-skills/scripts/test_skill_activator.py +0 -58
  571. package/skills/using-tdd/SKILL.md +0 -410
  572. package/skills/using-xtrm/SKILL.md +0 -127
  573. package/skills/xt-debugging/SKILL.md +0 -149
  574. package/skills/xt-end/SKILL.md +0 -297
  575. package/skills/xt-merge/SKILL.md +0 -313
  576. /package/{config → .xtrm/config}/.env.example +0 -0
  577. /package/{config/mcp_servers_optional.json → .xtrm/config/claude.mcp.optional.json} +0 -0
  578. /package/{hooks → .xtrm/config}/hooks.json +0 -0
  579. /package/{config → .xtrm/config}/pi/auth.json.template +0 -0
  580. /package/{config → .xtrm/config}/pi/extensions/auto-session-name/index.ts +0 -0
  581. /package/{config → .xtrm/config}/pi/extensions/auto-session-name/package.json +0 -0
  582. /package/{config → .xtrm/config}/pi/extensions/auto-update/index.ts +0 -0
  583. /package/{config → .xtrm/config}/pi/extensions/auto-update/package.json +0 -0
  584. /package/{config → .xtrm/config}/pi/extensions/beads/package.json +0 -0
  585. /package/{config → .xtrm/config}/pi/extensions/compact-header/index.ts +0 -0
  586. /package/{config → .xtrm/config}/pi/extensions/compact-header/package.json +0 -0
  587. /package/{config → .xtrm/config}/pi/extensions/core/adapter.ts +0 -0
  588. /package/{config → .xtrm/config}/pi/extensions/core/guard-rules.ts +0 -0
  589. /package/{config → .xtrm/config}/pi/extensions/core/lib.ts +0 -0
  590. /package/{config → .xtrm/config}/pi/extensions/core/logger.ts +0 -0
  591. /package/{config → .xtrm/config}/pi/extensions/core/package.json +0 -0
  592. /package/{config → .xtrm/config}/pi/extensions/core/runner.ts +0 -0
  593. /package/{config → .xtrm/config}/pi/extensions/core/session-state.ts +0 -0
  594. /package/{config → .xtrm/config}/pi/extensions/custom-footer/package.json +0 -0
  595. /package/{config → .xtrm/config}/pi/extensions/custom-provider-qwen-cli/index.ts +0 -0
  596. /package/{config → .xtrm/config}/pi/extensions/custom-provider-qwen-cli/package.json +0 -0
  597. /package/{config → .xtrm/config}/pi/extensions/git-checkpoint/index.ts +0 -0
  598. /package/{config → .xtrm/config}/pi/extensions/git-checkpoint/package.json +0 -0
  599. /package/{config → .xtrm/config}/pi/extensions/lsp-bootstrap/index.ts +0 -0
  600. /package/{config → .xtrm/config}/pi/extensions/lsp-bootstrap/package.json +0 -0
  601. /package/{config → .xtrm/config}/pi/extensions/pi-serena-compact/index.ts +0 -0
  602. /package/{config → .xtrm/config}/pi/extensions/pi-serena-compact/package.json +0 -0
  603. /package/{config → .xtrm/config}/pi/extensions/quality-gates/index.ts +0 -0
  604. /package/{config → .xtrm/config}/pi/extensions/quality-gates/package.json +0 -0
  605. /package/{config → .xtrm/config}/pi/extensions/service-skills/index.ts +0 -0
  606. /package/{config → .xtrm/config}/pi/extensions/service-skills/package.json +0 -0
  607. /package/{config → .xtrm/config}/pi/extensions/session-flow/index.ts +0 -0
  608. /package/{config → .xtrm/config}/pi/extensions/session-flow/package.json +0 -0
  609. /package/{config → .xtrm/config}/pi/extensions/xtrm-loader/index.ts +0 -0
  610. /package/{config → .xtrm/config}/pi/extensions/xtrm-loader/package.json +0 -0
  611. /package/{config → .xtrm/config}/pi/extensions/xtrm-ui/format.ts +0 -0
  612. /package/{config → .xtrm/config}/pi/extensions/xtrm-ui/package.json +0 -0
  613. /package/{config → .xtrm/config}/pi/extensions/xtrm-ui/themes/pidex-dark.json +0 -0
  614. /package/{config → .xtrm/config}/pi/extensions/xtrm-ui/themes/pidex-light.json +0 -0
  615. /package/{config → .xtrm/config}/pi/models.json.template +0 -0
  616. /package/{config → .xtrm/config}/pi/pi-worktrees-settings.json +0 -0
  617. /package/{config → .xtrm/config}/pi/settings.json.template +0 -0
  618. /package/{hooks → .xtrm/hooks}/beads-claim-sync.mjs +0 -0
  619. /package/{hooks → .xtrm/hooks}/beads-compact-restore.mjs +0 -0
  620. /package/{hooks → .xtrm/hooks}/beads-compact-save.mjs +0 -0
  621. /package/{hooks → .xtrm/hooks}/beads-edit-gate.mjs +0 -0
  622. /package/{hooks → .xtrm/hooks}/beads-gate-core.mjs +0 -0
  623. /package/{hooks → .xtrm/hooks}/beads-gate-messages.mjs +0 -0
  624. /package/{hooks → .xtrm/hooks}/beads-gate-utils.mjs +0 -0
  625. /package/{hooks → .xtrm/hooks}/beads-stop-gate.mjs +0 -0
  626. /package/{hooks → .xtrm/hooks}/gitnexus/gitnexus-hook.cjs +0 -0
  627. /package/{hooks → .xtrm/hooks}/quality-check.cjs +0 -0
  628. /package/{hooks → .xtrm/hooks}/quality-check.py +0 -0
  629. /package/{hooks → .xtrm/hooks}/worktree-boundary.mjs +0 -0
  630. /package/{hooks → .xtrm/hooks}/xtrm-logger.mjs +0 -0
  631. /package/{hooks → .xtrm/hooks}/xtrm-session-logger.mjs +0 -0
  632. /package/{hooks → .xtrm/hooks}/xtrm-tool-logger.mjs +0 -0
@@ -1,152 +0,0 @@
1
- #!/usr/bin/env python3
2
- """
3
- PreToolUse hook: skill activator.
4
-
5
- Fires before Read, Write, Edit, Glob, Grep, or Bash operations.
6
- Checks whether the operation touches a registered service territory.
7
- If it does, injects additionalContext telling Claude to load the skill
8
- before proceeding — ensuring expert knowledge is always applied.
9
-
10
- Configured in .claude/settings.json PreToolUse hook.
11
- Must be fast: pure file I/O + string matching, no subprocess.
12
- """
13
-
14
- import fnmatch
15
- import json
16
- import sys
17
- from pathlib import Path
18
-
19
- BOOTSTRAP_DIR = Path(__file__).parent.parent.parent / "creating-service-skills" / "scripts"
20
- sys.path.insert(0, str(BOOTSTRAP_DIR))
21
-
22
- from bootstrap import RootResolutionError, get_project_root, load_registry # noqa: E402 # type: ignore[import-not-found]
23
-
24
-
25
- def match_territory(file_path: str, territory: list[str], project_root: Path) -> bool:
26
- """Check if a file path matches any territory glob pattern."""
27
- # Normalize to relative path
28
- fp = Path(file_path)
29
- if fp.is_absolute():
30
- try:
31
- fp = fp.relative_to(project_root)
32
- except ValueError:
33
- return False
34
- rel = str(fp)
35
-
36
- for pattern in territory:
37
- # fnmatch handles * and ?, but not ** — handle ** manually
38
- if "**" in pattern:
39
- # Split on **/ and check prefix + suffix
40
- parts = pattern.split("**/")
41
- if len(parts) == 2:
42
- prefix, suffix = parts
43
- rel_check = rel[len(prefix) :] if rel.startswith(prefix) else rel
44
- if fnmatch.fnmatch(rel_check, suffix) or fnmatch.fnmatch(
45
- rel, f"{prefix}*/{suffix}"
46
- ):
47
- return True
48
- # Also check if file is anywhere under the prefix dir
49
- if prefix and rel.startswith(prefix.rstrip("/")):
50
- return True
51
- else:
52
- if fnmatch.fnmatch(rel, pattern):
53
- return True
54
- # Direct prefix match for broad patterns
55
- base = pattern.split("/*")[0].split("/**")[0]
56
- if base and (rel.startswith(base + "/") or rel == base):
57
- return True
58
-
59
- return False
60
-
61
-
62
- def find_service_for_file(
63
- file_path: str, services: dict, project_root: Path
64
- ) -> tuple[str, dict] | None:
65
- """Return (service_id, service_data) if file is in any territory, else None."""
66
- for service_id, data in services.items():
67
- if match_territory(file_path, data.get("territory", []), project_root):
68
- return service_id, data
69
- return None
70
-
71
-
72
- def find_service_for_command(command: str, services: dict) -> tuple[str, dict] | None:
73
- """Return (service_id, service_data) if command mentions a service name."""
74
- cmd_lower = command.lower()
75
- for service_id, data in services.items():
76
- # Match service_id directly or as a container name in docker commands
77
- if service_id in cmd_lower:
78
- return service_id, data
79
- # Match the container name pattern (service name with dashes/underscores)
80
- if data.get("name") and data.get("name", "").lower().replace(" ", "-") in cmd_lower:
81
- return service_id, data
82
- return None
83
-
84
-
85
- def build_context(service_id: str, data: dict) -> str:
86
- skill_path = data.get("skill_path", f".claude/skills/{service_id}/SKILL.md")
87
- desc = data.get("description", "")
88
- desc_line = f"\n What it covers: {desc}" if desc else ""
89
-
90
- return (
91
- f"[Service Skill] You are about to work with the '{service_id}' service territory."
92
- f"{desc_line}\n"
93
- f" Load the expert skill before proceeding: Read {skill_path}\n"
94
- f" The skill contains: operational knowledge, failure modes, diagnostic scripts, "
95
- f"and the correct methods for managing this service.\n"
96
- f" Do not use ad-hoc approaches (raw SQL, improvised docker commands) "
97
- f"when the skill defines the correct method."
98
- )
99
-
100
-
101
- def main() -> None:
102
- try:
103
- data = json.load(sys.stdin)
104
- except (json.JSONDecodeError, EOFError):
105
- sys.exit(0)
106
-
107
- tool_name = data.get("tool_name", "")
108
- tool_input = data.get("tool_input", {})
109
-
110
- try:
111
- project_root = Path(get_project_root())
112
- services = load_registry().get("services", {})
113
- except (RootResolutionError, Exception):
114
- sys.exit(0)
115
-
116
- if not services:
117
- sys.exit(0)
118
-
119
- match = None
120
-
121
- # File-based tools: check file_path against territory
122
- if tool_name in ("Read", "Write", "Edit", "Glob", "Grep", "NotebookRead", "NotebookEdit"):
123
- file_path = (
124
- tool_input.get("file_path")
125
- or tool_input.get("path")
126
- or tool_input.get("notebook_path")
127
- or ""
128
- )
129
- if file_path:
130
- match = find_service_for_file(file_path, services, project_root)
131
-
132
- # Bash: check command string for service names
133
- elif tool_name == "Bash":
134
- command = tool_input.get("command", "")
135
- if command:
136
- match = find_service_for_command(command, services)
137
-
138
- if match:
139
- service_id, service_data = match
140
- output = {
141
- "hookSpecificOutput": {
142
- "hookEventName": "PreToolUse",
143
- "additionalContext": build_context(service_id, service_data),
144
- }
145
- }
146
- print(json.dumps(output))
147
-
148
- sys.exit(0)
149
-
150
-
151
- if __name__ == "__main__":
152
- main()
@@ -1,93 +0,0 @@
1
- # Service Skills Set
2
-
3
- **Service Skills** give Claude persistent, project-specific operational knowledge about your Docker services. Instead of re-explaining your architecture every session, each service gets a dedicated skill package that Claude loads on demand.
4
-
5
- ## What It Does
6
-
7
- ### Three Workflow Skills (Trinity)
8
-
9
- | Skill | Role | Invocation |
10
- |-------|------|------------|
11
- | `creating-service-skills` | Builds new skill packages via 3-phase workflow | `/creating-service-skills` |
12
- | `using-service-skills` | Discovers and activates expert personas | Auto (SessionStart hook) |
13
- | `updating-service-skills` | Detects drift when code changes | Auto (PostToolUse hook) |
14
-
15
- ### Five Hooks
16
-
17
- | Hook | Type | Trigger | Effect |
18
- |------|------|---------|--------|
19
- | `SessionStart` | Claude Code | Session opens | Injects service catalog (~150 tokens) |
20
- | `PreToolUse` | Claude Code | Read/Write/Edit/Grep/Glob/Bash | Checks service territory, activates skills |
21
- | `PostToolUse` | Claude Code | Write/Edit | Detects drift, notifies to sync docs |
22
- | `pre-commit` | Git | `git commit` | Warns if source changed without SSOT update |
23
- | `pre-push` | Git | `git push` | Warns if service skills are stale |
24
-
25
- ## Installation
26
-
27
- ```bash
28
- # From your project directory
29
- xtrm install project service-skills-set
30
- ```
31
-
32
- **Post-install:** The Service Skills Set requires Python scripts to be executable. The installer will:
33
- 1. Copy skills to `.claude/skills/`
34
- 2. Wire `settings.json` hooks
35
- 3. Activate git hooks (`pre-commit`, `pre-push`)
36
-
37
- ## Creating a Service Skill
38
-
39
- After installation, invoke the skill in Claude Code:
40
-
41
- ```bash
42
- /creating-service-skills
43
- ```
44
-
45
- This runs a 3-phase workflow:
46
-
47
- ### Phase 1: Automated Skeleton
48
- - Reads `docker-compose*.yml`, `Dockerfile`, dependency files
49
- - Produces `SKILL.md` with `[PENDING RESEARCH]` markers
50
- - Generates script stubs in `scripts/`
51
- - Creates entry in `.claude/skills/service-registry.json`
52
-
53
- ### Phase 2: Agentic Deep Dive
54
- - Uses Serena LSP for codebase research (75-80% token savings)
55
- - Fills `[PENDING RESEARCH]` markers with actual knowledge
56
- - Sources troubleshooting tables from real failure modes
57
-
58
- ### Phase 3: Hook Registration
59
- - Verifies `PreToolUse` hook in `settings.json`
60
- - Confirms service territory globs in registry
61
- - Skill now auto-activates on territory file access
62
-
63
- ## Generated Skill Structure
64
-
65
- ```
66
- .claude/skills/<service-name>/
67
- ├── SKILL.md — architecture, failure modes, operations
68
- ├── scripts/
69
- │ ├── health_probe.py — container status check
70
- │ ├── log_hunter.py — log pattern analysis
71
- │ ├── data_explorer.py — read-only DB inspection
72
- │ └── <specialist>.py — service-type inspector
73
- └── references/
74
- ├── deep_dive.md — Phase 2 research notes
75
- └── architecture_ssot.md — link to project SSOT
76
- ```
77
-
78
- ## Auto-Activation
79
-
80
- Skills activate automatically when Claude:
81
- - Operates on files matching territory globs (e.g., `src/auth/**/*.py`)
82
- - Runs Bash commands mentioning service/container name
83
-
84
- ## Requirements
85
-
86
- - Python 3.8+
87
- - Git repository
88
- - Docker Compose project
89
-
90
- ## Documentation
91
-
92
- - Full guide: `.claude/docs/service-skills-set-readme.md`
93
- - Original: `project-skills/service-skills-set/service-skills-readme.md`
@@ -1,193 +0,0 @@
1
- #!/usr/bin/env python3
2
- """
3
- Install the Service Skill Trinity into the current project.
4
-
5
- Run from inside your target project directory:
6
- python3 /path/to/jaggers-agent-tools/project-skills/install-service-skills.py
7
-
8
- Installs:
9
- .claude/skills/creating-service-skills/ — scaffold new service skills
10
- .claude/skills/using-service-skills/ — session-start catalog injection
11
- .claude/skills/updating-service-skills/ — drift detection on file writes
12
- .claude/skills/scoping-service-skills/ — task intake and service routing
13
- .claude/settings.json — SessionStart + PostToolUse hooks
14
- .githooks/pre-commit — doc-reminder (non-blocking)
15
- .githooks/pre-push — skill-staleness (non-blocking)
16
- .git/hooks/pre-commit + pre-push — activated
17
-
18
- Idempotent. Safe to re-run.
19
- """
20
-
21
- import json
22
- import shutil
23
- import subprocess
24
- import sys
25
- from pathlib import Path
26
-
27
- SCRIPT_DIR = Path(__file__).parent.resolve() # project-skills/service-skills-set/
28
- REPO_ROOT = SCRIPT_DIR.parent.parent.resolve() # jaggers-agent-tools/
29
- SKILLS_SRC = SCRIPT_DIR / ".claude" # service-skills-set/.claude/<skill>/
30
- GIT_HOOKS = SKILLS_SRC / "git-hooks" # service-skills-set/.claude/git-hooks/
31
-
32
- GREEN = "\033[0;32m"
33
- YELLOW = "\033[1;33m"
34
- NC = "\033[0m"
35
-
36
- TRINITY = ["creating-service-skills", "using-service-skills", "updating-service-skills", "scoping-service-skills"]
37
-
38
- SETTINGS_HOOKS = {
39
- "SessionStart": [
40
- {"hooks": [{"type": "command",
41
- "command": "python3 \"$CLAUDE_PROJECT_DIR/.claude/skills/using-service-skills/scripts/cataloger.py\""}]}
42
- ],
43
- "PreToolUse": [
44
- {"matcher": "Read|Write|Edit|Glob|Grep|Bash|mcp__serena__rename_symbol|mcp__serena__replace_symbol_body|mcp__serena__insert_after_symbol|mcp__serena__insert_before_symbol",
45
- "hooks": [{"type": "command",
46
- "command": "python3 \"$CLAUDE_PROJECT_DIR/.claude/skills/using-service-skills/scripts/skill_activator.py\""}]}
47
- ],
48
- "PostToolUse": [
49
- {"matcher": "Write|Edit|mcp__serena__rename_symbol|mcp__serena__replace_symbol_body|mcp__serena__insert_after_symbol|mcp__serena__insert_before_symbol",
50
- "hooks": [{"type": "command",
51
- "command": "python3 \"$CLAUDE_PROJECT_DIR/.claude/skills/updating-service-skills/scripts/drift_detector.py\" check-hook",
52
- "timeout": 10}]}
53
- ]
54
- }
55
-
56
- MARKER_DOC = "# [jaggers] doc-reminder"
57
- MARKER_STALENESS = "# [jaggers] skill-staleness"
58
- MARKER_CHAIN = "# [jaggers] chain-githooks"
59
-
60
-
61
- def get_project_root() -> Path:
62
- try:
63
- r = subprocess.run(["git", "rev-parse", "--show-toplevel"],
64
- capture_output=True, text=True, check=True, timeout=5)
65
- root = Path(r.stdout.strip())
66
- if root == REPO_ROOT:
67
- print("Error: run this from inside your TARGET project, not jaggers-agent-tools itself.")
68
- sys.exit(1)
69
- return root
70
- except subprocess.CalledProcessError:
71
- print("Error: not inside a git repository.")
72
- sys.exit(1)
73
-
74
-
75
- def install_skills(project_root: Path) -> None:
76
- print("\n── Skills ──────────────────────────────")
77
- for skill in TRINITY:
78
- src = SKILLS_SRC / skill
79
- dest = project_root / ".claude" / "skills" / skill
80
- if dest.exists():
81
- shutil.rmtree(dest)
82
- shutil.copytree(src, dest, ignore=shutil.ignore_patterns("*.Zone.Identifier"))
83
- print(f"{GREEN} ✓{NC} .claude/skills/{skill}/")
84
-
85
-
86
- def install_settings(project_root: Path) -> None:
87
- print("\n── settings.json ───────────────────────")
88
- path = project_root / ".claude" / "settings.json"
89
- path.parent.mkdir(parents=True, exist_ok=True)
90
-
91
- existing = {}
92
- if path.exists():
93
- try:
94
- existing = json.loads(path.read_text(encoding="utf-8"))
95
- except json.JSONDecodeError:
96
- pass
97
-
98
- hooks = existing.setdefault("hooks", {})
99
- for event, config in SETTINGS_HOOKS.items():
100
- if event not in hooks:
101
- hooks[event] = config
102
- print(f"{GREEN} ✓{NC} added hook: {event}")
103
- else:
104
- print(f"{YELLOW} ○{NC} hook already present: {event} (not overwritten)")
105
-
106
- path.write_text(json.dumps(existing, indent=2) + "\n", encoding="utf-8")
107
-
108
-
109
- def install_git_hooks(project_root: Path) -> None:
110
- print("\n── Git hooks ───────────────────────────")
111
- doc_script = GIT_HOOKS / "doc_reminder.py"
112
- staleness_script = GIT_HOOKS / "skill_staleness.py"
113
-
114
- pre_commit = project_root / ".githooks" / "pre-commit"
115
- pre_push = project_root / ".githooks" / "pre-push"
116
-
117
- for hp in (pre_commit, pre_push):
118
- if not hp.exists():
119
- hp.parent.mkdir(parents=True, exist_ok=True)
120
- hp.write_text("#!/usr/bin/env bash\n", encoding="utf-8")
121
- hp.chmod(0o755)
122
-
123
- snippets = [
124
- (pre_commit, MARKER_DOC,
125
- f"\n{MARKER_DOC}\nif command -v python3 &>/dev/null && [ -f \"{doc_script}\" ]; then\n python3 \"{doc_script}\" || true\nfi\n"),
126
- (pre_push, MARKER_STALENESS,
127
- f"\n{MARKER_STALENESS}\nif command -v python3 &>/dev/null && [ -f \"{staleness_script}\" ]; then\n python3 \"{staleness_script}\" || true\nfi\n"),
128
- ]
129
-
130
- for hook_path, marker, snippet in snippets:
131
- content = hook_path.read_text(encoding="utf-8")
132
- if marker not in content:
133
- hook_path.write_text(content + snippet, encoding="utf-8")
134
- print(f"{GREEN} ✓{NC} {hook_path.relative_to(project_root)}")
135
- else:
136
- print(f"{YELLOW} ○{NC} already installed: {hook_path.name}")
137
-
138
- hooks_path = ""
139
- try:
140
- r = subprocess.run(
141
- ["git", "config", "--get", "core.hooksPath"],
142
- cwd=project_root,
143
- capture_output=True,
144
- text=True,
145
- timeout=5,
146
- check=False,
147
- )
148
- if r.returncode == 0:
149
- hooks_path = r.stdout.strip()
150
- except Exception:
151
- hooks_path = ""
152
-
153
- active_hooks_dir = (Path(hooks_path) if Path(hooks_path).is_absolute() else project_root / hooks_path) if hooks_path else (project_root / ".git" / "hooks")
154
- activation_targets = {project_root / ".git" / "hooks", active_hooks_dir}
155
-
156
- for hooks_dir in activation_targets:
157
- hooks_dir.mkdir(parents=True, exist_ok=True)
158
- for name, source_hook in (("pre-commit", pre_commit), ("pre-push", pre_push)):
159
- target_hook = hooks_dir / name
160
- if not target_hook.exists():
161
- target_hook.write_text("#!/usr/bin/env bash\n", encoding="utf-8")
162
- target_hook.chmod(0o755)
163
-
164
- if target_hook.resolve() == source_hook.resolve():
165
- continue
166
-
167
- chain_snippet = (
168
- f"\n{MARKER_CHAIN}\n"
169
- f"if [ -x \"{source_hook}\" ]; then\n"
170
- f" \"{source_hook}\" \"$@\"\n"
171
- "fi\n"
172
- )
173
- target_content = target_hook.read_text(encoding="utf-8")
174
- if MARKER_CHAIN not in target_content:
175
- target_hook.write_text(target_content + chain_snippet, encoding="utf-8")
176
-
177
- print(f"{GREEN} ✓{NC} activated in .git/hooks/")
178
-
179
-
180
- def main() -> None:
181
- project_root = get_project_root()
182
- print(f"Installing into: {project_root}")
183
-
184
- install_skills(project_root)
185
- install_settings(project_root)
186
- install_git_hooks(project_root)
187
-
188
- print(f"\n{GREEN}Done.{NC}")
189
- print(f" Hooks active: SessionStart (catalog) · PreToolUse (skill activator) · PostToolUse (drift) · pre-commit · pre-push")
190
-
191
-
192
- if __name__ == "__main__":
193
- main()
@@ -1,236 +0,0 @@
1
- # Service Skills
2
-
3
- A system that gives Claude persistent, project-specific operational knowledge about your Docker services. Instead of re-explaining your architecture every session, each service has a dedicated skill package that Claude loads on demand.
4
-
5
- ---
6
-
7
- ## What It Does
8
-
9
- **Three workflow skills** form the trinity:
10
-
11
- | Skill | Role | When it runs |
12
- |---|---|---|
13
- | `creating-service-skills` | Builds new skill packages via 3-phase workflow (scaffold + Serena deep dive + hook registration) | Manually via `/creating-service-skills` |
14
- | `using-service-skills` | Discovers and activates expert personas | Automatically at session start |
15
- | `updating-service-skills` | Detects drift when code changes | Automatically on every file write |
16
-
17
- **Five hooks** keep everything wired together:
18
-
19
- | Hook | Type | Trigger | Effect |
20
- |---|---|---|---|
21
- | `SessionStart` | Claude Code | Session opens | Injects lightweight service catalog into context (~150 tokens) |
22
- | `PreToolUse` | Claude Code | Any Read/Write/Edit/Grep/Glob/Bash | Checks if the operation touches a service territory; injects skill load reminder and enforcement |
23
- | `PostToolUse` | Claude Code | Any Write/Edit | Checks if modified file belongs to a registered service; notifies Claude to sync docs |
24
- | `pre-commit` | Git | `git commit` | Warns if source files changed without SSOT documentation update (non-blocking) |
25
- | `pre-push` | Git | `git push` | Warns if service skills are older than the source files being pushed (non-blocking) |
26
-
27
- **Each generated skill package** for a service contains:
28
-
29
- ```
30
- .claude/skills/<service-name>/
31
- ├── SKILL.md — architecture, data flows, failure modes, common operations
32
- ├── scripts/
33
- │ ├── health_probe.py — container status + table freshness check
34
- │ ├── log_hunter.py — service-specific log pattern analysis
35
- │ ├── data_explorer.py — read-only DB inspection
36
- │ └── <specialist>.py — service-type-specific inspector
37
- └── references/
38
- ├── deep_dive.md — Phase 2 research notes
39
- └── architecture_ssot.md — link to project SSOT if available
40
- ```
41
-
42
- ---
43
-
44
- ## Installation
45
-
46
- Run once, from inside your target project directory:
47
-
48
- ```bash
49
- cd ~/projects/my-project
50
- python3 /path/to/jaggers-agent-tools/project-skills/service-skills-set/install-service-skills.py
51
- ```
52
-
53
- This installs the three workflow skills, wires `settings.json` hooks, and activates git hooks. Idempotent — safe to re-run after updates.
54
-
55
- ---
56
-
57
- ## Creating a Service Skill
58
-
59
- ```bash
60
- # In Claude Code, invoke the skill:
61
- /creating-service-skills
62
- ```
63
-
64
- The skill runs a **mandatory three-phase workflow**:
65
-
66
- ### Phase 1 — Automated Skeleton
67
-
68
- ```bash
69
- python3 "$CLAUDE_PROJECT_DIR/.claude/skills/creating-service-skills/scripts/scaffolder.py" \
70
- create <service-id> <territory-path> "<description>"
71
- ```
72
-
73
- Reads `docker-compose*.yml`, `Dockerfile`, and dependency files. Produces:
74
- - `SKILL.md` with `[PENDING RESEARCH]` markers
75
- - Script stubs in `scripts/`
76
- - Official documentation links auto-detected from image tags and package files
77
- - Entry in `.claude/skills/service-registry.json`
78
-
79
- ### Phase 2 — Agentic Deep Dive
80
-
81
- Claude reads the actual source code to fill every `[PENDING RESEARCH]` marker.
82
- Uses Serena LSP tools (not raw file reads) for efficiency:
83
-
84
- ```
85
- get_symbols_overview → map module structure
86
- find_symbol → read specific functions
87
- search_for_pattern → find log strings, SQL queries, env vars
88
- find_referencing_symbols → trace data flows
89
- ```
90
-
91
- ### Phase 3 — Hook Registration
92
-
93
- After the deep dive is complete, Claude verifies the auto-activation infrastructure:
94
-
95
- 1. Confirms the `PreToolUse` hook is present in `.claude/settings.json` (pointing to `skill_activator.py`)
96
- 2. Verifies the service entry in `.claude/skills/service-registry.json` has territory globs set
97
- 3. Informs you that the skill will now auto-activate whenever Claude:
98
- - Operates on a file matching the service's territory globs
99
- - Runs a Bash command that mentions the service name or container name
100
-
101
- No manual registration step is needed — the installer wires the hooks at project setup time. Phase 3 is a verification and communication step only.
102
-
103
- A skill is **complete** only when:
104
- - No `[PENDING RESEARCH]` markers remain
105
- - `health_probe.py` queries real tables with correct stale thresholds
106
- - `log_hunter.py` patterns sourced from actual codebase error strings
107
- - Troubleshooting table has ≥5 rows from real failure modes
108
- - All scripts support `--json` output
109
- - `PreToolUse` skill activator hook confirmed in `.claude/settings.json`
110
- - Service territory globs verified in `.claude/skills/service-registry.json`
111
- - You have been informed: skill auto-activates on territory file access and service-name commands
112
-
113
- ---
114
-
115
- ## Using a Service Skill
116
-
117
- At session start, Claude receives:
118
-
119
- ```xml
120
- <project_service_catalog>
121
- Available expert personas:
122
- - db-expert: SQL & schema optimization (Path: .claude/skills/db-expert/SKILL.md)
123
- - auth-service: JWT authentication expert (Path: .claude/skills/auth-service/SKILL.md)
124
- </project_service_catalog>
125
- ```
126
-
127
- Claude automatically loads the relevant skill when you ask about a covered service. You can also invoke explicitly:
128
-
129
- ```
130
- Read .claude/skills/<service-name>/SKILL.md
131
- ```
132
-
133
- ### Auto-activation
134
-
135
- Once a service skill is registered, you don't need to load it manually.
136
- The `PreToolUse` hook (`skill_activator.py`) fires automatically whenever
137
- Claude operates on a file in the service's territory or runs a Bash command
138
- mentioning the service name. It injects:
139
-
140
- ```
141
- [Service Skill] You are about to work with the 'auth-service' service territory.
142
- Load the expert skill before proceeding: Read .claude/skills/auth-service/SKILL.md
143
- Do not use ad-hoc approaches (raw SQL, improvised docker commands) when the
144
- skill defines the correct method.
145
- ```
146
-
147
- This enforces that Claude uses the skill's defined diagnostic scripts and
148
- operational procedures rather than improvising — e.g. running `health_probe.py`
149
- instead of issuing direct `psql` queries, or checking `log_hunter.py` patterns
150
- before reading raw docker logs.
151
-
152
- ### Run scripts directly
153
-
154
- ```bash
155
- python3 .claude/skills/<service-name>/scripts/health_probe.py
156
- python3 .claude/skills/<service-name>/scripts/log_hunter.py --errors-only
157
- python3 .claude/skills/<service-name>/scripts/data_explorer.py --limit 20 --json
158
- ```
159
-
160
- ---
161
-
162
- ## Updating a Service Skill
163
-
164
- When you modify service source code, the `PostToolUse` hook fires automatically and Claude sees:
165
-
166
- ```
167
- [Skill Sync]: Implementation drift detected in 'auth-service'.
168
- File 'src/auth/jwt.py' was modified.
169
- Use '/updating-service-skills' to sync the Auth Service documentation.
170
- ```
171
-
172
- To sync:
173
-
174
- ```bash
175
- /updating-service-skills
176
- ```
177
-
178
- To mark a service as synced after manual update:
179
-
180
- ```bash
181
- python3 .claude/skills/updating-service-skills/scripts/drift_detector.py sync <service-id>
182
- ```
183
-
184
- To scan all services for drift:
185
-
186
- ```bash
187
- python3 .claude/skills/updating-service-skills/scripts/drift_detector.py scan
188
- ```
189
-
190
- ---
191
-
192
- ## Registry
193
-
194
- `.claude/skills/service-registry.json` is the source of truth for registered services:
195
-
196
- ```json
197
- {
198
- "services": {
199
- "auth-service": {
200
- "name": "Auth Service",
201
- "territory": ["src/auth/**/*.py"],
202
- "skill_path": ".claude/skills/auth-service/SKILL.md",
203
- "description": "JWT authentication and session management",
204
- "last_sync": "2026-02-23T19:00:00Z"
205
- }
206
- }
207
- }
208
- ```
209
-
210
- The `territory` globs determine which file paths trigger drift detection and skill auto-activation.
211
-
212
- ---
213
-
214
- ## Project Structure
215
-
216
- ```
217
- project-skills/service-skills-set/ — this repository's source
218
- ├── install-service-skills.py — installer (run from inside target project)
219
- └── .claude/
220
- ├── settings.json — settings template with all 3 hook events
221
- ├── git-hooks/
222
- │ ├── doc_reminder.py — pre-commit: SSOT reminder
223
- │ └── skill_staleness.py — pre-push: stale skill warning
224
- ├── creating-service-skills/ — workflow skill: build new service skills
225
- ├── using-service-skills/ — workflow skill: catalog injection + skill activation
226
- └── updating-service-skills/ — workflow skill: drift detection
227
-
228
- .claude/ — installed into your project
229
- ├── settings.json — SessionStart + PreToolUse + PostToolUse hooks
230
- └── skills/
231
- ├── service-registry.json
232
- ├── creating-service-skills/
233
- ├── using-service-skills/
234
- ├── updating-service-skills/
235
- └── <generated-service-skills>/
236
- ```