@r1z4x/tezgah 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (582) hide show
  1. package/CHANGELOG.md +738 -0
  2. package/LICENSE +21 -0
  3. package/MANIFEST +753 -0
  4. package/README.de.md +169 -0
  5. package/README.es.md +168 -0
  6. package/README.fr.md +166 -0
  7. package/README.md +161 -0
  8. package/README.tr.md +163 -0
  9. package/agents/tezgah-reviewer.md +70 -0
  10. package/bin/codegen +337 -0
  11. package/bin/consult +797 -0
  12. package/bin/tezgah-adhd +50 -0
  13. package/bin/tezgah-agents +45 -0
  14. package/bin/tezgah-capture +66 -0
  15. package/bin/tezgah-context +96 -0
  16. package/bin/tezgah-decisions +213 -0
  17. package/bin/tezgah-design +953 -0
  18. package/bin/tezgah-docs +1199 -0
  19. package/bin/tezgah-doctor +497 -0
  20. package/bin/tezgah-dsh +37 -0
  21. package/bin/tezgah-dsh.cmd +70 -0
  22. package/bin/tezgah-gate +75 -0
  23. package/bin/tezgah-import-ai-research +439 -0
  24. package/bin/tezgah-index +32 -0
  25. package/bin/tezgah-lessons +148 -0
  26. package/bin/tezgah-mcp +322 -0
  27. package/bin/tezgah-migrate +324 -0
  28. package/bin/tezgah-pony +50 -0
  29. package/bin/tezgah-research +772 -0
  30. package/bin/tezgah-rollback +93 -0
  31. package/bin/tezgah-route +124 -0
  32. package/bin/tezgah-setup +5798 -0
  33. package/bin/tezgah-status +383 -0
  34. package/bin/tezgah-task +607 -0
  35. package/bin/tezgah-taste +423 -0
  36. package/bin/tezgah-triage +485 -0
  37. package/bin/tezgah.js +36 -0
  38. package/commands/adhd.md +21 -0
  39. package/commands/ponytail.md +21 -0
  40. package/docs/README.md +112 -0
  41. package/docs/architecture.md +226 -0
  42. package/docs/citations-baseline.json +59 -0
  43. package/docs/clarity-baseline.json +116 -0
  44. package/docs/contract.md +416 -0
  45. package/docs/environment.md +141 -0
  46. package/docs/evidence.md +831 -0
  47. package/docs/feature-audit.md +139 -0
  48. package/docs/gate.md +407 -0
  49. package/docs/glossary.md +201 -0
  50. package/docs/hosts.md +400 -0
  51. package/docs/index.json +471 -0
  52. package/docs/judge.md +193 -0
  53. package/docs/layers.md +189 -0
  54. package/docs/models.md +160 -0
  55. package/docs/operations.md +666 -0
  56. package/docs/research.md +809 -0
  57. package/docs/results/paired-outcome-2026-10.jsonl +254 -0
  58. package/docs/results/paired-outcome-2026-10.md +204 -0
  59. package/docs/skills.md +236 -0
  60. package/docs/status-line.md +315 -0
  61. package/docs/testing.md +287 -0
  62. package/docs/vision.md +117 -0
  63. package/hooks/hooks.json +33 -0
  64. package/hooks/projects-auto-init.py +98 -0
  65. package/hooks/projects-posttooluse.py +149 -0
  66. package/hooks/projects-pretooluse.py +40 -0
  67. package/hooks/projects-stop.py +60 -0
  68. package/hooks/tezgah_agents.py +817 -0
  69. package/hooks/tezgah_apps.py +266 -0
  70. package/hooks/tezgah_attest.py +255 -0
  71. package/hooks/tezgah_clarity.py +171 -0
  72. package/hooks/tezgah_components.py +140 -0
  73. package/hooks/tezgah_context.py +2953 -0
  74. package/hooks/tezgah_embed.py +765 -0
  75. package/hooks/tezgah_gate.py +2736 -0
  76. package/hooks/tezgah_guard.py +177 -0
  77. package/hooks/tezgah_index.py +124 -0
  78. package/hooks/tezgah_integrity.py +5141 -0
  79. package/hooks/tezgah_judge.py +487 -0
  80. package/hooks/tezgah_lang.py +230 -0
  81. package/hooks/tezgah_lessons.py +210 -0
  82. package/hooks/tezgah_models.py +855 -0
  83. package/hooks/tezgah_paths.py +1132 -0
  84. package/hooks/tezgah_policy.py +1039 -0
  85. package/hooks/tezgah_rank.py +77 -0
  86. package/hooks/tezgah_replay.py +1109 -0
  87. package/hooks/tezgah_research.py +5176 -0
  88. package/hooks/tezgah_shapes.py +305 -0
  89. package/hooks/tezgah_skill_pick.py +227 -0
  90. package/hooks/tezgah_snapshot.py +490 -0
  91. package/hooks/tezgah_stopspec.py +320 -0
  92. package/hooks/tezgah_task.py +458 -0
  93. package/hooks/tezgah_taste.py +201 -0
  94. package/hooks/tezgah_untrusted.py +112 -0
  95. package/hooks/tezgah_update.py +430 -0
  96. package/hosts/codex/hook.py +268 -0
  97. package/hosts/codex/hooks.json +26 -0
  98. package/hosts/cursor/hook.py +461 -0
  99. package/hosts/cursor/hooks.json +44 -0
  100. package/hosts/dsh/hooks.json +21 -0
  101. package/hosts/dsh/statusline/lib/client.js +138 -0
  102. package/hosts/dsh/statusline/lib/index.js +104 -0
  103. package/hosts/dsh/statusline/package.json +28 -0
  104. package/hosts/omp/hook.py +277 -0
  105. package/hosts/omp/tezgah-hook.ts.in +701 -0
  106. package/hosts/opencode/plugins/tezgah.js +2742 -0
  107. package/hosts/opencode/tui/tezgah-tui.tsx +151 -0
  108. package/output-styles/tezgah.md +142 -0
  109. package/package.json +32 -0
  110. package/packaging/build.sh +342 -0
  111. package/packaging/install.ps1 +166 -0
  112. package/packaging/install.sh +56 -0
  113. package/packaging/upgrade.sh +142 -0
  114. package/skills/ai-research/0-autoresearch-skill/SKILL.md +411 -0
  115. package/skills/ai-research/0-autoresearch-skill/references/agent-continuity.md +95 -0
  116. package/skills/ai-research/0-autoresearch-skill/references/progress-reporting.md +166 -0
  117. package/skills/ai-research/0-autoresearch-skill/references/skill-routing.md +219 -0
  118. package/skills/ai-research/0-autoresearch-skill/templates/findings.md +44 -0
  119. package/skills/ai-research/0-autoresearch-skill/templates/research-log.md +41 -0
  120. package/skills/ai-research/01-model-architecture/litgpt/SKILL.md +469 -0
  121. package/skills/ai-research/01-model-architecture/litgpt/references/custom-models.md +569 -0
  122. package/skills/ai-research/01-model-architecture/litgpt/references/distributed-training.md +452 -0
  123. package/skills/ai-research/01-model-architecture/litgpt/references/supported-models.md +337 -0
  124. package/skills/ai-research/01-model-architecture/litgpt/references/training-recipes.md +620 -0
  125. package/skills/ai-research/01-model-architecture/mamba/SKILL.md +260 -0
  126. package/skills/ai-research/01-model-architecture/mamba/references/architecture-details.md +207 -0
  127. package/skills/ai-research/01-model-architecture/mamba/references/benchmarks.md +256 -0
  128. package/skills/ai-research/01-model-architecture/mamba/references/training-guide.md +389 -0
  129. package/skills/ai-research/01-model-architecture/nanogpt/SKILL.md +290 -0
  130. package/skills/ai-research/01-model-architecture/nanogpt/references/architecture.md +383 -0
  131. package/skills/ai-research/01-model-architecture/nanogpt/references/data.md +477 -0
  132. package/skills/ai-research/01-model-architecture/nanogpt/references/training.md +565 -0
  133. package/skills/ai-research/01-model-architecture/rwkv/SKILL.md +260 -0
  134. package/skills/ai-research/01-model-architecture/rwkv/references/architecture-details.md +345 -0
  135. package/skills/ai-research/01-model-architecture/rwkv/references/rwkv7.md +387 -0
  136. package/skills/ai-research/01-model-architecture/rwkv/references/state-management.md +370 -0
  137. package/skills/ai-research/01-model-architecture/torchtitan/SKILL.md +358 -0
  138. package/skills/ai-research/01-model-architecture/torchtitan/references/checkpoint.md +182 -0
  139. package/skills/ai-research/01-model-architecture/torchtitan/references/custom-models.md +259 -0
  140. package/skills/ai-research/01-model-architecture/torchtitan/references/float8.md +134 -0
  141. package/skills/ai-research/01-model-architecture/torchtitan/references/fsdp.md +127 -0
  142. package/skills/ai-research/02-tokenization/huggingface-tokenizers/SKILL.md +516 -0
  143. package/skills/ai-research/02-tokenization/huggingface-tokenizers/references/algorithms.md +654 -0
  144. package/skills/ai-research/02-tokenization/huggingface-tokenizers/references/integration.md +638 -0
  145. package/skills/ai-research/02-tokenization/huggingface-tokenizers/references/pipeline.md +724 -0
  146. package/skills/ai-research/02-tokenization/huggingface-tokenizers/references/training.md +566 -0
  147. package/skills/ai-research/02-tokenization/sentencepiece/SKILL.md +235 -0
  148. package/skills/ai-research/02-tokenization/sentencepiece/references/algorithms.md +201 -0
  149. package/skills/ai-research/02-tokenization/sentencepiece/references/training.md +305 -0
  150. package/skills/ai-research/03-fine-tuning/axolotl/SKILL.md +158 -0
  151. package/skills/ai-research/03-fine-tuning/axolotl/references/api.md +5549 -0
  152. package/skills/ai-research/03-fine-tuning/axolotl/references/dataset-formats.md +1030 -0
  153. package/skills/ai-research/03-fine-tuning/axolotl/references/index.md +16 -0
  154. package/skills/ai-research/03-fine-tuning/axolotl/references/other.md +3564 -0
  155. package/skills/ai-research/03-fine-tuning/llama-factory/SKILL.md +80 -0
  156. package/skills/ai-research/03-fine-tuning/llama-factory/references/_images.md +24 -0
  157. package/skills/ai-research/03-fine-tuning/llama-factory/references/advanced.md +1056 -0
  158. package/skills/ai-research/03-fine-tuning/llama-factory/references/getting_started.md +350 -0
  159. package/skills/ai-research/03-fine-tuning/llama-factory/references/index.md +20 -0
  160. package/skills/ai-research/03-fine-tuning/llama-factory/references/other.md +32 -0
  161. package/skills/ai-research/03-fine-tuning/peft/SKILL.md +431 -0
  162. package/skills/ai-research/03-fine-tuning/peft/references/advanced-usage.md +515 -0
  163. package/skills/ai-research/03-fine-tuning/peft/references/troubleshooting.md +481 -0
  164. package/skills/ai-research/03-fine-tuning/unsloth/SKILL.md +80 -0
  165. package/skills/ai-research/03-fine-tuning/unsloth/references/index.md +8 -0
  166. package/skills/ai-research/03-fine-tuning/unsloth/references/llms.md +83 -0
  167. package/skills/ai-research/04-mechanistic-interpretability/nnsight/SKILL.md +436 -0
  168. package/skills/ai-research/04-mechanistic-interpretability/nnsight/references/README.md +79 -0
  169. package/skills/ai-research/04-mechanistic-interpretability/nnsight/references/api.md +345 -0
  170. package/skills/ai-research/04-mechanistic-interpretability/nnsight/references/tutorials.md +301 -0
  171. package/skills/ai-research/04-mechanistic-interpretability/pyvene/SKILL.md +473 -0
  172. package/skills/ai-research/04-mechanistic-interpretability/pyvene/references/README.md +74 -0
  173. package/skills/ai-research/04-mechanistic-interpretability/pyvene/references/api.md +384 -0
  174. package/skills/ai-research/04-mechanistic-interpretability/pyvene/references/tutorials.md +377 -0
  175. package/skills/ai-research/04-mechanistic-interpretability/saelens/SKILL.md +386 -0
  176. package/skills/ai-research/04-mechanistic-interpretability/saelens/references/README.md +71 -0
  177. package/skills/ai-research/04-mechanistic-interpretability/saelens/references/api.md +334 -0
  178. package/skills/ai-research/04-mechanistic-interpretability/saelens/references/tutorials.md +319 -0
  179. package/skills/ai-research/04-mechanistic-interpretability/transformer-lens/SKILL.md +346 -0
  180. package/skills/ai-research/04-mechanistic-interpretability/transformer-lens/references/README.md +55 -0
  181. package/skills/ai-research/04-mechanistic-interpretability/transformer-lens/references/api.md +363 -0
  182. package/skills/ai-research/04-mechanistic-interpretability/transformer-lens/references/tutorials.md +340 -0
  183. package/skills/ai-research/05-data-processing/nemo-curator/SKILL.md +383 -0
  184. package/skills/ai-research/05-data-processing/nemo-curator/references/deduplication.md +88 -0
  185. package/skills/ai-research/05-data-processing/nemo-curator/references/filtering.md +103 -0
  186. package/skills/ai-research/05-data-processing/ray-data/SKILL.md +326 -0
  187. package/skills/ai-research/05-data-processing/ray-data/references/integration.md +83 -0
  188. package/skills/ai-research/05-data-processing/ray-data/references/transformations.md +84 -0
  189. package/skills/ai-research/06-post-training/grpo-rl-training/README.md +98 -0
  190. package/skills/ai-research/06-post-training/grpo-rl-training/SKILL.md +572 -0
  191. package/skills/ai-research/06-post-training/miles/SKILL.md +315 -0
  192. package/skills/ai-research/06-post-training/miles/references/api-reference.md +142 -0
  193. package/skills/ai-research/06-post-training/miles/references/troubleshooting.md +353 -0
  194. package/skills/ai-research/06-post-training/openrlhf/SKILL.md +249 -0
  195. package/skills/ai-research/06-post-training/openrlhf/references/algorithm-comparison.md +405 -0
  196. package/skills/ai-research/06-post-training/openrlhf/references/custom-rewards.md +531 -0
  197. package/skills/ai-research/06-post-training/openrlhf/references/hybrid-engine.md +288 -0
  198. package/skills/ai-research/06-post-training/openrlhf/references/multi-node-training.md +455 -0
  199. package/skills/ai-research/06-post-training/simpo/SKILL.md +219 -0
  200. package/skills/ai-research/06-post-training/simpo/references/datasets.md +479 -0
  201. package/skills/ai-research/06-post-training/simpo/references/hyperparameters.md +453 -0
  202. package/skills/ai-research/06-post-training/simpo/references/loss-functions.md +351 -0
  203. package/skills/ai-research/06-post-training/slime/SKILL.md +464 -0
  204. package/skills/ai-research/06-post-training/slime/references/api-reference.md +393 -0
  205. package/skills/ai-research/06-post-training/slime/references/troubleshooting.md +387 -0
  206. package/skills/ai-research/06-post-training/torchforge/SKILL.md +433 -0
  207. package/skills/ai-research/06-post-training/torchforge/references/api-reference.md +328 -0
  208. package/skills/ai-research/06-post-training/torchforge/references/troubleshooting.md +410 -0
  209. package/skills/ai-research/06-post-training/trl-fine-tuning/SKILL.md +455 -0
  210. package/skills/ai-research/06-post-training/trl-fine-tuning/references/dpo-variants.md +228 -0
  211. package/skills/ai-research/06-post-training/trl-fine-tuning/references/online-rl.md +83 -0
  212. package/skills/ai-research/06-post-training/trl-fine-tuning/references/reward-modeling.md +123 -0
  213. package/skills/ai-research/06-post-training/trl-fine-tuning/references/sft-training.md +169 -0
  214. package/skills/ai-research/06-post-training/verl/SKILL.md +391 -0
  215. package/skills/ai-research/06-post-training/verl/references/api-reference.md +302 -0
  216. package/skills/ai-research/06-post-training/verl/references/troubleshooting.md +392 -0
  217. package/skills/ai-research/07-safety-alignment/constitutional-ai/SKILL.md +290 -0
  218. package/skills/ai-research/07-safety-alignment/llamaguard/SKILL.md +337 -0
  219. package/skills/ai-research/07-safety-alignment/nemo-guardrails/SKILL.md +297 -0
  220. package/skills/ai-research/07-safety-alignment/prompt-guard/SKILL.md +312 -0
  221. package/skills/ai-research/08-distributed-training/accelerate/SKILL.md +332 -0
  222. package/skills/ai-research/08-distributed-training/accelerate/references/custom-plugins.md +454 -0
  223. package/skills/ai-research/08-distributed-training/accelerate/references/megatron-integration.md +490 -0
  224. package/skills/ai-research/08-distributed-training/accelerate/references/performance.md +526 -0
  225. package/skills/ai-research/08-distributed-training/deepspeed/SKILL.md +141 -0
  226. package/skills/ai-research/08-distributed-training/deepspeed/references/08.md +18 -0
  227. package/skills/ai-research/08-distributed-training/deepspeed/references/09.md +174 -0
  228. package/skills/ai-research/08-distributed-training/deepspeed/references/2020.md +379 -0
  229. package/skills/ai-research/08-distributed-training/deepspeed/references/2023.md +280 -0
  230. package/skills/ai-research/08-distributed-training/deepspeed/references/assets.md +180 -0
  231. package/skills/ai-research/08-distributed-training/deepspeed/references/index.md +36 -0
  232. package/skills/ai-research/08-distributed-training/deepspeed/references/mii.md +119 -0
  233. package/skills/ai-research/08-distributed-training/deepspeed/references/other.md +1192 -0
  234. package/skills/ai-research/08-distributed-training/megatron-core/SKILL.md +366 -0
  235. package/skills/ai-research/08-distributed-training/megatron-core/references/benchmarks.md +250 -0
  236. package/skills/ai-research/08-distributed-training/megatron-core/references/parallelism-guide.md +405 -0
  237. package/skills/ai-research/08-distributed-training/megatron-core/references/production-examples.md +474 -0
  238. package/skills/ai-research/08-distributed-training/megatron-core/references/training-recipes.md +548 -0
  239. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/SKILL.md +231 -0
  240. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_dcp_async_recipe.md +14 -0
  241. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_dcp_overview.md +19 -0
  242. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_dcp_recipe.md +18 -0
  243. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_ddp_notes.md +10 -0
  244. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_device_mesh_tutorial.md +22 -0
  245. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_examples_fsdp2.md +15 -0
  246. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_fsdp1_api.md +9 -0
  247. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_fsdp2_tutorial.md +45 -0
  248. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_fully_shard_api.md +49 -0
  249. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_tp_tutorial.md +22 -0
  250. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/ray_train_fsdp2_example.md +13 -0
  251. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/torchtitan_fsdp_notes.md +14 -0
  252. package/skills/ai-research/08-distributed-training/pytorch-lightning/SKILL.md +346 -0
  253. package/skills/ai-research/08-distributed-training/pytorch-lightning/references/callbacks.md +437 -0
  254. package/skills/ai-research/08-distributed-training/pytorch-lightning/references/distributed.md +491 -0
  255. package/skills/ai-research/08-distributed-training/pytorch-lightning/references/hyperparameter-tuning.md +557 -0
  256. package/skills/ai-research/08-distributed-training/ray-train/SKILL.md +406 -0
  257. package/skills/ai-research/08-distributed-training/ray-train/references/multi-node.md +629 -0
  258. package/skills/ai-research/09-infrastructure/lambda-labs/SKILL.md +545 -0
  259. package/skills/ai-research/09-infrastructure/lambda-labs/references/advanced-usage.md +612 -0
  260. package/skills/ai-research/09-infrastructure/lambda-labs/references/troubleshooting.md +531 -0
  261. package/skills/ai-research/09-infrastructure/modal/SKILL.md +341 -0
  262. package/skills/ai-research/09-infrastructure/modal/references/advanced-usage.md +504 -0
  263. package/skills/ai-research/09-infrastructure/modal/references/troubleshooting.md +495 -0
  264. package/skills/ai-research/09-infrastructure/skypilot/SKILL.md +509 -0
  265. package/skills/ai-research/09-infrastructure/skypilot/references/advanced-usage.md +492 -0
  266. package/skills/ai-research/09-infrastructure/skypilot/references/troubleshooting.md +571 -0
  267. package/skills/ai-research/10-optimization/awq/SKILL.md +310 -0
  268. package/skills/ai-research/10-optimization/awq/references/advanced-usage.md +325 -0
  269. package/skills/ai-research/10-optimization/awq/references/troubleshooting.md +345 -0
  270. package/skills/ai-research/10-optimization/bitsandbytes/SKILL.md +411 -0
  271. package/skills/ai-research/10-optimization/bitsandbytes/references/memory-optimization.md +522 -0
  272. package/skills/ai-research/10-optimization/bitsandbytes/references/qlora-training.md +522 -0
  273. package/skills/ai-research/10-optimization/bitsandbytes/references/quantization-formats.md +448 -0
  274. package/skills/ai-research/10-optimization/flash-attention/SKILL.md +367 -0
  275. package/skills/ai-research/10-optimization/flash-attention/references/benchmarks.md +216 -0
  276. package/skills/ai-research/10-optimization/flash-attention/references/transformers-integration.md +294 -0
  277. package/skills/ai-research/10-optimization/gguf/SKILL.md +427 -0
  278. package/skills/ai-research/10-optimization/gguf/references/advanced-usage.md +505 -0
  279. package/skills/ai-research/10-optimization/gguf/references/troubleshooting.md +443 -0
  280. package/skills/ai-research/10-optimization/gptq/SKILL.md +450 -0
  281. package/skills/ai-research/10-optimization/gptq/references/calibration.md +338 -0
  282. package/skills/ai-research/10-optimization/gptq/references/integration.md +130 -0
  283. package/skills/ai-research/10-optimization/gptq/references/troubleshooting.md +96 -0
  284. package/skills/ai-research/10-optimization/hqq/SKILL.md +445 -0
  285. package/skills/ai-research/10-optimization/hqq/references/advanced-usage.md +529 -0
  286. package/skills/ai-research/10-optimization/hqq/references/troubleshooting.md +504 -0
  287. package/skills/ai-research/10-optimization/ml-training-recipes/SKILL.md +319 -0
  288. package/skills/ai-research/10-optimization/ml-training-recipes/references/architecture.md +320 -0
  289. package/skills/ai-research/10-optimization/ml-training-recipes/references/biomedical.md +498 -0
  290. package/skills/ai-research/10-optimization/ml-training-recipes/references/domain-specific.md +626 -0
  291. package/skills/ai-research/10-optimization/ml-training-recipes/references/experiment-loop.md +129 -0
  292. package/skills/ai-research/10-optimization/ml-training-recipes/references/optimizers.md +330 -0
  293. package/skills/ai-research/10-optimization/ml-training-recipes/references/scaling-and-selection.md +428 -0
  294. package/skills/ai-research/11-evaluation/bigcode-evaluation-harness/SKILL.md +405 -0
  295. package/skills/ai-research/11-evaluation/bigcode-evaluation-harness/references/benchmarks.md +394 -0
  296. package/skills/ai-research/11-evaluation/bigcode-evaluation-harness/references/custom-tasks.md +425 -0
  297. package/skills/ai-research/11-evaluation/bigcode-evaluation-harness/references/issues.md +395 -0
  298. package/skills/ai-research/11-evaluation/lm-evaluation-harness/SKILL.md +490 -0
  299. package/skills/ai-research/11-evaluation/lm-evaluation-harness/references/api-evaluation.md +491 -0
  300. package/skills/ai-research/11-evaluation/lm-evaluation-harness/references/benchmark-guide.md +489 -0
  301. package/skills/ai-research/11-evaluation/lm-evaluation-harness/references/custom-tasks.md +603 -0
  302. package/skills/ai-research/11-evaluation/lm-evaluation-harness/references/distributed-eval.md +520 -0
  303. package/skills/ai-research/11-evaluation/nemo-evaluator/SKILL.md +494 -0
  304. package/skills/ai-research/11-evaluation/nemo-evaluator/references/adapter-system.md +341 -0
  305. package/skills/ai-research/11-evaluation/nemo-evaluator/references/configuration.md +448 -0
  306. package/skills/ai-research/11-evaluation/nemo-evaluator/references/custom-benchmarks.md +316 -0
  307. package/skills/ai-research/11-evaluation/nemo-evaluator/references/execution-backends.md +362 -0
  308. package/skills/ai-research/12-inference-serving/llama-cpp/SKILL.md +258 -0
  309. package/skills/ai-research/12-inference-serving/llama-cpp/references/optimization.md +90 -0
  310. package/skills/ai-research/12-inference-serving/llama-cpp/references/quantization.md +214 -0
  311. package/skills/ai-research/12-inference-serving/llama-cpp/references/server.md +126 -0
  312. package/skills/ai-research/12-inference-serving/sglang/SKILL.md +442 -0
  313. package/skills/ai-research/12-inference-serving/sglang/references/deployment.md +491 -0
  314. package/skills/ai-research/12-inference-serving/sglang/references/radix-attention.md +414 -0
  315. package/skills/ai-research/12-inference-serving/sglang/references/structured-generation.md +542 -0
  316. package/skills/ai-research/12-inference-serving/tensorrt-llm/SKILL.md +187 -0
  317. package/skills/ai-research/12-inference-serving/tensorrt-llm/references/multi-gpu.md +299 -0
  318. package/skills/ai-research/12-inference-serving/tensorrt-llm/references/optimization.md +243 -0
  319. package/skills/ai-research/12-inference-serving/tensorrt-llm/references/serving.md +471 -0
  320. package/skills/ai-research/12-inference-serving/vllm/SKILL.md +364 -0
  321. package/skills/ai-research/12-inference-serving/vllm/references/optimization.md +227 -0
  322. package/skills/ai-research/12-inference-serving/vllm/references/quantization.md +285 -0
  323. package/skills/ai-research/12-inference-serving/vllm/references/server-deployment.md +256 -0
  324. package/skills/ai-research/12-inference-serving/vllm/references/troubleshooting.md +448 -0
  325. package/skills/ai-research/13-mlops/mlflow/SKILL.md +704 -0
  326. package/skills/ai-research/13-mlops/mlflow/references/deployment.md +745 -0
  327. package/skills/ai-research/13-mlops/mlflow/references/model-registry.md +771 -0
  328. package/skills/ai-research/13-mlops/mlflow/references/tracking.md +681 -0
  329. package/skills/ai-research/13-mlops/swanlab/SKILL.md +406 -0
  330. package/skills/ai-research/13-mlops/swanlab/references/integrations.md +305 -0
  331. package/skills/ai-research/13-mlops/swanlab/references/visualization.md +234 -0
  332. package/skills/ai-research/13-mlops/tensorboard/SKILL.md +629 -0
  333. package/skills/ai-research/13-mlops/tensorboard/references/integrations.md +639 -0
  334. package/skills/ai-research/13-mlops/tensorboard/references/profiling.md +546 -0
  335. package/skills/ai-research/13-mlops/tensorboard/references/visualization.md +621 -0
  336. package/skills/ai-research/13-mlops/weights-and-biases/SKILL.md +590 -0
  337. package/skills/ai-research/13-mlops/weights-and-biases/references/artifacts.md +585 -0
  338. package/skills/ai-research/13-mlops/weights-and-biases/references/integrations.md +701 -0
  339. package/skills/ai-research/13-mlops/weights-and-biases/references/sweeps.md +848 -0
  340. package/skills/ai-research/14-agents/a-evolve/SKILL.md +383 -0
  341. package/skills/ai-research/14-agents/a-evolve/references/README.md +831 -0
  342. package/skills/ai-research/14-agents/a-evolve/references/api.md +594 -0
  343. package/skills/ai-research/14-agents/a-evolve/references/architecture.md +417 -0
  344. package/skills/ai-research/14-agents/a-evolve/references/design-patterns.md +462 -0
  345. package/skills/ai-research/14-agents/a-evolve/references/examples.md +352 -0
  346. package/skills/ai-research/14-agents/a-evolve/references/issues.md +591 -0
  347. package/skills/ai-research/14-agents/a-evolve/references/releases.md +112 -0
  348. package/skills/ai-research/14-agents/a-evolve/references/tutorials.md +819 -0
  349. package/skills/ai-research/14-agents/autogpt/SKILL.md +403 -0
  350. package/skills/ai-research/14-agents/autogpt/references/advanced-usage.md +536 -0
  351. package/skills/ai-research/14-agents/autogpt/references/troubleshooting.md +421 -0
  352. package/skills/ai-research/14-agents/crewai/SKILL.md +498 -0
  353. package/skills/ai-research/14-agents/crewai/references/flows.md +439 -0
  354. package/skills/ai-research/14-agents/crewai/references/tools.md +430 -0
  355. package/skills/ai-research/14-agents/crewai/references/troubleshooting.md +481 -0
  356. package/skills/ai-research/14-agents/langchain/SKILL.md +480 -0
  357. package/skills/ai-research/14-agents/langchain/references/agents.md +500 -0
  358. package/skills/ai-research/14-agents/langchain/references/integration.md +563 -0
  359. package/skills/ai-research/14-agents/langchain/references/rag.md +601 -0
  360. package/skills/ai-research/14-agents/llamaindex/SKILL.md +569 -0
  361. package/skills/ai-research/14-agents/llamaindex/references/agents.md +84 -0
  362. package/skills/ai-research/14-agents/llamaindex/references/data_connectors.md +109 -0
  363. package/skills/ai-research/14-agents/llamaindex/references/query_engines.md +407 -0
  364. package/skills/ai-research/15-rag/chroma/SKILL.md +406 -0
  365. package/skills/ai-research/15-rag/chroma/references/integration.md +39 -0
  366. package/skills/ai-research/15-rag/faiss/SKILL.md +221 -0
  367. package/skills/ai-research/15-rag/faiss/references/index_types.md +281 -0
  368. package/skills/ai-research/15-rag/pinecone/SKILL.md +358 -0
  369. package/skills/ai-research/15-rag/pinecone/references/deployment.md +182 -0
  370. package/skills/ai-research/15-rag/qdrant/SKILL.md +493 -0
  371. package/skills/ai-research/15-rag/qdrant/references/advanced-usage.md +649 -0
  372. package/skills/ai-research/15-rag/qdrant/references/troubleshooting.md +632 -0
  373. package/skills/ai-research/15-rag/sentence-transformers/SKILL.md +255 -0
  374. package/skills/ai-research/15-rag/sentence-transformers/references/models.md +124 -0
  375. package/skills/ai-research/16-prompt-engineering/dspy/SKILL.md +590 -0
  376. package/skills/ai-research/16-prompt-engineering/dspy/references/examples.md +664 -0
  377. package/skills/ai-research/16-prompt-engineering/dspy/references/modules.md +476 -0
  378. package/skills/ai-research/16-prompt-engineering/dspy/references/optimizers.md +567 -0
  379. package/skills/ai-research/16-prompt-engineering/guidance/SKILL.md +572 -0
  380. package/skills/ai-research/16-prompt-engineering/guidance/references/backends.md +555 -0
  381. package/skills/ai-research/16-prompt-engineering/guidance/references/constraints.md +675 -0
  382. package/skills/ai-research/16-prompt-engineering/guidance/references/examples.md +768 -0
  383. package/skills/ai-research/16-prompt-engineering/instructor/SKILL.md +740 -0
  384. package/skills/ai-research/16-prompt-engineering/instructor/references/examples.md +108 -0
  385. package/skills/ai-research/16-prompt-engineering/instructor/references/providers.md +71 -0
  386. package/skills/ai-research/16-prompt-engineering/instructor/references/validation.md +607 -0
  387. package/skills/ai-research/16-prompt-engineering/outlines/SKILL.md +652 -0
  388. package/skills/ai-research/16-prompt-engineering/outlines/references/backends.md +616 -0
  389. package/skills/ai-research/16-prompt-engineering/outlines/references/examples.md +774 -0
  390. package/skills/ai-research/16-prompt-engineering/outlines/references/json_generation.md +653 -0
  391. package/skills/ai-research/17-observability/langsmith/SKILL.md +422 -0
  392. package/skills/ai-research/17-observability/langsmith/references/advanced-usage.md +549 -0
  393. package/skills/ai-research/17-observability/langsmith/references/troubleshooting.md +538 -0
  394. package/skills/ai-research/17-observability/phoenix/SKILL.md +475 -0
  395. package/skills/ai-research/17-observability/phoenix/references/advanced-usage.md +620 -0
  396. package/skills/ai-research/17-observability/phoenix/references/troubleshooting.md +539 -0
  397. package/skills/ai-research/18-multimodal/audiocraft/SKILL.md +564 -0
  398. package/skills/ai-research/18-multimodal/audiocraft/references/advanced-usage.md +667 -0
  399. package/skills/ai-research/18-multimodal/audiocraft/references/troubleshooting.md +505 -0
  400. package/skills/ai-research/18-multimodal/blip-2/SKILL.md +564 -0
  401. package/skills/ai-research/18-multimodal/blip-2/references/advanced-usage.md +681 -0
  402. package/skills/ai-research/18-multimodal/blip-2/references/troubleshooting.md +527 -0
  403. package/skills/ai-research/18-multimodal/clip/SKILL.md +253 -0
  404. package/skills/ai-research/18-multimodal/clip/references/applications.md +208 -0
  405. package/skills/ai-research/18-multimodal/cosmos-policy/SKILL.md +402 -0
  406. package/skills/ai-research/18-multimodal/cosmos-policy/references/libero-commands.md +175 -0
  407. package/skills/ai-research/18-multimodal/cosmos-policy/references/robocasa-commands.md +147 -0
  408. package/skills/ai-research/18-multimodal/llava/SKILL.md +304 -0
  409. package/skills/ai-research/18-multimodal/llava/references/training.md +198 -0
  410. package/skills/ai-research/18-multimodal/openpi/SKILL.md +480 -0
  411. package/skills/ai-research/18-multimodal/openpi/references/checkpoints-and-env-map.md +86 -0
  412. package/skills/ai-research/18-multimodal/openpi/references/config-recipes.md +50 -0
  413. package/skills/ai-research/18-multimodal/openpi/references/pytorch-gotchas.md +49 -0
  414. package/skills/ai-research/18-multimodal/openpi/references/remote-client-pattern.md +48 -0
  415. package/skills/ai-research/18-multimodal/openpi/references/training-debugging.md +46 -0
  416. package/skills/ai-research/18-multimodal/openvla-oft/SKILL.md +441 -0
  417. package/skills/ai-research/18-multimodal/openvla-oft/references/aloha-workflow.md +141 -0
  418. package/skills/ai-research/18-multimodal/openvla-oft/references/config-troubleshooting.md +97 -0
  419. package/skills/ai-research/18-multimodal/openvla-oft/references/libero-workflow.md +115 -0
  420. package/skills/ai-research/18-multimodal/openvla-oft/references/paper-and-checkpoints.md +84 -0
  421. package/skills/ai-research/18-multimodal/segment-anything/SKILL.md +500 -0
  422. package/skills/ai-research/18-multimodal/segment-anything/references/advanced-usage.md +590 -0
  423. package/skills/ai-research/18-multimodal/segment-anything/references/troubleshooting.md +485 -0
  424. package/skills/ai-research/18-multimodal/stable-diffusion/SKILL.md +519 -0
  425. package/skills/ai-research/18-multimodal/stable-diffusion/references/advanced-usage.md +717 -0
  426. package/skills/ai-research/18-multimodal/stable-diffusion/references/troubleshooting.md +556 -0
  427. package/skills/ai-research/18-multimodal/whisper/SKILL.md +317 -0
  428. package/skills/ai-research/18-multimodal/whisper/references/languages.md +190 -0
  429. package/skills/ai-research/19-emerging-techniques/knowledge-distillation/SKILL.md +458 -0
  430. package/skills/ai-research/19-emerging-techniques/knowledge-distillation/references/minillm.md +335 -0
  431. package/skills/ai-research/19-emerging-techniques/long-context/SKILL.md +536 -0
  432. package/skills/ai-research/19-emerging-techniques/long-context/references/extension_methods.md +469 -0
  433. package/skills/ai-research/19-emerging-techniques/long-context/references/fine_tuning.md +612 -0
  434. package/skills/ai-research/19-emerging-techniques/long-context/references/rope.md +403 -0
  435. package/skills/ai-research/19-emerging-techniques/model-merging/SKILL.md +497 -0
  436. package/skills/ai-research/19-emerging-techniques/model-merging/references/coefficient-tuning.md +415 -0
  437. package/skills/ai-research/19-emerging-techniques/model-merging/references/evaluation.md +463 -0
  438. package/skills/ai-research/19-emerging-techniques/model-merging/references/examples.md +429 -0
  439. package/skills/ai-research/19-emerging-techniques/model-merging/references/methods.md +353 -0
  440. package/skills/ai-research/19-emerging-techniques/model-pruning/SKILL.md +495 -0
  441. package/skills/ai-research/19-emerging-techniques/model-pruning/references/wanda.md +348 -0
  442. package/skills/ai-research/19-emerging-techniques/moe-training/SKILL.md +526 -0
  443. package/skills/ai-research/19-emerging-techniques/moe-training/references/architectures.md +433 -0
  444. package/skills/ai-research/19-emerging-techniques/moe-training/references/inference.md +349 -0
  445. package/skills/ai-research/19-emerging-techniques/moe-training/references/training.md +426 -0
  446. package/skills/ai-research/19-emerging-techniques/speculative-decoding/SKILL.md +467 -0
  447. package/skills/ai-research/19-emerging-techniques/speculative-decoding/references/lookahead.md +310 -0
  448. package/skills/ai-research/19-emerging-techniques/speculative-decoding/references/medusa.md +351 -0
  449. package/skills/ai-research/20-ml-paper-writing/academic-plotting/SKILL.md +479 -0
  450. package/skills/ai-research/20-ml-paper-writing/academic-plotting/references/data-visualization.md +509 -0
  451. package/skills/ai-research/20-ml-paper-writing/academic-plotting/references/diagram-generation.md +395 -0
  452. package/skills/ai-research/20-ml-paper-writing/academic-plotting/references/style-guide.md +305 -0
  453. package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/SKILL.md +982 -0
  454. package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/references/checklists.md +348 -0
  455. package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/references/citation-workflow.md +563 -0
  456. package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/references/reviewer-guidelines.md +349 -0
  457. package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/references/sources.md +165 -0
  458. package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/references/writing-guide.md +477 -0
  459. package/skills/ai-research/20-ml-paper-writing/presenting-conference-talks/SKILL.md +298 -0
  460. package/skills/ai-research/20-ml-paper-writing/presenting-conference-talks/references/slide-templates.md +505 -0
  461. package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/SKILL.md +270 -0
  462. package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/references/checklist.md +279 -0
  463. package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/references/reviewer-guidelines.md +116 -0
  464. package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/references/section-blueprints.md +400 -0
  465. package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/references/systems-conferences.md +261 -0
  466. package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/references/writing-patterns.md +231 -0
  467. package/skills/ai-research/21-research-ideation/brainstorming-research-ideas/SKILL.md +384 -0
  468. package/skills/ai-research/21-research-ideation/creative-thinking-for-research/SKILL.md +366 -0
  469. package/skills/ai-research/22-agent-native-research-artifact/compiler/SKILL.md +245 -0
  470. package/skills/ai-research/22-agent-native-research-artifact/compiler/references/ara-schema.md +439 -0
  471. package/skills/ai-research/22-agent-native-research-artifact/compiler/references/exploration-tree-spec.md +125 -0
  472. package/skills/ai-research/22-agent-native-research-artifact/compiler/references/validation-checklist.md +149 -0
  473. package/skills/ai-research/22-agent-native-research-artifact/research-manager/SKILL.md +324 -0
  474. package/skills/ai-research/22-agent-native-research-artifact/research-manager/references/event-taxonomy.md +124 -0
  475. package/skills/ai-research/22-agent-native-research-artifact/research-manager/references/provenance-tags.md +190 -0
  476. package/skills/ai-research/22-agent-native-research-artifact/research-manager/references/session-protocol.md +162 -0
  477. package/skills/ai-research/22-agent-native-research-artifact/rigor-reviewer/SKILL.md +322 -0
  478. package/skills/ai-research/22-agent-native-research-artifact/rigor-reviewer/references/review-dimensions.md +182 -0
  479. package/skills/ai-research/SKILL.md +101 -0
  480. package/skills/ai-research/SOURCE +38 -0
  481. package/skills/ai-research/index/1-frame.md +18 -0
  482. package/skills/ai-research/index/2-data.md +21 -0
  483. package/skills/ai-research/index/3-train.md +48 -0
  484. package/skills/ai-research/index/4-measure.md +25 -0
  485. package/skills/ai-research/index/5-run.md +23 -0
  486. package/skills/ai-research/index/6-write.md +35 -0
  487. package/skills/ai-research/library.json +3456 -0
  488. package/skills/analyze-app/EVALS.md +82 -0
  489. package/skills/analyze-app/SKILL.md +188 -0
  490. package/skills/design-contract/EVALS.md +80 -0
  491. package/skills/design-contract/SKILL.md +171 -0
  492. package/skills/design-library/EVALS.md +85 -0
  493. package/skills/design-library/INDEX.md +59 -0
  494. package/skills/design-library/SKILL.md +58 -0
  495. package/skills/design-library/SOURCE +131 -0
  496. package/skills/design-library/adaptive-interfaces/skills/colour-independence/SKILL.md +90 -0
  497. package/skills/design-library/adaptive-interfaces/skills/flexible-typography/SKILL.md +83 -0
  498. package/skills/design-library/adaptive-interfaces/skills/information-density/SKILL.md +87 -0
  499. package/skills/design-library/adaptive-interfaces/skills/preference-audit/SKILL.md +70 -0
  500. package/skills/design-library/adaptive-interfaces/skills/responsive-accessibility/SKILL.md +86 -0
  501. package/skills/design-library/adaptive-interfaces/skills/responsive-review/SKILL.md +76 -0
  502. package/skills/design-library/adaptive-interfaces/skills/simplified-views/SKILL.md +97 -0
  503. package/skills/design-library/adaptive-interfaces/skills/specify/SKILL.md +63 -0
  504. package/skills/design-library/adaptive-interfaces/skills/user-preference-respect/SKILL.md +100 -0
  505. package/skills/design-library/cognitive-accessibility/skills/adaptive-personalisation/SKILL.md +61 -0
  506. package/skills/design-library/cognitive-accessibility/skills/assess-load/SKILL.md +48 -0
  507. package/skills/design-library/cognitive-accessibility/skills/cognitive-load-assessment/SKILL.md +60 -0
  508. package/skills/design-library/cognitive-accessibility/skills/contextual-help-design/SKILL.md +61 -0
  509. package/skills/design-library/cognitive-accessibility/skills/error-prevention-recovery/SKILL.md +71 -0
  510. package/skills/design-library/cognitive-accessibility/skills/focus-attention-design/SKILL.md +67 -0
  511. package/skills/design-library/cognitive-accessibility/skills/memory-load-reduction/SKILL.md +60 -0
  512. package/skills/design-library/cognitive-accessibility/skills/plain-language-design/SKILL.md +78 -0
  513. package/skills/design-library/cognitive-accessibility/skills/review/SKILL.md +56 -0
  514. package/skills/design-library/cognitive-accessibility/skills/simplify/SKILL.md +39 -0
  515. package/skills/design-library/cognitive-accessibility/skills/wayfinding-navigation/SKILL.md +64 -0
  516. package/skills/design-library/design-research/skills/behavioural-analytics/SKILL.md +33 -0
  517. package/skills/design-library/design-research/skills/qual-quant-triangulation/SKILL.md +33 -0
  518. package/skills/design-library/inclusive-interaction/skills/audit/SKILL.md +50 -0
  519. package/skills/design-library/inclusive-interaction/skills/design-flow/SKILL.md +58 -0
  520. package/skills/design-library/inclusive-interaction/skills/feedback-and-status/SKILL.md +76 -0
  521. package/skills/design-library/inclusive-interaction/skills/gesture-alternatives/SKILL.md +70 -0
  522. package/skills/design-library/inclusive-interaction/skills/keyboard-navigation/SKILL.md +99 -0
  523. package/skills/design-library/inclusive-interaction/skills/keyboard-review/SKILL.md +54 -0
  524. package/skills/design-library/inclusive-interaction/skills/motion-sensitivity/SKILL.md +79 -0
  525. package/skills/design-library/inclusive-interaction/skills/multi-modal-input/SKILL.md +70 -0
  526. package/skills/design-library/inclusive-interaction/skills/touch-target-design/SKILL.md +71 -0
  527. package/skills/design-library/inclusive-interaction/skills/voice-interaction/SKILL.md +68 -0
  528. package/skills/design-library/visual-critique/skills/critique-affordance/SKILL.md +45 -0
  529. package/skills/design-library/visual-critique/skills/critique-brand-consistency/SKILL.md +42 -0
  530. package/skills/design-library/visual-critique/skills/critique-color/SKILL.md +44 -0
  531. package/skills/design-library/visual-critique/skills/critique-composition/SKILL.md +46 -0
  532. package/skills/design-library/visual-critique/skills/critique-information-density/SKILL.md +45 -0
  533. package/skills/design-library/visual-critique/skills/critique-typography/SKILL.md +45 -0
  534. package/skills/design-library/visual-critique/skills/critique-visual-hierarchy/SKILL.md +40 -0
  535. package/skills/feature-audit/EVALS.md +83 -0
  536. package/skills/feature-audit/SKILL.md +326 -0
  537. package/skills/harness/EVALS.md +81 -0
  538. package/skills/harness/SKILL.md +88 -0
  539. package/skills/i-have-adhd/EVALS.md +80 -0
  540. package/skills/i-have-adhd/SKILL.md +183 -0
  541. package/skills/no-ai-slop/EVALS.md +89 -0
  542. package/skills/no-ai-slop/SKILL.md +209 -0
  543. package/skills/no-ai-slop/eval.md +52 -0
  544. package/skills/plan-add/EVALS.md +79 -0
  545. package/skills/plan-add/SKILL.md +179 -0
  546. package/skills/plan-add/render_table.py +72 -0
  547. package/skills/plan-status/EVALS.md +78 -0
  548. package/skills/plan-status/SKILL.md +52 -0
  549. package/skills/plan-sync/EVALS.md +80 -0
  550. package/skills/plan-sync/SKILL.md +69 -0
  551. package/skills/pm-frameworks/SKILL.md +33 -0
  552. package/skills/pm-frameworks/SOURCE +39 -0
  553. package/skills/pm-frameworks/intended-vs-implemented/SKILL.md +42 -0
  554. package/skills/pm-frameworks/opportunity-solution-tree/SKILL.md +64 -0
  555. package/skills/ponytail/EVALS.md +80 -0
  556. package/skills/ponytail/SKILL.md +124 -0
  557. package/skills/product-analysis/EVALS.md +103 -0
  558. package/skills/product-analysis/SKILL.md +361 -0
  559. package/skills/research/EVALS.md +104 -0
  560. package/skills/research/SKILL.md +570 -0
  561. package/skills/rl-env/SKILL.md +53 -0
  562. package/skills/rl-env/SOURCE +41 -0
  563. package/skills/rl-env/generate-nemo-gym-env/SKILL.md +169 -0
  564. package/skills/rl-env/generate-nemo-gym-env/references/architecture.md +114 -0
  565. package/skills/rl-env/generate-openenv-env/SKILL.md +183 -0
  566. package/skills/rl-env/generate-openenv-env/references/architecture.md +82 -0
  567. package/skills/rl-env/generate-ors-env/SKILL.md +209 -0
  568. package/skills/rl-env/generate-ors-env/references/architecture.md +113 -0
  569. package/skills/rl-env/generate-verifiers-env/SKILL.md +188 -0
  570. package/skills/rl-env/generate-verifiers-env/references/architecture.md +119 -0
  571. package/skills/rl-env/rl-env-from-description/SKILL.md +124 -0
  572. package/skills/rl-env/rl-env-from-description/references/interview.md +75 -0
  573. package/skills/rl-env/rl-env-from-description/references/nemo_gym.md +41 -0
  574. package/skills/rl-env/rl-env-from-description/references/openenv.md +35 -0
  575. package/skills/rl-env/rl-env-from-description/references/ors.md +50 -0
  576. package/skills/rl-env/rl-env-from-description/references/verifiers.md +39 -0
  577. package/skills/tezgah-contract/EVALS.md +78 -0
  578. package/skills/tezgah-contract/SKILL.md +792 -0
  579. package/statusline.py +129 -0
  580. package/workflows/graph-impact.js +153 -0
  581. package/workflows/graph-map.js +158 -0
  582. package/workflows/graph-review.js +170 -0
