@r1z4x/tezgah 1.9.2 → 1.11.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.
- package/CHANGELOG.md +83 -1
- package/MANIFEST +382 -144
- package/README.de.md +1 -1
- package/README.es.md +1 -1
- package/README.fr.md +1 -1
- package/README.md +1 -1
- package/README.tr.md +1 -1
- package/bin/codegen +5 -2
- package/bin/tezgah-design +288 -1
- package/bin/tezgah-docs +1 -1
- package/bin/tezgah-doctor +39 -2
- package/bin/tezgah-import-ai-research +26 -12
- package/bin/tezgah-ocr-review +296 -0
- package/bin/tezgah-research +216 -40
- package/bin/tezgah-review-quote +185 -0
- package/bin/tezgah-setup +136 -33
- package/bin/tezgah-skill +1 -1
- package/bin/tezgah-status +201 -3
- package/bin/tezgah-task +203 -3
- package/commands/adhd.md +2 -2
- package/commands/ponytail.md +4 -4
- package/docs/architecture.md +2 -2
- package/docs/citations-baseline.json +2 -2
- package/docs/clarity-baseline.json +2 -2
- package/docs/contract.md +87 -42
- package/docs/environment.md +2 -0
- package/docs/evidence.md +28 -9
- package/docs/feature-audit.md +2 -2
- package/docs/gate.md +54 -31
- package/docs/glossary.md +5 -2
- package/docs/hosts.md +17 -3
- package/docs/index.json +34 -8
- package/docs/judge.md +4 -2
- package/docs/layers.md +3 -3
- package/docs/models.md +31 -9
- package/docs/operations.md +126 -1
- package/docs/research.md +786 -5
- package/docs/skills.md +137 -13
- package/docs/status-line.md +115 -1
- package/hooks/hooks.json +1 -1
- package/hooks/lang/en.json +10 -0
- package/hooks/lang/tr.json +11 -1
- package/hooks/tezgah_agents.py +38 -22
- package/hooks/tezgah_apps.py +18 -0
- package/hooks/tezgah_components.py +4 -0
- package/hooks/tezgah_context.py +189 -50
- package/hooks/tezgah_extension.py +337 -0
- package/hooks/tezgah_gate.py +188 -56
- package/hooks/tezgah_integrity.py +652 -105
- package/hooks/tezgah_judge.py +6 -4
- package/hooks/tezgah_models.py +59 -19
- package/hooks/tezgah_orca.py +1 -1
- package/hooks/tezgah_paths.py +102 -6
- package/hooks/tezgah_policy.py +94 -45
- package/hooks/tezgah_rank.py +9 -6
- package/hooks/tezgah_replay.py +4 -4
- package/hooks/tezgah_research.py +1260 -65
- package/hooks/tezgah_research_capture.py +1544 -0
- package/hooks/tezgah_research_evidence.py +842 -0
- package/hooks/tezgah_research_stats.py +258 -0
- package/hooks/tezgah_skill_pick.py +408 -106
- package/hooks/tezgah_stopspec.py +8 -1
- package/hooks/tezgah_task.py +12 -4
- package/hooks/tezgah_taste_ledger.py +1 -1
- package/hosts/cursor/hook.py +29 -2
- package/hosts/opencode/plugins/tezgah.js +307 -46
- package/hosts/opencode/tui/cli/tui.tsx +100 -0
- package/hosts/opencode/tui/tezgah-tui.tsx +2 -1
- package/output-styles/tezgah.md +10 -10
- package/package.json +1 -1
- package/skills/ai-research/SKILL.md +21 -14
- package/skills/ai-research/SOURCE +7 -5
- package/skills/ai-research/index/1-frame.md +6 -6
- package/skills/ai-research/index/2-data.md +9 -9
- package/skills/ai-research/index/3-train.md +36 -36
- package/skills/ai-research/index/4-measure.md +13 -13
- package/skills/ai-research/index/5-run.md +11 -11
- package/skills/ai-research/index/6-write.md +23 -23
- package/skills/ai-research/library.json +104 -104
- package/skills/analyze-app/SKILL.md +17 -12
- package/skills/design-contract/SKILL.md +42 -7
- package/skills/design-contract/data-views.md +2 -2
- package/skills/design-library/EVALS.md +1 -1
- package/skills/design-library/INDEX.md +39 -39
- package/skills/design-library/SKILL.md +19 -13
- package/skills/design-library/SOURCE +45 -43
- package/skills/feature-audit/SKILL.md +20 -14
- package/skills/hallmark/LICENSE +21 -0
- package/skills/hallmark/SKILL.md +154 -0
- package/skills/hallmark/SOURCE +207 -0
- package/skills/hallmark/agents/openai.yaml +13 -0
- package/skills/hallmark/references/anatomy.md +71 -0
- package/skills/hallmark/references/brand-truth.md +40 -0
- package/skills/hallmark/references/comp.md +104 -0
- package/skills/hallmark/references/craft.md +116 -0
- package/skills/hallmark/references/dark-mode.md +49 -0
- package/skills/hallmark/references/data-viz.md +48 -0
- package/skills/hallmark/references/design-md.md +53 -0
- package/skills/hallmark/references/direction.md +52 -0
- package/skills/hallmark/references/export-formats.md +80 -0
- package/skills/hallmark/references/flow.md +131 -0
- package/skills/hallmark/references/fonts.md +58 -0
- package/skills/hallmark/references/gates.md +243 -0
- package/skills/hallmark/references/genres/atmospheric.md +24 -0
- package/skills/hallmark/references/genres/editorial.md +24 -0
- package/skills/hallmark/references/genres/modern-minimal.md +24 -0
- package/skills/hallmark/references/genres/playful.md +24 -0
- package/skills/hallmark/references/imagery.md +99 -0
- package/skills/hallmark/references/interaction-and-states.md +89 -0
- package/skills/hallmark/references/layout.md +104 -0
- package/skills/hallmark/references/macrostructures/01-bento-grid.md +21 -0
- package/skills/hallmark/references/macrostructures/02-long-document.md +35 -0
- package/skills/hallmark/references/macrostructures/03-marquee-hero.md +21 -0
- package/skills/hallmark/references/macrostructures/04-stat-led.md +21 -0
- package/skills/hallmark/references/macrostructures/05-workbench.md +21 -0
- package/skills/hallmark/references/macrostructures/06-conversational-faq.md +28 -0
- package/skills/hallmark/references/macrostructures/07-manifesto.md +28 -0
- package/skills/hallmark/references/macrostructures/08-photographic.md +21 -0
- package/skills/hallmark/references/macrostructures/09-quote-led.md +21 -0
- package/skills/hallmark/references/macrostructures/10-specimen.md +21 -0
- package/skills/hallmark/references/macrostructures/11-catalogue.md +21 -0
- package/skills/hallmark/references/macrostructures/12-letter.md +21 -0
- package/skills/hallmark/references/macrostructures/13-index-first.md +21 -0
- package/skills/hallmark/references/macrostructures/14-narrative-workflow.md +21 -0
- package/skills/hallmark/references/macrostructures/15-split-studio.md +21 -0
- package/skills/hallmark/references/macrostructures/16-feature-stack.md +23 -0
- package/skills/hallmark/references/macrostructures/17-type-specimen.md +19 -0
- package/skills/hallmark/references/macrostructures/18-portfolio-grid.md +21 -0
- package/skills/hallmark/references/macrostructures/19-map-diagram.md +21 -0
- package/skills/hallmark/references/macrostructures/20-ecosystem-index.md +19 -0
- package/skills/hallmark/references/macrostructures/21-component-playground.md +21 -0
- package/skills/hallmark/references/macrostructures.md +119 -0
- package/skills/hallmark/references/microinteractions.md +80 -0
- package/skills/hallmark/references/patterns.md +202 -0
- package/skills/hallmark/references/redesign.md +88 -0
- package/skills/hallmark/references/responsive.md +46 -0
- package/skills/hallmark/references/review-finish.md +19 -0
- package/skills/hallmark/references/review-hero.md +20 -0
- package/skills/hallmark/references/scroll-choreography.md +110 -0
- package/skills/hallmark/references/texture.md +90 -0
- package/skills/hallmark/references/themes/README.md +58 -0
- package/skills/hallmark/references/themes/almanac.jpg +0 -0
- package/skills/hallmark/references/themes/almanac.md +103 -0
- package/skills/hallmark/references/themes/arcade.jpg +0 -0
- package/skills/hallmark/references/themes/arcade.md +102 -0
- package/skills/hallmark/references/themes/atelier.jpg +0 -0
- package/skills/hallmark/references/themes/atelier.md +98 -0
- package/skills/hallmark/references/themes/bloom.jpg +0 -0
- package/skills/hallmark/references/themes/bloom.md +102 -0
- package/skills/hallmark/references/themes/blueprint.jpg +0 -0
- package/skills/hallmark/references/themes/blueprint.md +103 -0
- package/skills/hallmark/references/themes/broadside.jpg +0 -0
- package/skills/hallmark/references/themes/broadside.md +108 -0
- package/skills/hallmark/references/themes/brutal.jpg +0 -0
- package/skills/hallmark/references/themes/brutal.md +95 -0
- package/skills/hallmark/references/themes/carnival.jpg +0 -0
- package/skills/hallmark/references/themes/carnival.md +104 -0
- package/skills/hallmark/references/themes/cobalt.jpg +0 -0
- package/skills/hallmark/references/themes/cobalt.md +101 -0
- package/skills/hallmark/references/themes/console.jpg +0 -0
- package/skills/hallmark/references/themes/console.md +99 -0
- package/skills/hallmark/references/themes/coral.jpg +0 -0
- package/skills/hallmark/references/themes/coral.md +102 -0
- package/skills/hallmark/references/themes/darkroom.jpg +0 -0
- package/skills/hallmark/references/themes/darkroom.md +99 -0
- package/skills/hallmark/references/themes/dose.jpg +0 -0
- package/skills/hallmark/references/themes/dose.md +98 -0
- package/skills/hallmark/references/themes/dusk.jpg +0 -0
- package/skills/hallmark/references/themes/dusk.md +105 -0
- package/skills/hallmark/references/themes/editorial.jpg +0 -0
- package/skills/hallmark/references/themes/editorial.md +97 -0
- package/skills/hallmark/references/themes/formwork.jpg +0 -0
- package/skills/hallmark/references/themes/formwork.md +107 -0
- package/skills/hallmark/references/themes/furrow.jpg +0 -0
- package/skills/hallmark/references/themes/furrow.md +98 -0
- package/skills/hallmark/references/themes/garden.jpg +0 -0
- package/skills/hallmark/references/themes/garden.md +97 -0
- package/skills/hallmark/references/themes/grid.jpg +0 -0
- package/skills/hallmark/references/themes/grid.md +101 -0
- package/skills/hallmark/references/themes/halftone.jpg +0 -0
- package/skills/hallmark/references/themes/halftone.md +106 -0
- package/skills/hallmark/references/themes/hedgerow.jpg +0 -0
- package/skills/hallmark/references/themes/hedgerow.md +104 -0
- package/skills/hallmark/references/themes/hum.jpg +0 -0
- package/skills/hallmark/references/themes/hum.md +99 -0
- package/skills/hallmark/references/themes/index.json +2191 -0
- package/skills/hallmark/references/themes/ink.jpg +0 -0
- package/skills/hallmark/references/themes/ink.md +106 -0
- package/skills/hallmark/references/themes/kiln.jpg +0 -0
- package/skills/hallmark/references/themes/kiln.md +108 -0
- package/skills/hallmark/references/themes/loom.jpg +0 -0
- package/skills/hallmark/references/themes/loom.md +106 -0
- package/skills/hallmark/references/themes/lumen.jpg +0 -0
- package/skills/hallmark/references/themes/lumen.md +103 -0
- package/skills/hallmark/references/themes/manifesto.jpg +0 -0
- package/skills/hallmark/references/themes/manifesto.md +101 -0
- package/skills/hallmark/references/themes/midnight.jpg +0 -0
- package/skills/hallmark/references/themes/midnight.md +97 -0
- package/skills/hallmark/references/themes/newsprint.jpg +0 -0
- package/skills/hallmark/references/themes/newsprint.md +102 -0
- package/skills/hallmark/references/themes/overprint.jpg +0 -0
- package/skills/hallmark/references/themes/overprint.md +101 -0
- package/skills/hallmark/references/themes/pasteup.jpg +0 -0
- package/skills/hallmark/references/themes/pasteup.md +100 -0
- package/skills/hallmark/references/themes/piste.jpg +0 -0
- package/skills/hallmark/references/themes/piste.md +99 -0
- package/skills/hallmark/references/themes/ribbon.jpg +0 -0
- package/skills/hallmark/references/themes/ribbon.md +106 -0
- package/skills/hallmark/references/themes/rim.jpg +0 -0
- package/skills/hallmark/references/themes/rim.md +96 -0
- package/skills/hallmark/references/themes/riso.jpg +0 -0
- package/skills/hallmark/references/themes/riso.md +98 -0
- package/skills/hallmark/references/themes/solstice.jpg +0 -0
- package/skills/hallmark/references/themes/solstice.md +104 -0
- package/skills/hallmark/references/themes/specimen.jpg +0 -0
- package/skills/hallmark/references/themes/specimen.md +100 -0
- package/skills/hallmark/references/themes/spore.jpg +0 -0
- package/skills/hallmark/references/themes/spore.md +104 -0
- package/skills/hallmark/references/themes/sport.jpg +0 -0
- package/skills/hallmark/references/themes/sport.md +101 -0
- package/skills/hallmark/references/themes/squeeze.jpg +0 -0
- package/skills/hallmark/references/themes/squeeze.md +99 -0
- package/skills/hallmark/references/themes/sticker.jpg +0 -0
- package/skills/hallmark/references/themes/sticker.md +106 -0
- package/skills/hallmark/references/themes/studio.jpg +0 -0
- package/skills/hallmark/references/themes/studio.md +99 -0
- package/skills/hallmark/references/themes/terminal.jpg +0 -0
- package/skills/hallmark/references/themes/terminal.md +96 -0
- package/skills/hallmark/references/themes/terrazzo.jpg +0 -0
- package/skills/hallmark/references/themes/terrazzo.md +106 -0
- package/skills/hallmark/references/themes/ultraviolet.jpg +0 -0
- package/skills/hallmark/references/themes/ultraviolet.md +106 -0
- package/skills/hallmark/references/themes/vellum.jpg +0 -0
- package/skills/hallmark/references/themes/vellum.md +105 -0
- package/skills/hallmark/references/themes/wayfind.jpg +0 -0
- package/skills/hallmark/references/themes/wayfind.md +105 -0
- package/skills/hallmark/references/themes/werkstatt.jpg +0 -0
- package/skills/hallmark/references/themes/werkstatt.md +105 -0
- package/skills/hallmark/scripts/capture.mjs +125 -0
- package/skills/hallmark/scripts/fixtures/exemplars/atmospheric.html +324 -0
- package/skills/hallmark/scripts/fixtures/exemplars/editorial.html +363 -0
- package/skills/hallmark/scripts/fixtures/exemplars/modern-minimal.html +527 -0
- package/skills/hallmark/scripts/fixtures/exemplars/playful.html +353 -0
- package/skills/hallmark/scripts/fixtures/eyebrow-fail/index.html +118 -0
- package/skills/hallmark/scripts/fixtures/eyebrow-pass/index.html +137 -0
- package/skills/hallmark/scripts/fixtures/kept/after.html +27 -0
- package/skills/hallmark/scripts/fixtures/kept/before.html +26 -0
- package/skills/hallmark/scripts/fixtures/slopped.html +145 -0
- package/skills/hallmark/scripts/fixtures/tailwind-fail/Feature.vue +14 -0
- package/skills/hallmark/scripts/fixtures/tailwind-fail/Hero.tsx +33 -0
- package/skills/hallmark/scripts/fixtures/tailwind-fail/index.html +74 -0
- package/skills/hallmark/scripts/fixtures/tailwind-fail/style.css +6 -0
- package/skills/hallmark/scripts/fixtures/tailwind-pass/Hero.tsx +33 -0
- package/skills/hallmark/scripts/fixtures/tailwind-pass/index.html +57 -0
- package/skills/hallmark/scripts/fixtures/tailwind-pass/style.css +15 -0
- package/skills/hallmark/scripts/fixtures/waiver/index.html +54 -0
- package/skills/hallmark/scripts/imagegen.mjs +85 -0
- package/skills/hallmark/scripts/install-hook.mjs +70 -0
- package/skills/hallmark/scripts/install.mjs +141 -0
- package/skills/hallmark/scripts/lint-hook.mjs +49 -0
- package/skills/hallmark/scripts/photos.json +1 -0
- package/skills/hallmark/scripts/picture.mjs +71 -0
- package/skills/hallmark/scripts/refcheck.mjs +352 -0
- package/skills/hallmark/scripts/sloplint-render.mjs +1252 -0
- package/skills/hallmark/scripts/sloplint.mjs +4422 -0
- package/skills/hallmark/scripts/theme.mjs +650 -0
- package/skills/harness/SKILL.md +15 -8
- package/skills/i-have-adhd/SKILL.md +22 -11
- package/skills/no-ai-slop/SKILL.md +15 -1
- package/skills/plan-add/SKILL.md +33 -26
- package/skills/plan-status/SKILL.md +13 -7
- package/skills/plan-sync/SKILL.md +18 -12
- package/skills/pm-frameworks/SKILL.md +19 -10
- package/skills/pm-frameworks/SOURCE +7 -5
- package/skills/ponytail/SKILL.md +19 -14
- package/skills/product-analysis/SKILL.md +22 -18
- package/skills/product-flow/SKILL.md +14 -9
- package/skills/research/SKILL.md +75 -39
- package/skills/rl-env/SKILL.md +25 -13
- package/skills/rl-env/SOURCE +8 -6
- package/skills/tezgah-contract/SKILL.md +47 -42
- package/bin/tezgah-skill.py +0 -59
- /package/skills/ai-research/0-autoresearch-skill/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/01-model-architecture/litgpt/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/01-model-architecture/mamba/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/01-model-architecture/nanogpt/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/01-model-architecture/rwkv/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/01-model-architecture/torchtitan/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/02-tokenization/huggingface-tokenizers/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/02-tokenization/sentencepiece/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/03-fine-tuning/axolotl/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/03-fine-tuning/llama-factory/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/03-fine-tuning/peft/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/03-fine-tuning/unsloth/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/04-mechanistic-interpretability/nnsight/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/04-mechanistic-interpretability/pyvene/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/04-mechanistic-interpretability/saelens/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/04-mechanistic-interpretability/transformer-lens/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/05-data-processing/nemo-curator/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/05-data-processing/ray-data/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/06-post-training/grpo-rl-training/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/06-post-training/miles/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/06-post-training/openrlhf/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/06-post-training/simpo/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/06-post-training/slime/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/06-post-training/torchforge/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/06-post-training/trl-fine-tuning/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/06-post-training/verl/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/07-safety-alignment/constitutional-ai/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/07-safety-alignment/llamaguard/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/07-safety-alignment/nemo-guardrails/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/07-safety-alignment/prompt-guard/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/08-distributed-training/accelerate/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/08-distributed-training/deepspeed/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/08-distributed-training/megatron-core/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/08-distributed-training/pytorch-fsdp2/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/08-distributed-training/pytorch-lightning/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/08-distributed-training/ray-train/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/09-infrastructure/lambda-labs/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/09-infrastructure/modal/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/09-infrastructure/skypilot/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/10-optimization/awq/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/10-optimization/bitsandbytes/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/10-optimization/flash-attention/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/10-optimization/gguf/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/10-optimization/gptq/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/10-optimization/hqq/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/10-optimization/ml-training-recipes/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/11-evaluation/bigcode-evaluation-harness/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/11-evaluation/lm-evaluation-harness/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/11-evaluation/nemo-evaluator/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/12-inference-serving/llama-cpp/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/12-inference-serving/sglang/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/12-inference-serving/tensorrt-llm/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/12-inference-serving/vllm/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/13-mlops/mlflow/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/13-mlops/swanlab/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/13-mlops/tensorboard/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/13-mlops/weights-and-biases/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/14-agents/a-evolve/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/14-agents/autogpt/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/14-agents/crewai/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/14-agents/langchain/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/14-agents/llamaindex/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/15-rag/chroma/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/15-rag/faiss/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/15-rag/pinecone/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/15-rag/qdrant/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/15-rag/sentence-transformers/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/16-prompt-engineering/dspy/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/16-prompt-engineering/guidance/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/16-prompt-engineering/instructor/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/16-prompt-engineering/outlines/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/17-observability/langsmith/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/17-observability/phoenix/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/18-multimodal/audiocraft/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/18-multimodal/blip-2/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/18-multimodal/clip/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/18-multimodal/cosmos-policy/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/18-multimodal/llava/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/18-multimodal/openpi/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/18-multimodal/openvla-oft/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/18-multimodal/segment-anything/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/18-multimodal/stable-diffusion/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/18-multimodal/whisper/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/19-emerging-techniques/knowledge-distillation/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/19-emerging-techniques/long-context/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/19-emerging-techniques/model-merging/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/19-emerging-techniques/model-pruning/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/19-emerging-techniques/moe-training/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/19-emerging-techniques/speculative-decoding/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/20-ml-paper-writing/academic-plotting/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/20-ml-paper-writing/presenting-conference-talks/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/21-research-ideation/brainstorming-research-ideas/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/21-research-ideation/creative-thinking-for-research/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/22-agent-native-research-artifact/compiler/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/22-agent-native-research-artifact/research-manager/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/ai-research/22-agent-native-research-artifact/rigor-reviewer/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/adaptive-interfaces/skills/colour-independence/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/adaptive-interfaces/skills/flexible-typography/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/adaptive-interfaces/skills/information-density/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/adaptive-interfaces/skills/preference-audit/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/adaptive-interfaces/skills/responsive-accessibility/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/adaptive-interfaces/skills/responsive-review/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/adaptive-interfaces/skills/simplified-views/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/adaptive-interfaces/skills/specify/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/adaptive-interfaces/skills/user-preference-respect/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/cognitive-accessibility/skills/adaptive-personalisation/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/cognitive-accessibility/skills/assess-load/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/cognitive-accessibility/skills/cognitive-load-assessment/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/cognitive-accessibility/skills/contextual-help-design/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/cognitive-accessibility/skills/error-prevention-recovery/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/cognitive-accessibility/skills/focus-attention-design/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/cognitive-accessibility/skills/memory-load-reduction/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/cognitive-accessibility/skills/plain-language-design/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/cognitive-accessibility/skills/review/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/cognitive-accessibility/skills/simplify/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/cognitive-accessibility/skills/wayfinding-navigation/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/design-research/skills/behavioural-analytics/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/design-research/skills/qual-quant-triangulation/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/inclusive-interaction/skills/audit/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/inclusive-interaction/skills/design-flow/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/inclusive-interaction/skills/feedback-and-status/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/inclusive-interaction/skills/gesture-alternatives/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/inclusive-interaction/skills/keyboard-navigation/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/inclusive-interaction/skills/keyboard-review/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/inclusive-interaction/skills/motion-sensitivity/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/inclusive-interaction/skills/multi-modal-input/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/inclusive-interaction/skills/touch-target-design/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/inclusive-interaction/skills/voice-interaction/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/visual-critique/skills/critique-affordance/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/visual-critique/skills/critique-brand-consistency/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/visual-critique/skills/critique-color/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/visual-critique/skills/critique-composition/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/visual-critique/skills/critique-information-density/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/visual-critique/skills/critique-typography/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/design-library/visual-critique/skills/critique-visual-hierarchy/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/pm-frameworks/intended-vs-implemented/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/pm-frameworks/opportunity-solution-tree/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/rl-env/generate-nemo-gym-env/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/rl-env/generate-openenv-env/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/rl-env/generate-ors-env/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/rl-env/generate-verifiers-env/{SKILL.md → ENTRY.md} +0 -0
- /package/skills/rl-env/rl-env-from-description/{SKILL.md → ENTRY.md} +0 -0
package/hooks/tezgah_policy.py
CHANGED
|
@@ -3,8 +3,10 @@
|
|
|
3
3
|
|
|
4
4
|
Placeholders are filled by tezgah_context.render():
|
|
5
5
|
{ROOT} - the configured tezgah root the session is in
|
|
6
|
-
{CONSULT_BIN}
|
|
7
|
-
|
|
6
|
+
{CONSULT_BIN}, {CODEGEN_BIN}, {RESEARCH_BIN}, {ROUTE_BIN}, {SKILL_BIN}... -
|
|
7
|
+
the stable path to the tezgah CLI BIN_TOOLS names: no host but
|
|
8
|
+
Claude puts ~/.config/tezgah/bin on PATH, so a bare name in
|
|
9
|
+
the text is a `command not found`
|
|
8
10
|
{ORX_BIN} - the stable path to the OpenResearch `orx` CLI, else bare `orx`
|
|
9
11
|
{OPEN_LINES} - the research lines already open, filled by
|
|
10
12
|
tezgah_context.context_for: that fact is about the repo the
|
|
@@ -25,6 +27,16 @@ sys.path.insert(0, os.path.dirname(os.path.realpath(__file__)))
|
|
|
25
27
|
import tezgah_research as tr # noqa: E402 (the layer's own line resolver)
|
|
26
28
|
from tezgah_paths import say # noqa: E402 (the language packs' contract words)
|
|
27
29
|
|
|
30
|
+
# The tezgah CLIs the injected text names, by placeholder. `render` fills each
|
|
31
|
+
# with `tezgah_paths.tool(<name>)`; the hookless copies (REPLY_LANG_HOOKLESS)
|
|
32
|
+
# with the installed path spelled from `~`.
|
|
33
|
+
BIN_TOOLS = {"{CONSULT_BIN}": "consult", "{CODEGEN_BIN}": "codegen",
|
|
34
|
+
"{RESEARCH_BIN}": "tezgah-research", "{ROUTE_BIN}": "tezgah-route",
|
|
35
|
+
"{SKILL_BIN}": "tezgah-skill", "{DESIGN_BIN}": "tezgah-design",
|
|
36
|
+
"{TASK_BIN}": "tezgah-task", "{PONY_BIN}": "tezgah-pony",
|
|
37
|
+
"{ADHD_BIN}": "tezgah-adhd", "{LESSONS_BIN}": "tezgah-lessons",
|
|
38
|
+
"{STATUS_BIN}": "tezgah-status"}
|
|
39
|
+
|
|
28
40
|
PONYTAIL = """
|
|
29
41
|
## Code style: ponytail (auto-armed, tezgah roots only)
|
|
30
42
|
|
|
@@ -45,7 +57,7 @@ On the FIRST non-trivial coding task of the session, load the full skill with
|
|
|
45
57
|
Skill(tezgah:ponytail) on Claude, or the installed `ponytail` skill on every
|
|
46
58
|
other host - the plugin name is part of the skill name on Claude, and this
|
|
47
59
|
summary is not the whole contract.
|
|
48
|
-
Level: `
|
|
60
|
+
Level: `{PONY_BIN} lite|full|ultra` (bare call shows it; stored in
|
|
49
61
|
~/.config/tezgah/ponytail.level, machine-wide until changed). The default `full`
|
|
50
62
|
adds nothing to this reminder; a non-default level is named in it every turn.
|
|
51
63
|
Off: user says "stop ponytail".
|
|
@@ -88,7 +100,7 @@ no closer), or when a rule would delete the answer itself (an options question
|
|
|
88
100
|
gets 2-4 ranked options with one line of trade-off each, recommendation first).
|
|
89
101
|
On the FIRST non-trivial answer of the session, read the full `i-have-adhd`
|
|
90
102
|
skill from the router - this summary is not the whole contract.
|
|
91
|
-
Off: `
|
|
103
|
+
Off: `{ADHD_BIN} off` (the kill switch file), or a repo's `.no-adhd`.
|
|
92
104
|
"""
|
|
93
105
|
|
|
94
106
|
SPEC = """
|
|
@@ -179,7 +191,8 @@ REPLY_LANG_HOOKLESS = dict(
|
|
|
179
191
|
"{GRANT_EXAMPLES}": "%s, %s" % (_EN["grant_examples"], _TR["grant_examples"]),
|
|
180
192
|
"{OPENER_SHORT}": _TR["opener_short"]},
|
|
181
193
|
**{"{%s_GLOSS}" % k.upper(): "tr: %s; " % _TR[k]
|
|
182
|
-
for k in ("decision", "access", "irreversible", "env")}
|
|
194
|
+
for k in ("decision", "access", "irreversible", "env")},
|
|
195
|
+
**{ph: "~/.config/tezgah/bin/" + name for ph, name in BIN_TOOLS.items()})
|
|
183
196
|
|
|
184
197
|
EXEC = """
|
|
185
198
|
## Reporting contract: executive mode (auto-armed, tezgah roots only)
|
|
@@ -260,11 +273,11 @@ rewrite it plainly.
|
|
|
260
273
|
**Merge authority: standing, not per-PR.** The user is not the approval step
|
|
261
274
|
on a merge. Review first with a FRESH reviewer (never my own read of my own
|
|
262
275
|
code), run the full suite, and if the review is clean and every test passes,
|
|
263
|
-
merge and close the plan yourself (`
|
|
276
|
+
merge and close the plan yourself (`{TASK_BIN} close NNN done`, which also
|
|
264
277
|
deactivates it and removes every merged worktree), then report the outcome. Nothing
|
|
265
278
|
goes back to the user: a failing test you fix, and a critical or major finding
|
|
266
279
|
left after round two you fix yourself, prove with a test and close with
|
|
267
|
-
`
|
|
280
|
+
`{TASK_BIN} close NNN done --resolved "<fix and test>"`. One review per plan, over its whole diff in the verification
|
|
268
281
|
phase; at most two rounds - only a confirmed critical or major finding opens
|
|
269
282
|
round two; a minor or suggestion one is fixed in the session without a new
|
|
270
283
|
round, or recorded fix-later only when it waits on a user decision ({DECISION});
|
|
@@ -273,10 +286,10 @@ after round two what is left is fixed by the session and closed with
|
|
|
273
286
|
A round spawns its reviewers in ONE message, one per dimension (correctness
|
|
274
287
|
and contract, security, tests and performance) or file group; a diff under 300
|
|
275
288
|
changed lines gets one reviewer. Per-task work gets tests, not a reviewer, and
|
|
276
|
-
`
|
|
289
|
+
`{TASK_BIN} review` refuses a third round.
|
|
277
290
|
|
|
278
291
|
**The process is yours: never hand a step back.** The orchestrator runs the
|
|
279
|
-
plan lifecycle itself - `
|
|
292
|
+
plan lifecycle itself - `{TASK_BIN} start`, every `phase` move, `review`,
|
|
280
293
|
`close`, the merge, and removing a slice's worktree once its branch is merged -
|
|
281
294
|
and never ends a reply with "run this command" or "shall I close it?" for a
|
|
282
295
|
step it can take. A process parameter the user did not set (a sample size, a
|
|
@@ -378,9 +391,9 @@ that slice writes - and declares its checkout on a `Worktree: <abs path>` line;
|
|
|
378
391
|
the gate refuses a sibling's write into those globs and a slice's write into
|
|
379
392
|
the main checkout when its brief declares a worktree. The integrator
|
|
380
393
|
owns the shared append points (CHANGELOG.md, MANIFEST, the citation baseline)
|
|
381
|
-
and merges in the order `
|
|
394
|
+
and merges in the order `{TASK_BIN} slice merge-plan` prints. Siblings message
|
|
382
395
|
each other (omp `write agent://<id>`, Claude `SendMessage`) only on an interface
|
|
383
|
-
or ownership change; status goes to the parent, and `
|
|
396
|
+
or ownership change; status goes to the parent, and `{TASK_BIN} slice board`
|
|
384
397
|
shows every sibling's lease. Only a single item - one file, one
|
|
385
398
|
bounded change, a strictly serial chain - is done directly; a list of
|
|
386
399
|
independent items is never worked one by one on the main thread, however small
|
|
@@ -388,13 +401,13 @@ each item is, and that holds at every phase: a plan's tasks, its acceptance
|
|
|
388
401
|
commands and the sources of a survey fan out the same way.
|
|
389
402
|
A slice that needs its own checkout: inside Orca (the session-start `Orca:`
|
|
390
403
|
line) create it with `orca worktree create --name <slug> --parent-worktree
|
|
391
|
-
active --json` and track it with `orca worktree ps --json` or `
|
|
404
|
+
active --json` and track it with `orca worktree ps --json` or `{STATUS_BIN}
|
|
392
405
|
--orca` - a raw `git worktree add` gets no card, terminal tracking or agent
|
|
393
406
|
status in Orca; outside Orca, `git worktree add`. Either way the brief names
|
|
394
407
|
absolute paths under that checkout. A writing slice commits `wip: <step>`
|
|
395
408
|
after each step, so a crash leaves it resumable. A stopped slice (quota, abort,
|
|
396
|
-
cut off) is resumed - `
|
|
397
|
-
silently absorbed inline; run `
|
|
409
|
+
cut off) is resumed - `{TASK_BIN} slice resume <id>` - or re-dispatched, never
|
|
410
|
+
silently absorbed inline; run `{TASK_BIN} slice reconcile --prune` before the
|
|
398
411
|
turn that merged slices ends.
|
|
399
412
|
Routing: `{ROUTE_BIN} "<brief>"` names the worker - tezgah-cheap, -standard or
|
|
400
413
|
-frontier, or the specialist whose whole job the brief is (tezgah-tester,
|
|
@@ -552,9 +565,9 @@ When the task is research and the OpenResearch CLI (`{ORX_BIN}`) is installed,
|
|
|
552
565
|
drive it through that CLI instead of ad-hoc local scripting. Load the operating
|
|
553
566
|
manual first: the `orx` skill if the host has it, otherwise run
|
|
554
567
|
`{ORX_BIN} skill` from the shell; then the module the method needs -
|
|
555
|
-
`{ORX_BIN} skill lit-review` for sources, `{ORX_BIN} skill experiment-tree
|
|
556
|
-
`{ORX_BIN} skill
|
|
557
|
-
rules are not style preferences - they
|
|
568
|
+
`{ORX_BIN} skill lit-review` for sources, `{ORX_BIN} skill experiment-tree`,
|
|
569
|
+
`{ORX_BIN} skill orx-results` and `{ORX_BIN} skill orx-logs` for a measured
|
|
570
|
+
line. On a measured line its cardinal rules are not style preferences - they
|
|
558
571
|
are what keeps results comparable, and breaking one silently invalidates the run:
|
|
559
572
|
never edit a node once a run has answered it (branch a child instead); the run
|
|
560
573
|
command and environment are a fixed contract identical on every node; vary the
|
|
@@ -569,6 +582,12 @@ table computed from other rows. The producer declares it - nothing can recover i
|
|
|
569
582
|
afterwards - and `{RESEARCH_BIN} check` refuses a claim that claims a wider scope
|
|
570
583
|
than the rows it rests on.
|
|
571
584
|
|
|
585
|
+
Narrowing a claim to what its evidence reaches, ending a hypothesis
|
|
586
|
+
`inconclusive`, and `{RESEARCH_BIN} close <slug> --limit "<what is left>"` are
|
|
587
|
+
normal outcomes of a line, never failures to avoid: a claim's certainty is
|
|
588
|
+
reported as `check` computes it, an exploratory one says so, and `check` warns on
|
|
589
|
+
universal or causal wording its evidence does not carry.
|
|
590
|
+
|
|
572
591
|
If the CLI is not installed, say the research tooling is unavailable and do not
|
|
573
592
|
improvise its protocol; fall back to a host subagent and say so, briefed with the
|
|
574
593
|
question verbatim, its in- and out-of-scope items and its method. Kill switch:
|
|
@@ -809,7 +828,7 @@ one small test); a one-liner needs none. A complex ask ships the lazy version
|
|
|
809
828
|
and names the fuller one in the same reply instead of stalling. Reply: code
|
|
810
829
|
first; write what was cut only when you consciously cut something the user asked
|
|
811
830
|
for, in at most three lines. In force from the first turn; levels
|
|
812
|
-
lite|full|ultra are set with `
|
|
831
|
+
lite|full|ultra are set with `{PONY_BIN}` and ride the per-turn reminder when
|
|
813
832
|
not `full`; read the full `ponytail` skill from the router for the level table
|
|
814
833
|
and examples. Off: "stop ponytail".
|
|
815
834
|
|
|
@@ -835,7 +854,7 @@ assumption and ask one diagnostic question. Before sending, delete an opening
|
|
|
835
854
|
sentence that announces, a closing one that recaps or asks "anything else?", any
|
|
836
855
|
by-the-way sidebar and any hedge that carries no real uncertainty. In force from
|
|
837
856
|
the first answer; read the full `i-have-adhd` skill from the router for the
|
|
838
|
-
examples. Off: `
|
|
857
|
+
examples. Off: `{ADHD_BIN} off`, or the repo's `.no-adhd`.
|
|
839
858
|
|
|
840
859
|
**Deliver the whole ask; never the shortcut.** The request defines the
|
|
841
860
|
deliverable: every named item is in scope until the user says otherwise, and the
|
|
@@ -988,7 +1007,10 @@ If the CLI is not installed, say the research tooling is unavailable and fall
|
|
|
988
1007
|
back to a host subagent briefed with the question verbatim, its in/out scope and
|
|
989
1008
|
its method. Off: `research-off`.
|
|
990
1009
|
|
|
991
|
-
**Product analysis: five axes, one evidence class per finding.**
|
|
1010
|
+
**Product analysis: five axes, one evidence class per finding.** Read the
|
|
1011
|
+
`product-analysis` skill for this ask (artifact shape, scorecard), `pm-frameworks`
|
|
1012
|
+
for an intended-vs-implemented gap or an Opportunity Solution Tree, and
|
|
1013
|
+
`feature-audit` when the ask is one feature. A product
|
|
992
1014
|
question - "analyse this product", "why is retention falling", "which feature
|
|
993
1015
|
next" - is analysis, not advice, and it covers every axis the product has, not
|
|
994
1016
|
only the code. Value: HEART's Goals -> Signals -> Metrics (a metric with no goal
|
|
@@ -1017,12 +1039,22 @@ would decide it. Establish first whether the behaviour is observable at all - "w
|
|
|
1017
1039
|
cannot see this yet" is the first finding, not a footnote. Every finding names one
|
|
1018
1040
|
evidence class - `user-verbatim`, `behaviour`, `ui-observed`, `code`, `external` -
|
|
1019
1041
|
and a finding without one is a question, not a finding. Run it as a research line
|
|
1020
|
-
(`{RESEARCH_BIN}`)
|
|
1021
|
-
skill for the artifact shape and the scorecard, and `feature-audit` for the
|
|
1022
|
-
layer-coherence matrices when the ask is one feature. A new capability built from
|
|
1042
|
+
(`{RESEARCH_BIN}`) and say what it did not look at. A new capability built from
|
|
1023
1043
|
data or an ask runs the `product-flow` skill: `{RESEARCH_BIN} next --topic <t>` is
|
|
1024
1044
|
the step source, and its first missing or due step is the next one. Off: `research-off`.
|
|
1025
1045
|
|
|
1046
|
+
**Design: UI work reads the design skills.** A UI ask - build, restyle, critique
|
|
1047
|
+
or audit a screen, form, dashboard or design system - reads the `design-contract`
|
|
1048
|
+
skill first: `{DESIGN_BIN} derive` writes `.tezgah/design-contract.md` from the
|
|
1049
|
+
repo's own tokens and `{DESIGN_BIN} check` measures the change against it.
|
|
1050
|
+
`design-library` holds the critique methods (cognitive load, visual hierarchy,
|
|
1051
|
+
accessibility); `analyze-app` reads the running UI, the only evidence for a UI
|
|
1052
|
+
claim; `feature-audit` covers a form, CRUD or admin flow across its layers; the
|
|
1053
|
+
`hallmark` skill builds a new page or restyles one (its own gate list plus
|
|
1054
|
+
`{DESIGN_BIN} slop --render` for the machine-made tells). The contract's
|
|
1055
|
+
`precedence` block decides which floor owns each key, and ours owns the facts.
|
|
1056
|
+
UI build work goes to a worker whose brief loads `design-contract`. Off: `design-off`.
|
|
1057
|
+
|
|
1026
1058
|
**No AI attribution, ever, on any host.** Nothing persisted or published may
|
|
1027
1059
|
name the assistant, model, vendor or "AI" as author/co-author/generator/helper:
|
|
1028
1060
|
commit/merge/tag messages, PR/issue/review comments, `git notes`, release
|
|
@@ -1047,14 +1079,14 @@ issue for one of its tools mid-session. Name a missing capability in one line,
|
|
|
1047
1079
|
use the documented fallback (grep/find, or the second opinion skipped), and carry
|
|
1048
1080
|
on with the task in hand. Tezgah maintenance is in scope when the user asks for
|
|
1049
1081
|
it, or when the repo IS the tezgah checkout. Before working a topic an
|
|
1050
|
-
installed skill covers, run `
|
|
1082
|
+
installed skill covers, run `{SKILL_BIN} <words>` and read only the range it
|
|
1051
1083
|
returns.
|
|
1052
1084
|
|
|
1053
1085
|
**Workspace: `.tezgah/` only.** Every per-project tezgah artifact - plans,
|
|
1054
|
-
research lines, analysis, lessons - lives under `<repo>/.tezgah/`,
|
|
1055
|
-
project
|
|
1056
|
-
|
|
1057
|
-
project root and never `git add -f`
|
|
1086
|
+
research lines, analysis, lessons - lives under `<repo>/.tezgah/`, ignored by
|
|
1087
|
+
the project, committed with `git -C .tezgah ...` - or, if the project tracks
|
|
1088
|
+
it, plain `git add`/`git commit`. Never create `plans/`, `research/` or
|
|
1089
|
+
`analysis/` at the project root and never `git add -f` under `.tezgah/`. Off:
|
|
1058
1090
|
`workspace-off`.
|
|
1059
1091
|
|
|
1060
1092
|
**Parallel by default: fan out independent items.** A request with two or
|
|
@@ -1076,7 +1108,7 @@ not grow. Every writing brief names its `Owns:` globs and declares its
|
|
|
1076
1108
|
checkout on a `Worktree: <abs path>` line, and siblings message
|
|
1077
1109
|
each other only on an interface or ownership change. Read-only slices need no
|
|
1078
1110
|
worktree. Once a slice's branch is merged,
|
|
1079
|
-
its worktree goes in the same turn - `
|
|
1111
|
+
its worktree goes in the same turn - `{TASK_BIN} close` removes every merged
|
|
1080
1112
|
one, and outside a plan `orca worktree rm --worktree path:<p>` (else `git
|
|
1081
1113
|
worktree remove <p>`) does it; never leave one for the user to find. Pick each agent by task class from
|
|
1082
1114
|
the specialists line; `{ROUTE_BIN}` names the tier for code work. Serialize
|
|
@@ -1089,7 +1121,7 @@ never fans out again. Off: `orchestrate-off`.
|
|
|
1089
1121
|
|
|
1090
1122
|
**Kill switches:** each one removes its own rule from this text, not just the
|
|
1091
1123
|
status mark. `~/.config/tezgah/`: `exec-mode.off`, `orchestrate-off`,
|
|
1092
|
-
`consult-off`, `research-off`, `ponytail-auto.off`, `adhd-off`, `spec-off`,
|
|
1124
|
+
`consult-off`, `research-off`, `ponytail-auto.off`, `adhd-off`, `spec-off`, `design-off`,
|
|
1093
1125
|
`reminder-off`, `verify-off` (the integrity rule: its prompt text, the shortcut
|
|
1094
1126
|
denials and the Stop gate), `task-off` (the task rule), `judge-off` (the
|
|
1095
1127
|
judgement seam: the triage, the docs fallback and the skill hint), `triage-off`,
|
|
@@ -1097,32 +1129,49 @@ judgement seam: the triage, the docs fallback and the skill hint), `triage-off`,
|
|
|
1097
1129
|
rule), `workspace-off` (the root plans/research/analysis refusal),
|
|
1098
1130
|
`pretooluse-off` (the whole gate);
|
|
1099
1131
|
per-repo `.no-ponytail`, `.no-adhd`, `.no-graph`, `.no-lessons`.
|
|
1100
|
-
The ponytail intensity level is not a switch: `
|
|
1132
|
+
The ponytail intensity level is not a switch: `{PONY_BIN} lite|full|ultra`.
|
|
1101
1133
|
"""
|
|
1102
1134
|
|
|
1103
1135
|
# Rules that are NOT paid every session. They are armed by task class at prompt
|
|
1104
1136
|
# time (hooks/tezgah_context.classify_prompt), because a session that never asks
|
|
1105
1137
|
# a structural or research question should not carry their text. Keys match the
|
|
1106
1138
|
# CORE_RULES labels in hooks/tezgah_context.py.
|
|
1107
|
-
CONDITIONAL_KEYS = ("spec", "consult", "research", "product", "
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
#
|
|
1111
|
-
#
|
|
1112
|
-
#
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1139
|
+
CONDITIONAL_KEYS = ("spec", "consult", "research", "product", "design", "graph",
|
|
1140
|
+
"fanout")
|
|
1141
|
+
|
|
1142
|
+
# The action the one-line repeat of an armed paragraph
|
|
1143
|
+
# (hooks/tezgah_context.armed_again) carries instead of a bare "Armed again":
|
|
1144
|
+
# that named a rule the session had to recall, so the second list of a session
|
|
1145
|
+
# was worked one item at a time, and the product skills were named on 3 turns of
|
|
1146
|
+
# a 40-turn session against 20 in fresh ones (plan 126). Each is the paragraph's
|
|
1147
|
+
# own clause, cut to one sentence; the product and design lines keep the
|
|
1148
|
+
# paragraph's condition, because the hint that armed them is a word match and a
|
|
1149
|
+
# misfire must not become an order to read a skill the ask has no use for.
|
|
1150
|
+
ARMED_ACTIONS = {
|
|
1151
|
+
"fanout": "count the independent items, spawn one subagent per item in "
|
|
1152
|
+
"ONE message, each the agent `{ROUTE_BIN}` names - a specialist "
|
|
1153
|
+
"by name, never the generic task agent - (each writing slice in "
|
|
1154
|
+
"its own worktree, absolute paths), and keep the main thread for "
|
|
1155
|
+
"integrating and verifying; the todo list is the step queue, so "
|
|
1156
|
+
"dispatch every ready step before any `wait`; a subagent does "
|
|
1157
|
+
"its own slice and never fans out again. The full rule is in the "
|
|
1158
|
+
"`tezgah-contract` skill.",
|
|
1159
|
+
"product": "if this ask is a product question, read the "
|
|
1160
|
+
"`product-analysis` skill now - `pm-frameworks` for an "
|
|
1161
|
+
"intended-vs-implemented gap or an Opportunity Solution Tree, "
|
|
1162
|
+
"`feature-audit` for one feature, `analyze-app` for the running "
|
|
1163
|
+
"app, `product-flow` for a new capability.",
|
|
1164
|
+
"design": "if this ask is UI work, read the `design-contract` skill now - "
|
|
1165
|
+
"`design-library` for critique methods, `analyze-app` for the "
|
|
1166
|
+
"running UI, `feature-audit` for a form or admin flow; UI build "
|
|
1167
|
+
"work goes to a worker whose brief loads `design-contract`.",
|
|
1168
|
+
}
|
|
1120
1169
|
|
|
1121
1170
|
# The always-on replacement for the conditional paragraphs: one line each so a
|
|
1122
1171
|
# host without a per-turn hook still knows the rule exists and where the full
|
|
1123
1172
|
# text lives.
|
|
1124
1173
|
POINTERS = """
|
|
1125
|
-
**On-demand rules (armed when the task class matches; full text in the `tezgah-contract` skill).** Spec-first for an underspecified or quality-only ask. A second opinion before a call that is hard to reverse or that one model would answer with unearned confidence. OpenResearch routing for research. Product analysis is a five-axis evidence task - value, usability (the running app, not the source), feasibility (a cited `path:line`), competition, and keep/fix/cut/bet triage - with one named evidence class per finding. The code graph for "who calls X" and "what breaks if Z changes". Two or more independent items fan out to parallel subagents in one message, one git worktree per writing slice.
|
|
1174
|
+
**On-demand rules (armed when the task class matches; full text in the `tezgah-contract` skill).** Spec-first for an underspecified or quality-only ask. A second opinion before a call that is hard to reverse or that one model would answer with unearned confidence. OpenResearch routing for research. Product analysis is a five-axis evidence task - value, usability (the running app, not the source), feasibility (a cited `path:line`), competition, and keep/fix/cut/bet triage - with one named evidence class per finding (`product-analysis`, `pm-frameworks`). The code graph for "who calls X" and "what breaks if Z changes". Two or more independent items fan out to parallel subagents in one message, one git worktree per writing slice. A UI turn reads the `design-contract` skill (`design-library`, `analyze-app`) and is judged against `.tezgah/design-contract.md`: `{DESIGN_BIN} derive` writes it from the repository's own tokens and its `check` measures a change against it.
|
|
1126
1175
|
"""
|
|
1127
1176
|
|
|
1128
1177
|
# The compact per-turn form, inside the <harness-reminder> envelope the hosts
|
package/hooks/tezgah_rank.py
CHANGED
|
@@ -44,12 +44,14 @@ STOPWORDS = frozenset(w for p in packs().values() for w in p["rank_stopwords"])
|
|
|
44
44
|
MIN_CAP_TEXTS = 10
|
|
45
45
|
|
|
46
46
|
|
|
47
|
-
def scores(query, texts, max_df=None):
|
|
47
|
+
def scores(query, texts, max_df=None, tokens=None):
|
|
48
48
|
"""Every text's BM25 score for `query`, in input order; 0.0 for a text that
|
|
49
49
|
shares no term with it. `rank` orders these; the research dedup reads them as
|
|
50
|
-
numbers (`tezgah_research.similarity_matrix`).
|
|
51
|
-
|
|
52
|
-
|
|
50
|
+
numbers (`tezgah_research.similarity_matrix`). `tokens` replaces `words` on
|
|
51
|
+
both sides (the skill search folds and stems its terms)."""
|
|
52
|
+
tokens = tokens or words
|
|
53
|
+
docs = [Counter(tokens(t)) for t in texts]
|
|
54
|
+
terms = set(tokens(query))
|
|
53
55
|
if not docs or not terms:
|
|
54
56
|
return [0.0] * len(docs)
|
|
55
57
|
avg = sum(sum(d.values()) for d in docs) / len(docs) or 1.0
|
|
@@ -68,12 +70,13 @@ def scores(query, texts, max_df=None):
|
|
|
68
70
|
return out
|
|
69
71
|
|
|
70
72
|
|
|
71
|
-
def rank(query, texts, k, max_df=None):
|
|
73
|
+
def rank(query, texts, k, max_df=None, tokens=None):
|
|
72
74
|
"""Indices of the `k` texts that score highest for `query`, best first.
|
|
73
75
|
|
|
74
76
|
Only a text sharing at least one term with the query is returned (score > 0),
|
|
75
77
|
so an unrelated query gets [] rather than an arbitrary order. `max_df` (a
|
|
76
78
|
fraction) drops STOPWORDS and, on MIN_CAP_TEXTS or more texts, every query
|
|
77
79
|
term found in more than that share of them."""
|
|
78
|
-
scored = [(-s, i) for i, s in enumerate(scores(query, texts, max_df))
|
|
80
|
+
scored = [(-s, i) for i, s in enumerate(scores(query, texts, max_df, tokens))
|
|
81
|
+
if s > 0]
|
|
79
82
|
return [i for _s, i in sorted(scored)[:k]]
|
package/hooks/tezgah_replay.py
CHANGED
|
@@ -598,10 +598,10 @@ def _replay_one(it, prefix, tg, seen, live_events):
|
|
|
598
598
|
reason = tg.decision(it["tool"], inp, it["cwd"], it["sid"], record=False)
|
|
599
599
|
rule = (rule_of("%s: %s" % (seen[-1], reason)) if seen else "unobserved") \
|
|
600
600
|
if reason else None
|
|
601
|
-
writers
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
601
|
+
# the writers the live race rule refuses on (`race_writers`), as the
|
|
602
|
+
# ledger ids the page has always shown (plan 117)
|
|
603
|
+
writers = sorted({w[0] for _path, others in tg.race_writers(
|
|
604
|
+
inp, it["sid"], it["cwd"]) for w in others})
|
|
605
605
|
out.update(replay="deny" if reason else "allow", rule=rule,
|
|
606
606
|
writers=writers)
|
|
607
607
|
except Exception as exc: # a crash is a result, never a silent allow
|