Repository navigation
v1.3.0: style system, tests, hybrid search, /council, pre-mortem gate
The style system, a test suite, and three features from the setup this kit is
distilled from: hybrid memory search, /council, and a pre-mortem gate for
high-stakes plans.
Before you update: the new style check runs after every reply. It starts in
warn mode, which only shows a one-line note; set style_gate: block or off
in config/user.config.yaml (the update adds the key for you). Most kit text
files changed in this release, because every em dash was removed from them, so
update.sh will ask you to merge any kit file you edited yourself.
git diff --stat v1.2.0 v1.3.0 lists them.
Added
- Style check hook (
hooks/hook-style-gate.py, runs when a reply ends):
flags em dashes used as connectors and paragraphs over about 700 characters
in long replies. Code, blockquotes, and dialogue dashes are ignored.
style_gate: warn | block | off. /councilskill: two advisors and a dissenter assigned to argue the
other side, in parallel; the recommendation must answer each objection. For
decisions that are hard to reverse.- Pre-mortem gate (
hooks/hook-plan-premortem.py): when you approve a plan
that is irreversible, touches many people, or commits weeks of work, it asks
for a pre-mortem fromstrategy-advisorfirst. - Hybrid memory search: keyword search always, plus search by meaning when
Ollama is running, merged into one ranking. Results show the heading path
they came from. Rebuild the index once with/index-memoryafter updating. - Session-start notices: today's scheduled brief, scheduled-run failures
from the last week, aMEMORY.mdover 12KB, and config keys a kit update
added. - Test suite:
bash tests/run-all.shruns everything CI runs (syntax,
shellcheck, hook behaviour, frontmatter, docs versus tree). CI adds a macOS
job.
Changed
- Direct output style rewritten with what the upstream setup learned about
brevity: cut whole categories of content, a filler test for every sentence,
bullet-first reports, floors for outward messages and corrections. It now
keeps Claude Code's built-in coding instructions (keep-coding-instructions). - The constitution is shorter: style rules live only in the output style,
the data-quality checklist only in theanalystagent. Adds a stopping rule:
keep going until the task's finish line unless you need the user. - Prompt-injection defender also scans MCP tool output (mail, browser,
search) and skips the kit's own files. - Handover notes older than a week are no longer loaded into every new
session; the assistant is told the note exists instead. - Scheduled runs tell the assistant nobody is watching, so it does not stop
to ask questions. - Skill descriptions name their neighbour both ways (for example
/morning-briefand/tasks), so the right one gets picked. /reflectrecords unapproved memory proposals in today's daily note in
the format/memory-debtreads, so the two skills finally connect./chart-tufteis a grader that/visual-explainercalls after building
a chart.- No em dashes anywhere in the kit.
Fixed
comms-guardblocked readingmodules/telegram/send.sh, not just
running it.- Two skill descriptions were invalid YAML (an unquoted colon).
Full changelog: v1.2.0...v1.3.0