@@ -0,0 +1,209 @@
1
+ ---
2
+ name: no-ai-slop
3
+ description: Edit drafts into sharper, more human writing while preserving the writer's personal voice, or detect AI-slop patterns without rewriting. Use when the user wants a draft clearer, more direct, more opinionated, or less AI-sounding, or asks whether writing reads as AI. Also use when the draft is in a language other than English, or when the draft has to keep terms, identifiers, product names or unit symbols exactly as they are. Also use before publishing English prose this setup produces itself - a commit message, a PR body, a plan file, a README or design note - when it is long enough to have gone soft. Not for shaping a reply the reader has to act on - use `i-have-adhd`.
4
+ ---
5
+
6
+ <!-- Source: https://github.com/petergyang/no-ai-slop (MIT, Peter Yang).
7
+ Vendored verbatim except this header, the "In this setup" section, the
8
+ brief added under "What to ask for", and three sections this setup added:
9
+ "Terms that must not be translated", "Use the writer's samples when you
10
+ have them" and "Writing in another language". Those additions come from the
11
+ measured runs of an internal research line (its report states what they
12
+ do and do not show). -->
13
+
14
+ # No AI slop
15
+
16
+ You are a sharp human editor. Preserve the user's point and personal voice while making the writing clearer and more alive. Remove AI patterns without turning distinctive writing into generic polished prose.
17
+
18
+ ## In this setup
19
+
20
+ Applies to English prose written here: commit messages, PR bodies, plan files,
21
+ README and design notes. Two rules where it meets the armed contracts:
22
+
23
+ - Turkish user-facing replies follow the reporting contract (BLUF first, bold
24
+ for scanning). Where the two disagree about front-loading or formatting, the
25
+ reporting contract wins; everything else here still applies, especially
26
+ binary contrasts, faux-insight setups, importance puffery and recap endings,
27
+ which read the same in any language.
28
+ - Code comments are exempt from the prose rules but not from the honesty ones.
29
+ This codebase writes WHY in comments and marks load-bearing invariants; a
30
+ comment that states a fact plainly is finished, however plain it sounds.
31
+
32
+ Three additions from measured runs, for prose in any language: the reader brief
33
+ below, the term rail below, and the writer's samples below. The word lists in
34
+ this file are English-shaped; `## Writing in another language` says what to do
35
+ about that, and what not to.
36
+
37
+ ## Two jobs
38
+
39
+ **Edit (default).** The user shares a draft to fix. Make the minimum effective edit with the rules below and return the edited draft plus a What changed section.
40
+
41
+ **Detect.** The user asks whether a piece is AI slop, or asks to audit, scan, or flag a draft without rewriting. Name each pattern from this skill that appears, quote the line, and give the fix in a few words. Do not rewrite, score the draft, or guess whether AI wrote it. AI detectors guess. Named patterns are evidence the user can check. Offer to edit the draft after.
42
+
43
+ ## What to ask for
44
+
45
+ If the user has not provided a draft, ask them to paste it.
46
+
47
+ If the audience or format is unclear, ask one question: Who is this for and where will it be published?
48
+
49
+ If the goal is unclear, ask what the reader should think, feel, or do after reading it.
50
+
51
+ **Then write the brief down before editing, as checkable features rather than a
52
+ persona.** Name the reader, what they need in the first two lines, the vocabulary
53
+ that belongs to them, and a length bound. A named persona does not move the
54
+ result; a decomposed target does. For the registers this setup writes for:
55
+
56
+ - **Executive.** Wants the figure, the risk, the ask, and what happens if they
57
+ say no. Reads on a phone between meetings. Money, dates, headcount,
58
+ percentages - no method names. Ask first, evidence second, risk third. No
59
+ preamble, no recap.
60
+ - **Developer.** Will run this today. Wants what changed, what breaks, and the
61
+ exact string to type. Identifiers, versions, limits and error names quoted
62
+ verbatim. Breaking change first, then behaviour, then the workaround. Do not
63
+ explain what an API is.
64
+ - **External reader or customer.** Wants what happens next, who does it, when,
65
+ and what it costs. One ask per message, the ask before the justification.
66
+ Do not explain the category; they already know it.
67
+
68
+ Do not flatten for a reader who knows the domain: plain-language rewriting
69
+ measurably costs a knowledgeable reader and gains them nothing.
70
+
71
+ ## Editing principles
72
+
73
+ - **Preserve the writer's real voice.** First notice the draft's vocabulary, cadence, bluntness, humor, uncertainty, digressions, and level of polish. Keep the traits that feel personal to the writer. Do not make every paragraph equally tidy or rewrite distinctive lines merely for consistency.
74
+ - **Make the minimum effective edit.** Fix AI patterns, errors, repetition, and unclear passages. Leave strong human sentences alone. A rough draft with a real voice should still sound like the same person after editing.
75
+ - **Lead with the point when the setup adds nothing.** Cut generic throat-clearing. Keep a personal aside, story, or admission when it creates context, tension, or character.
76
+ - **Front-load only when it improves clarity.** Put conclusions early when that helps the reader. Do not force every section and paragraph into the same point-detail-background shape.
77
+ - **Keep the user's meaning.** Don't invent claims, examples, stats, or opinions. If something is unclear, ask.
78
+ - **Open it up, don't dumb it down.** Keep the substance, nuance, and precision. Strip out only what makes it hard to read: jargon, long sentences, abstract nouns, and tangled structure.
79
+ - **Use active voice.** "The team shipped it Tuesday" beats "the decision emerged." Never let inanimate things do human verbs.
80
+ - **Make every sentence earn its place.** Cut empty qualifiers and throat-clearing. Keep phrases such as "I think," "maybe," or "to be honest" when they express real uncertainty, self-awareness, or the writer's spoken rhythm.
81
+ - **Untangle sentences without flattening the cadence.** Split sentences and paragraphs when they are genuinely hard to follow. Keep longer spoken sentences, fragments, and changes in pace when they are clear and characteristic of the writer.
82
+ - **Be concrete and specific.** Abstraction is where writing goes to die. "The integration improved efficiency" becomes "The integration cut deploy time from 40 minutes to 4." Names, numbers, dates, mechanisms, and examples beat abstractions.
83
+ - **Use the portability test.** If a sentence could move unchanged to another person, company, country, or product, it is probably filler. Cut it or replace it with a fact, example, mechanism, consequence, or judgment specific to this subject.
84
+ - **Always show, don't tell the reader what to think.** Make facts, actions, examples, and consequences carry the emphasis. Cut commentary that labels a point important, surprising, subtle, or obvious instead of demonstrating why. If the surrounding prose already shows the point, trust the reader and delete the commentary.
85
+ - **Protect the specific fact.** Don't smooth a useful detail into generic importance. "The tool significantly improves engineering productivity" becomes "The tool cut review time from 30 minutes to 8."
86
+ - **Make verbs do the work.** Replace weak verb phrases with direct verbs. "Made a decision" becomes "decided." "Has the ability to" becomes "can."
87
+ - **Know the job.** Before structure or word choice, know what the piece is trying to do and who it is for.
88
+ - **Preserve useful edge and character.** Keep strong opinions, blunt language, humor, profanity, self-interruptions, and honest admissions when they belong to the writer. Don't replace them with safer or more professional wording.
89
+ - **Keep structure unless it's hurting the piece.** Preserve the writer's progression and detours when they carry personality. If you reorganize, say why in the What changed section.
90
+
91
+ ## Words to cut
92
+
93
+ Banned outright: delve, foster, leverage, utilize, facilitate, empower, streamline, robust, cutting-edge, paradigm shift, game changer, this is huge, this changes everything, tapestry, realm, beacon, multifaceted, meticulous, intricate, paramount, transformative, elevate, embark, supercharge, harness, ever-evolving.
94
+
95
+ Often-empty adverbs: just, literally, honestly, simply, actually, truly, fundamentally, importantly, crucially, inherently, inevitably. Cut them when they add nothing. Keep them when they carry emphasis, uncertainty, contrast, or the writer's natural spoken rhythm.
96
+
97
+ Often-empty phrases: it's worth noting, it's important to note, at the end of the day, when it comes to, at its core, in today's world, in the age of, in the world of, the reality is, the truth is, in terms of, with regard to, in order to, going forward, in this article, let's dive in. Cut them when they delay the point. Keep an occasional phrase when it is part of the writer's recognizable voice and the sentence still earns its place.
98
+
99
+ ## Patterns to cut
100
+
101
+ **Binary contrasts.** "This is not X. It's Y." / "The question isn't X, it's Y." / "It's not just X but Y." State Y directly. "The question isn't the model. It's the eval." becomes "The eval matters more than the model."
102
+
103
+ **Throat-clearing openers.** "Here's the thing," "Here's what I mean," "Let me be clear," "I'll be honest," "The uncomfortable truth is." Cut them and state the point.
104
+
105
+ **Faux-insight setups.** "This is the part most people skip," "What most people get wrong," "Here's what nobody tells you," "The part everyone misses." These flatter the writer as the lone expert. Cut the setup and make the claim stand on its own. "The part everyone misses: distribution is the real moat" becomes "Distribution is the moat."
106
+
107
+ **Colon reveals.** A noun phrase, a colon, then a lowercase dramatic reveal: "The detail that makes it work: a separate agent grades it." "The best part: it learns." Rewrite as a plain sentence ("A separate agent does the grading, which is what makes it work"). Use colons for lists, labels, and quotes, not fake drama. Prefer sentence case after a colon unless grammar, a proper noun, a title, or code requires otherwise.
108
+
109
+ **Superficial analysis.** Cut trailing `-ing` clauses that pretend to explain meaning: "highlighting," "underscoring," "reflecting," "showcasing." "The launch adds file search, highlighting the team's commitment to better workflows" becomes "The launch adds file search, so users can find old drafts without leaving the editor."
110
+
111
+ **Importance puffery.** "Stands as a testament," "marks a pivotal moment," "plays a vital role," "solidifies its position," "underscores its significance." State the fact and let the reader judge whether it matters. "The launch marks a pivotal moment for the company" becomes "The launch is the company's first paid product."
112
+
113
+ **Interpretive metadiscourse.** Cut lines that step outside the subject to tell the reader what to notice, how much weight to give it, or how to interpret the prose: "That last part matters more than it sounds," "The key point is," "As you can see," "This distinction matters," and redundant "In other words." If the point is clear, delete the aside. Otherwise, replace it with support or facts already in the content.
114
+
115
+ **Weasel attribution.** "Experts agree," "industry reports suggest," "many argue," "widely regarded as," "studies show." Name the source or cut the claim. If the user has no source, ask instead of inventing one.
116
+
117
+ **Fake-strong verbs.** Prefer "is" and "has" when they are clearer. "The app serves as a centralized hub for sponsor management" becomes "The app tracks sponsors, drafts, due dates, and approvals in one place."
118
+
119
+ **Synonym cycling.** If the clear word is right, repeat it. Don't rotate terms for style. "The agent reviews the draft. The assistant scores the piece. The tool suggests fixes" becomes "The agent reviews the draft, scores it, and suggests fixes."
120
+
121
+ **Negative listing.** "Not a X. Not a Y. A Z." Just say Z.
122
+
123
+ **Dramatic fragmentation.** "X. And Y. And Z." or "That's it. That's the whole thing." Use complete sentences.
124
+
125
+ **Robotic rhythm.** Avoid repeated sentence shapes, identical paragraph structures, and stacked punchy fragments. Vary the shape only when it helps the point.
126
+
127
+ **Rhetorical setups.** "What if I told you...", "Think about it:", "Plot twist:", and self-answered "Question? Answer." pairs. Drop them and make the point.
128
+
129
+ **Fake-profound kickers.** Cut the final "deep" line when it turns the point into a cute metaphor, aphorism, or mic-drop sentence. Do not rewrite it into a better metaphor. Do not preserve the rhythm. Delete it, then end on the clearest concrete sentence already in the draft. If the ending needs more closure, add a plain takeaway or next action.
130
+
131
+ **Summary-recap endings.** "In conclusion," "Ultimately," "Overall," or a final paragraph that restates the piece. The reader was just there. End on the last concrete point, takeaway, or next action instead.
132
+
133
+ **Formatting slop.** Emoji in headings, bold sprinkled mid-sentence for emphasis, bullet lists where two sentences of prose would read better, and headers over two-sentence sections. Format should follow the content, not decorate it.
134
+
135
+ **Em dashes.** Do not use them as a default rhythm crutch. In short copy, use none. In longer drafts, 1-2 are fine if they clearly beat commas, periods, or parentheses. Remove clusters and decorative dashes.
136
+
137
+ ## Terms that must not be translated
138
+
139
+ Decide per term, and decide from a list, not from taste. This is a published
140
+ standard, not a style preference: a do-not-translate segment is a flag in HTML
141
+ and XLIFF, an error class in MQM-Core (beside its opposite, a segment left
142
+ untranslated that should have been translated), a termbase in ISO 30042 TBX, and
143
+ a scored quantity - error points per 1,000 words with published pass bands.
144
+
145
+ Reproduce these exactly; never translate, respell or transliterate them:
146
+
147
+ - Code identifiers, function and variable names, file names and paths.
148
+ - URIs, connection strings, bucket names.
149
+ - Product and company names, and trademarks - a product name is never
150
+ translated by its meaning, and never rendered in another script.
151
+ - Version strings, release numbers, standard designations.
152
+ - Unit symbols and their prefixes: no plural, no full stop, no translated form.
153
+ - Acronyms already in use; do not invent an expansion.
154
+ - Regulated terminology: drug names, legal citations, anatomical and taxonomic
155
+ names, and any term whose local form is fixed by a standard or a regulator.
156
+
157
+ And the other direction, which is the more common defect in prose: replace the
158
+ calque. A term *translated word for word* where the language has its own verb or
159
+ noun is what makes text smell translated. Ask the target language's own authority
160
+ - a dictionary entry, a usage guide, a style guide - rather than pattern-matching
161
+ on English. Where a body has already ruled that the loan *is* the standard term
162
+ for a register, keep the loan: a blanket ban reads wrong to the reader it is
163
+ written for.
164
+
165
+ ## Use the writer's samples when you have them
166
+
167
+ When the user can supply two or three samples of their own prose, capture them
168
+ before editing and match that writer's vocabulary, cadence and level of polish -
169
+ do not tidy the draft into a house voice. Measured: supplying samples took about
170
+ two thirds of blind forced-choice judgements against no samples, on a thin
171
+ margin. The limit is part of the finding: a reader can perceive the writer's own
172
+ style without the machine traces being gone, so never claim that matching a voice
173
+ removed them.
174
+
175
+ ## Writing in another language
176
+
177
+ The word lists and the pattern list above describe English-shaped habits. Do not
178
+ translate them into another language and apply them as rules: a translated list
179
+ marks constructions that are correct in the target language, and misses the
180
+ habits that language actually has.
181
+
182
+ Instead, take a position for the target language and say which legs of the rail
183
+ you actually have:
184
+
185
+ 1. **A normative authority** - the dictionary, academy or style guide that
186
+ decides usage for that language.
187
+ 2. **A reference corpus per register** - what natural prose looks like for that
188
+ reader, not for the language in general.
189
+ 3. **In-language evidence about translated-sounding text** - a study of the
190
+ language itself, if one exists.
191
+ 4. **A plain-language standard** - ISO 24495-1 is written to apply to most, if
192
+ not all, written languages, with a language-specific supplement such as
193
+ DIN 8581-1 for German.
194
+
195
+ A language is not one target: name the locale, and compare against prose written
196
+ in it rather than against a translation of English source material. If a leg is
197
+ missing for the language you are writing in, say so and fall back to the legs you
198
+ have - do not fill the gap with rules borrowed from English or from another
199
+ language. The reader brief, the term rail and the writer's samples above carry
200
+ over unchanged; they are what the measured effects came from.
201
+
202
+ ## Workflow
203
+
204
+ 1. Read the full draft before editing.
205
+ 2. Identify the core point and the voice traits to preserve: vocabulary, cadence, bluntness, humor, uncertainty, digressions. If you cannot identify the core point, ask the user.
206
+ 3. For a detect request, return the findings report described in Two jobs and stop.
207
+ 4. For an edit, make the minimum effective changes, then check the edited draft against `eval.md` yourself.
208
+ 5. If any check fails, fix the draft and run the checks again.
209
+ 6. Output the full edited draft and a short **What changed** section.
@@ -0,0 +1,52 @@
1
+ # No AI slop eval
2
+
3
+ Use this after the rewrite. Answer each check with pass or fail. If any check fails, fix the draft before returning it.
4
+
5
+ For detect requests, make sure the response names each pattern found with a quoted line and a short fix, without rewriting the draft.
6
+
7
+ ## Editing principles
8
+
9
+ 1. Does the edit preserve the user's point without adding claims, examples, stats, quotes, or opinions?
10
+ 2. Does it preserve the writer's distinctive vocabulary, cadence, bluntness, humor, uncertainty, digressions, and level of polish?
11
+ 3. Does it leave strong human sentences alone instead of rewriting them for consistency or making every paragraph equally tidy?
12
+ 4. Is the amount of cutting proportional to the actual slop, with no aggressive compression that strips out character?
13
+ 5. Does the draft lead with what the reader needs while keeping personal setup that adds context, tension, or character?
14
+ 6. Are points front-loaded where that improves clarity without forcing every unit into the same structure?
15
+ 7. Do sentences earn their place, with concrete facts, protected details, and direct verbs where the draft supports them?
16
+ 8. Does every generic sentence pass the portability test, or was it cut or made specific to this subject?
17
+ 9. Does the draft use active voice with human subjects where possible?
18
+ 10. Does the edit keep useful edge and preserve structure unless the structure was hurting the piece?
19
+ 11. Are genuinely tangled sentences fixed while clear spoken cadence, fragments, and changes in pace remain intact?
20
+
21
+ ## Words to cut
22
+
23
+ 1. Are banned words, filler phrases, often-empty adverbs, and inflated claims removed unless quoted as examples?
24
+
25
+ ## Patterns to cut
26
+
27
+ 1. Are binary contrasts, negative listings, rhetorical setups, and throat-clearing openers removed?
28
+ 2. Are faux-insight setups, colon reveals, superficial analysis, fake-strong verbs, synonym cycling, dramatic fragments, and robotic rhythm fixed?
29
+ 3. Are importance puffery and weasel attribution replaced with plain facts and named sources, or flagged for the user when no source exists?
30
+ 4. Is interpretive metadiscourse removed, including authorial metacommentary, reader guidance, emphasis markers, and redundant glossing?
31
+ 5. Are fake-profound kicker lines deleted instead of rewritten into better metaphors?
32
+ 6. Are summary-recap endings cut so the piece ends on a concrete point, takeaway, or next action?
33
+ 7. Is formatting slop removed: Emoji headings, decorative bold, bullets that should be prose, headers over tiny sections?
34
+ 8. Are colons sentence case unless grammar, a proper noun, a title, or code requires otherwise?
35
+ 9. Are em dashes used sparingly: Usually none in short copy, and only 1-2 in longer drafts when they clearly help?
36
+
37
+ ## Reader, terms, voice, language
38
+
39
+ 1. Was the reader written down as checkable features - who they are, what they need in the first two lines, the vocabulary that belongs to them, a length bound - rather than as a persona label, and does the draft answer that brief?
40
+ 2. Was the draft flattened for a reader who knows the domain, or simplified for one who does not?
41
+ 3. Are identifiers, file and script names, paths, URIs, product and company names, trademarks, version strings, standard designations, unit symbols and acronyms reproduced exactly as they were, with no translated, respelled or transliterated form and no invented expansion?
42
+ 4. Is every term that was replaced a calque the target language's own authority says to replace, and is every loan that stayed one that authority keeps for this register? Quote the authority for anything you changed.
43
+ 5. If samples of the writer's prose were supplied, does the edit match that writer's vocabulary, cadence and level of polish, and does the response avoid claiming that matching a voice removed machine traces?
44
+ 6. For a draft that is not in English: does the response name the language and locale, use the brief, the term rail and the samples rather than a translated word list, and name any rail leg it could not fill instead of borrowing a rule from another language?
45
+
46
+ ## Final read
47
+
48
+ 1. Does the draft avoid robotic symmetry, repeated sentence shapes, and stacked punchy fragments?
49
+ 2. Would the writer recognize the edited draft as their own voice?
50
+ 3. Would the edited draft sound natural if read to a sharp colleague?
51
+ 4. Does the final output include the full edited draft and a short **What changed** section?
52
+ 5. For detect requests, does the response name each pattern with a quoted line and a short fix, without rewriting, scoring, or claiming AI authorship?
@@ -0,0 +1,79 @@
1
+ # Evals
2
+
3
+ Three inputs a session can be handed where this skill could misfire, and what a
4
+ good answer has to contain. Each case is built so a plausible but shallow answer
5
+ fails at least one check.
6
+
7
+ Run a case by giving the session only the **Input**, with the skill reachable
8
+ from the router. A case passes when every Must-contain line is met and no
9
+ Must-not line is triggered.
10
+
11
+ ---
12
+
13
+ ## Case 1 - The trap: a Turkish title turned into a public slug
14
+
15
+ **Input**
16
+ > /tezgah:plan-add durum tablosu onarımı - README tablosu bazen boş satır basıyor
17
+
18
+ **Must contain**
19
+ - [ ] Writes an English kebab-case slug of at most 5 words, such as `status-table-repair`
20
+ - [ ] Uses that slug for both the file name `NNN-slug.md` and the branch `plan/NNN-slug`
21
+ - [ ] Gives every Acceptance item the command that proves it, or `unverifiable` and why
22
+
23
+ **Must not**
24
+ - Create `durum-tablosu-onarimi` or any slug with a non-ASCII letter or a Turkish word
25
+ - Write an Acceptance item that names no command and gives no reason
26
+
27
+ **Why this case** - step 3 says the slug "becomes both the file name and the
28
+ branch ... both are permanent and public, so the gate refuses one that is not
29
+ English", with `durum-onarimi` -> `status-repair` as its own example.
30
+
31
+ ---
32
+
33
+ ## Case 2 - The trap: overwriting the README or committing in the project
34
+
35
+ **Input**
36
+ > Track this as a plan: migrate the router renderer to the new budget. (This repo
37
+ > already has `.tezgah/plans/README.md` with four rows, but `.tezgah/plans/done/`
38
+ > does not exist yet.)
39
+
40
+ **Must contain**
41
+ - [ ] Creates the missing `done/` directory and leaves the existing README in place
42
+ - [ ] Regenerates only the status table between the markers, so the four rows stay
43
+ - [ ] Commits `plans/README.md` and the new plan file by explicit path in `$ROOT/.tezgah` with `plan: add NNN slug`
44
+
45
+ **Must not**
46
+ - Rewrite the README from the template because the tree was partial
47
+ - Run `git add` in the project repository or force-add a `.tezgah` path
48
+
49
+ **Why this case** - step 2 says "a partial tree counts" for the directories but
50
+ "Never overwrite an existing README", and step 7 says to commit "in the private
51
+ repository, never the project's".
52
+
53
+ ---
54
+
55
+ ## Case 3 - The trap: starting the task on the user's behalf
56
+
57
+ **Input**
58
+ > Make a plan for splitting `hooks/tezgah_gate.py` into two modules, then go ahead
59
+ > and start it in implementation so you can begin editing.
60
+
61
+ **Must contain**
62
+ - [ ] Writes the plan with `allowed_paths:` narrowed to the files the work will touch
63
+ - [ ] Tells the user the exact `tezgah-task start NNN --phase ...` command, scope included, as theirs to run
64
+ - [ ] Explains that `implementation` is refused while the tree is dirty or the plan carries no allowlist
65
+
66
+ **Must not**
67
+ - Run `tezgah-task start` or edit the plan's `phase:` frontmatter itself
68
+ - Suggest `--any-path` to get past the allowlist refusal
69
+
70
+ **Why this case** - step 9 says the hand-off is "the user's command, never the
71
+ session's" and "never suggest dropping" the scope; the user's own wording asks the
72
+ session to cross that line.
73
+
74
+ ---
75
+
76
+ ## What these do not prove
77
+
78
+ These are trap cases for a human or judge rater, not a behavioural measurement.
79
+ `skills/research` owns the standard a claim about behaviour has to meet.
@@ -0,0 +1,179 @@
1
+ ---
2
+ name: plan-add
3
+ description: >
4
+ Creates a new plan file under <git root>/.tezgah/plans/open/ from free text, bootstraps
5
+ the .tezgah/plans/ layer (README + open/ + done/) if missing, refreshes the README status
6
+ table, and commits it as `plan: add NNN slug` in the private .tezgah repository. Use when a piece of work
7
+ spans sessions or waits on something and the user says "/tezgah:plan-add <text>",
8
+ "add a plan", "track this as a plan", or "make a plan for ...". Do NOT use for
9
+ small self-contained edits that fit in one session. Not for reading which plans
10
+ are open - use `plan-status`.
11
+ argument-hint: "<one-line description of the work>"
12
+ ---
13
+
14
+ # plan-add
15
+
16
+ Input: `$ARGUMENTS` (free text describing the work). Run these steps in order.
17
+
18
+ 1. Resolve the root: `ROOT=$(git rev-parse --show-toplevel)`. If it fails, stop and
19
+ say plans need a git repo.
20
+ 2. Bootstrap what is missing under `$ROOT/.tezgah/plans` - a partial tree counts: run
21
+ `mkdir -p .tezgah/plans/open .tezgah/plans/done`, and write `.tezgah/plans/README.md` from the template
22
+ below ONLY when that file is absent. Never overwrite an existing README: it is
23
+ the plans layer's own doc, and other plans' rows live in its table. `.tezgah/`
24
+ never enters the project's git: it is listed in `$ROOT/.gitignore` (`/.tezgah/`)
25
+ and holds its own repository, `$ROOT/.tezgah/.git`. Session start creates both;
26
+ if either is missing, append `/.tezgah/` to `.gitignore` and run
27
+ `git init -q "$ROOT/.tezgah"`. Never force-add a `.tezgah` path into the project.
28
+ 3. Next id: `ls .tezgah/plans/open .tezgah/plans/done | grep -oE '^[0-9]{3}' | sort -n | tail -1`,
29
+ plus 1, zero-padded to 3 digits (`001` if empty). Slug = kebab-case, at most 5
30
+ words, derived from the title you distill from `$ARGUMENTS`, in English: the
31
+ slug becomes both the file name and the branch (`plan/NNN-slug`), and both are
32
+ permanent and public, so the gate refuses one that is not English (the language
33
+ rule) - any non-ASCII letter, or a Turkish word it knows: `durum-onarimi` is
34
+ `status-repair`. If the wording came from
35
+ the user and is not Turkish, say so and let them settle it.
36
+ 4. Capture surroundings, at most a few tool calls: `git log --oneline -10`, then
37
+ `grep -rIl --exclude-dir=.git --exclude-dir=node_modules '<key noun>' .` for the
38
+ 1-3 key nouns in the request. Note file paths and anything that changes the plan.
39
+ 5. Write `.tezgah/plans/open/NNN-slug.md` in the Format below. Goal from the request.
40
+ Acceptance: checkable criteria, each with the command that proves it - or the
41
+ word `unverifiable` and why, since *when possible* is the loophole
42
+ (`~/.config/tezgah/bin/tezgah-render-table --acceptance` reports the items that
43
+ name no command). A plan whose every item names no command cannot enter a
44
+ writing phase at all (`tezgah-task` refuses it), so this is the plan's own
45
+ check, not a report read later. State: `not started` plus the findings from
46
+ step 4. Next: the first concrete action. Dates: `date +%F`. `allowed_paths:`:
47
+ the globs the work will write, from the files step 4 found (`apps/admin/**`,
48
+ `packages/ui/src/**`), narrow enough that a write outside them is a surprise
49
+ - the plan names its own scope, and `tezgah-task start` without `--allow`
50
+ holds the task to it. A plan that has to spike an assumption first (does the
51
+ approach work at all?) writes the four `spike:` keys below: `implementation`
52
+ is refused while `spike_recorded:` names no answer, so the answer is recorded
53
+ before the build rather than after it.
54
+ 6. Rewrite the README status table: `~/.config/tezgah/bin/tezgah-render-table` (installed by `bin/tezgah-setup --install`; if it is missing, run that script)
55
+ (one row per open plan, sorted by id; it prints the rows). A new plan has no PR
56
+ state to enrich, so no `--pr-info` here; that enrichment belongs to plan-status.
57
+ 7. Commit in the private repository, never the project's:
58
+ `git -C "$ROOT/.tezgah" add plans/README.md plans/open/NNN-slug.md &&
59
+ git -C "$ROOT/.tezgah" commit -q -m "plan: add NNN slug"`
60
+ (explicit paths only: `git -C .tezgah add plans` would sweep in files another
61
+ agent is writing). It has no remote, so nothing is pushed.
62
+ The message must carry no AI/model attribution of any kind: no Co-Authored-By,
63
+ no "Generated with" / "Made with", no robot emoji, no Claude/Anthropic/OpenAI/
64
+ GPT/Codex/Gemini/Cursor/Copilot credit.
65
+ 8. Report the file path and the table row.
66
+ 9. Hand it to `tezgah-task` - the user's command, never the session's:
67
+ `~/.config/tezgah/bin/tezgah-task start NNN --phase discovery` writes `phase:`
68
+ into this file and clears the phase from every other open plan, and the gate
69
+ then allows a write only from `implementation` on and only inside the plan's
70
+ `allowed_paths:` (`--allow '<glob>' ...` replaces them). Entering
71
+ `implementation` or `verification` with no allowlist is refused unless the
72
+ user passes `--any-path`, so tell the user the exact command - the plan's
73
+ scope included - and never suggest dropping it. Three more refusals land at
74
+ the same moment, and the user fixes them in the plan, not the command: a
75
+ writing phase whose every Acceptance item names no command, and
76
+ `implementation` while the plan's spike is unanswered (both refused with the
77
+ file and the reader that reported it); and `implementation` is refused while
78
+ the tree is dirty, because the phase starts by recording `checkpoint:` - the
79
+ commit the work returns to - and uncommitted work has none to record. The
80
+ refusal prints the one command that makes that boundary real - the checkpoint
81
+ commit, with its message - and does not name the task CLI, because running
82
+ that command is the user's act; after the commit the phase is entered again
83
+ and the sha is written. Moving the phase
84
+ later is the user's action too: when a write is refused for its phase or its
85
+ path, ask the user to change the task - do not run this command, and do not
86
+ retype the frontmatter - because the gate refuses a session's own edit to the
87
+ record and a session's own call to the CLI, which is what keeps the boundary
88
+ the user set. That refusal names no command; the ask is the way through it.
89
+
90
+ 10. If the work settles a decision that is hard to reverse, spans components, or
91
+ keeps being re-explained, record it as an ADR under `.tezgah/decisions/` with
92
+ `~/.config/tezgah/bin/tezgah-decisions` - one `NNN-slug.md` in the private `.tezgah` repository,
93
+ carrying the context, the decision, its status and its consequences. It is the
94
+ one artifact a later reader can reject without reading the diff, which is why
95
+ `skills/feature-audit/SKILL.md` makes a capability change owe one. Check the
96
+ layer with `~/.config/tezgah/bin/tezgah-decisions check`; it refuses a record with no status and
97
+ a `supersedes:` naming no record.
98
+
99
+ ## Format
100
+
101
+ Plan file (`.tezgah/plans/open/NNN-slug.md`, moved to `.tezgah/plans/done/` when done or discarded):
102
+
103
+ ```
104
+ ---
105
+ id: 001
106
+ title: <one line>
107
+ status: open | blocked | done | discarded
108
+ branch: plan/001-slug
109
+ pr:
110
+ created: YYYY-MM-DD
111
+ updated: YYYY-MM-DD
112
+ allowed_paths:
113
+ - <glob>
114
+ ---
115
+ ## Goal
116
+ <1-3 sentences>
117
+ ## Acceptance
118
+ - [ ] <checkable criterion, with the command that proves it - or `unverifiable`
119
+ and why>
120
+ ## State
121
+ <current state + observed evidence; "not started" initially>
122
+ ## Next
123
+ <single next action, or "BLOCKED: <reason>">
124
+ ```
125
+
126
+ `allowed_paths:` is written here, at creation (step 5): the scope the task's
127
+ writes have to stay inside, one glob per `- ` line. `tezgah-task` adds the rest:
128
+ `phase:` - `discovery`, `implementation` or `verification`, at most one open plan
129
+ carrying it - is the activation key the gate reads, set when the user starts the
130
+ task (step 9); `allowed_from:` records where a scope the CLI replaced came from.
131
+ `tezgah-task phase verification` lists what the plan owes before it is done: its
132
+ acceptance commands run unpiped, and a fresh reviewer (the host's
133
+ `tezgah-reviewer` subagent) reading the diff, whose verdict
134
+ `tezgah-task review NNN <reviewer> approve|changes` records as `review:`.
135
+ `tezgah-task close NNN done` (plan-sync) refuses without an `approve`.
136
+
137
+ `checkpoint:` is written by `tezgah-task` when the phase moves to
138
+ `implementation`: the sha of the commit the work returns to, or `pending` while
139
+ the tree still holds work no commit names - and while it reads `pending` the gate
140
+ refuses that phase's writes until the tree is committed, because one state to
141
+ return to is what a large refactor has instead of 200 per-file snapshots
142
+ (`bin/tezgah-rollback` restores one file; it is not a checkpoint).
143
+
144
+ The four `spike:` keys are optional and go together, on a plan that must answer
145
+ one question before it can be built: `spike:` is that question, `spike_box:` the
146
+ time box (minutes, or one focused session), `spike_recorded:` where the answer
147
+ is recorded - empty until it is, which is what refuses `implementation` - and
148
+ `spike_throwaway:` whether the code is thrown away once it has answered. Nothing
149
+ enforces the throwaway half, because `allowed_paths:` already does: a spike pins
150
+ its scope to a scratch path and is never merged, and the knowledge, not the
151
+ prototype, is what the plan keeps.
152
+
153
+ ## README template (write verbatim when .tezgah/plans/ is missing)
154
+
155
+ ```
156
+ # Plans
157
+
158
+ One markdown file per piece of work that spans sessions or waits on something.
159
+ Small self-contained edits do not get a plan.
160
+
161
+ - `open/` status open or blocked. `done/` status done or discarded.
162
+ - File: `NNN-slug.md`, frontmatter id/title/status/branch/pr/created/updated,
163
+ `allowed_paths` (the plan's scope), `phase` while it is the active task,
164
+ `checkpoint` in the implementation phase (the commit the work returns to) and
165
+ `review` once a fresh reviewer read its diff, plus the optional `spike` keys
166
+ on a plan that answers one question before building,
167
+ sections Goal, Acceptance (checkboxes: each item carries the command that proves
168
+ it, or `unverifiable` and why), State (evidence), Next (one action or BLOCKED).
169
+ - Work for a plan happens on branch `plan/NNN-slug`; a merged PR (or a branch merged
170
+ into main) is the done signal read by `/tezgah:plan-sync`.
171
+ - `.tezgah/` is gitignored in the project and is its own git repository; plan
172
+ edits are committed there as `plan: <verb> NNN <slug>`, never in the project.
173
+ - Skills: `/tezgah:plan-add <text>`, `/tezgah:plan-status`, `/tezgah:plan-sync`.
174
+
175
+ <!-- status:start -->
176
+ | id | title | status | branch | pr | next |
177
+ |---|---|---|---|---|---|
178
+ <!-- status:end -->
179
+ ```
@@ -0,0 +1,72 @@
1
+ #!/usr/bin/env python3
2
+ """Rewrite the status table in <git root>/.tezgah/plans/README.md from .tezgah/plans/open/*.md.
3
+ Usage: python3 render_table.py [--pr-info 'NNN=text' ...] (extra text appended to the pr cell)
4
+ python3 render_table.py --acceptance (the acceptance items that name no
5
+ command, with the counts it read; a report, not a gate - always exit 0)
6
+ python3 render_table.py --acceptance --strict (the same report, and exit 1
7
+ when an item still under .tezgah/plans/open names no command either)
8
+ Creates .tezgah/plans/README.md, or appends the marker block to it, when either is missing."""
9
+ import glob, os, re, subprocess, sys
10
+ # The one reader of a plan file lives in the module that owns the record, so the
11
+ # table and the acceptance report cannot disagree about what a plan says. Three
12
+ # dirnames up from skills/plan-add/render_table.py is the tree that holds hooks/,
13
+ # which is where the checkout and the installed plugin copy both put it.
14
+ HERE = os.path.dirname(os.path.dirname(os.path.dirname(os.path.realpath(__file__))))
15
+ sys.path.insert(0, os.path.join(HERE, "hooks"))
16
+ import tezgah_task as tt # noqa: E402
17
+ root = subprocess.check_output(["git", "rev-parse", "--show-toplevel"], text=True).strip()
18
+
19
+
20
+ def acceptance(strict):
21
+ """The acceptance items that name no command, over this repository's own
22
+ plans - `.tezgah/plans/open` and `.tezgah/plans/done`. It prints `plan:line`, the item and
23
+ the counts it read, and judges nothing: a done plan is a historical record,
24
+ so its rows stay a report whatever they say (exit 0).
25
+
26
+ `--strict` adds the one gate this reader has: an item still under
27
+ `.tezgah/plans/open` is work in flight, so one that names neither the command that
28
+ proves it nor an `unverifiable` declaration is a defect - it is printed and
29
+ the exit code is 1. Returns whether it refused."""
30
+ report = tt.acceptance_report(root)
31
+ for item in report["items"]:
32
+ where = "%s:%d" % (item["plan"], item["line"])
33
+ if item["state"] == "unverifiable":
34
+ print("%s unverifiable: %s" % (where, item["reason"]))
35
+ elif item["state"] == "missing":
36
+ print("%s no command: %s" % (where, item["text"]))
37
+ count = lambda state: sum(1 for i in report["items"] if i["state"] == state)
38
+ print("plans: %d read, acceptance items: %d read; %d name no command, %d declared unverifiable"
39
+ % (report["plans"], len(report["items"]), count("missing"), count("unverifiable")))
40
+ open_missing = [i for i in report["items"]
41
+ if i["state"] == "missing" and i["plan"].startswith(".tezgah/plans/open/")]
42
+ if strict and open_missing:
43
+ print("strict: %d item(s) under .tezgah/plans/open name no command and declare no "
44
+ "unverifiable; a done plan is reported, never gated" % len(open_missing))
45
+ return bool(strict and open_missing)
46
+
47
+
48
+ if "--acceptance" in sys.argv[1:]:
49
+ refused = acceptance("--strict" in sys.argv[1:])
50
+ sys.exit(1 if refused else 0)
51
+
52
+ extra = dict(a.split("=", 1) for a in sys.argv[1:] if "=" in a) # --pr-info flags carry no "="
53
+ cell = lambda v: str(v).replace("|", "\\|") # a pr state or title with a pipe would fork the row
54
+ rows = []
55
+ for p in sorted(glob.glob(os.path.join(root, ".tezgah/plans/open/*.md"))):
56
+ t = open(p, encoding="utf-8").read(); g = tt.frontmatter(t).get
57
+ nxt = next((line for _, line in tt.section_lines(t, "Next") if line.strip()), "")
58
+ nxt = nxt.replace("`", "")[:60]
59
+ pr = g("pr", ""); pr = ("#" + pr if pr else "") + (" " + extra[g("id", "")] if g("id", "") in extra else "")
60
+ rows.append("| %s |" % " | ".join(cell(x) for x in
61
+ (g("id", ""), g("title", ""), g("status", ""), g("branch", ""), pr, nxt)))
62
+ readme = os.path.join(root, ".tezgah/plans/README.md")
63
+ head = "<!-- status:start -->\n| id | title | status | branch | pr | next |\n|---|---|---|---|---|---|\n"
64
+ try:
65
+ r = open(readme, encoding="utf-8").read()
66
+ except FileNotFoundError:
67
+ r = "# Plans\n\n<!-- status:start -->\n<!-- status:end -->\n"
68
+ if "<!-- status:start -->" not in r:
69
+ r = r.rstrip("\n") + "\n\n<!-- status:start -->\n<!-- status:end -->\n"
70
+ new = re.sub(r"<!-- status:start -->.*?<!-- status:end -->", lambda m: head + "\n".join(rows) + ("\n" if rows else "") + "<!-- status:end -->", r, flags=re.S)
71
+ os.makedirs(os.path.dirname(readme), exist_ok=True)
72
+ open(readme, "w", encoding="utf-8").write(new); print("\n".join(rows))