From d50c5a56ae0ae2667afce51a2318c3d228c821c5 Mon Sep 17 00:00:00 2001 From: Parfii-bot Date: Wed, 22 Apr 2026 13:49:57 +0800 Subject: [PATCH] feat(blocks): 5 cognitive mode blocks + 2 manifest wirings MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - mode-skeptic (17 LOC) — doubt everything, E1/E2 grade evidence - mode-devils-advocate (16) — steel-man the opposite - mode-minimalist (18) — what is unnecessary? - mode-maximalist (19) — 10x thinking for broad scope - mode-first-principles (21) — derive from invariants kei-critic += skeptic + devils-advocate kei-architect += first-principles Docs: _blocks/README.md + README.md paragraph under Behavioral blocks --- README.md | 29 +++++++++++++++++++++++ _blocks/README.md | 40 ++++++++++++++++++++++++++++++++ _blocks/mode-devils-advocate.md | 16 +++++++++++++ _blocks/mode-first-principles.md | 21 +++++++++++++++++ _blocks/mode-maximalist.md | 19 +++++++++++++++ _blocks/mode-minimalist.md | 18 ++++++++++++++ _blocks/mode-skeptic.md | 17 ++++++++++++++ _manifests/kei-architect.toml | 7 +++--- _manifests/kei-critic.toml | 2 ++ 9 files changed, 166 insertions(+), 3 deletions(-) create mode 100644 _blocks/README.md create mode 100644 _blocks/mode-devils-advocate.md create mode 100644 _blocks/mode-first-principles.md create mode 100644 _blocks/mode-maximalist.md create mode 100644 _blocks/mode-minimalist.md create mode 100644 _blocks/mode-skeptic.md diff --git a/README.md b/README.md index a6fa317..339dfcd 100644 --- a/README.md +++ b/README.md @@ -112,6 +112,33 @@ Profile resolution lives in `_primitives/MANIFEST.toml` — one `[primitive. **Re-install disclaimer:** `install.sh` is idempotent for clean state but **overwrites kit-owned `_blocks/`, `_primitives/`, `_bridges/`, `_templates/`, `_assembler/`, `hooks/`, and `skills/` on re-run** — local modifications under those directories are backed up to `.bak-TIMESTAMP/` (or, for shared hook files, to `.bak-TIMESTAMP`). User-owned `_manifests/*.toml` are never overwritten. +## Runtime hook controls + +Every kit-shipped hook (v0.14.2+) honours two env vars so you can silence noise or isolate a failure without editing `~/.claude/settings.json`: + +- `KEI_DISABLED_HOOKS` — comma- or space-list of hook base names (no `.sh`), e.g. `KEI_DISABLED_HOOKS=site-wysiwyd-check,milestone-commit-hook`. The literal `all` disables every hook. +- `KEI_HOOK_PROFILE` — one of `full` (default), `advisory-off`, `minimal`, `off`. + +| Profile | What stays on | +|---|---| +| `full` (default) | Every hook | +| `advisory-off` | Disables pure-stderr advisories (`recurrence-suggest`, `citation-verify`, `error-spike-detector`, `milestone-commit-hook`). Safety gates stay on. | +| `minimal` | Only safety-critical: `no-github-push`, `genesis-leak-guard`, `no-hand-edit-agents`, `secrets-guard`, `assemble-validate`, `git-pre-commit-genesis`. Everything else off. | +| `off` | Every hook off — escape hatch for debugging hook interactions. | + +```bash +# One-session disable of a single noisy hook: +export KEI_DISABLED_HOOKS=site-wysiwyd-check + +# Permanent quieter profile (paste into ~/.zshrc / ~/.bashrc): +export KEI_HOOK_PROFILE=advisory-off + +# Full re-enable: +unset KEI_DISABLED_HOOKS KEI_HOOK_PROFILE +``` + +Interactive wizard: run `/hooks-control` — click-only picker that shows current state and emits the `export` / `unset` command for you to paste. The skill never executes anything itself. + ## What you get | Category | Count | Examples | @@ -127,6 +154,8 @@ Profile resolution lives in `_primitives/MANIFEST.toml` — one `[primitive.