v1.3.0: style system, tests, hybrid search, /council, pre-mortem gate - #26
Merged
Merged
Conversation
…eep) - .claude/output-styles/direct.md rewritten from the upstream setup's current version, generalized: never-emit list, generic-filler test, long-form rules, artifact floors, run-end report shape. Adds keep-coding-instructions: true (without it a custom style drops Claude Code's built-in coding instructions) - hooks/hook-style-gate.py (Stop): flags em dashes used as connectors and paragraph walls in long replies. style_gate: warn (default) | block | off in config/user.config.yaml. Skips code, blockquotes, and dialogue dashes; fails open - all 325 em dashes swept out of the kit, so the instructions stop modelling the behaviour they ban; every changed line was checked to have held a dash - CONSTITUTION.md: style section is a pointer to direct.md (one source), adds the stopping rule, drops the Quality Standards duplicate (kept in analyst.md) - prompt-injection defender: also scans MCP tool output; skips the kit's own files (vault/, reports/, data/ are still scanned) - session-start hook: handover only when under 7 days old; notices for today's scheduled output, recent scheduled failures, MEMORY.md over 12KB, and missing config keys - scheduled runs export COMPABOB_RUN_CONTEXT=scheduled; hook-inject-now.sh tells the assistant nobody is watching - migrate-config.sh carries a new top-level key's comment block with it Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…teeth - skill descriptions name their neighbour both ways (morning-brief/tasks, reflect/memory-debt/handover, mcp-debug/system-audit, meeting-prep/post-call); chart-tufte is a post-build grader that visual-explainer now actually calls - /reflect records unapproved memory proposals as `- [ ]` items under `## Suggested Memory Updates` in vault/Daily, the exact format /memory-debt scans, so the loop between them works - frontmatter values containing ": " are quoted (two were invalid YAML) - comms-guard blocks running telegram/send.sh, no longer reading it - tests/: run-all.sh (syntax, shellcheck, JSON, no em dashes, hook behaviour, frontmatter, docs vs tree); hook-smoke.sh feeds sample calls to every hook - CI: runs tests/run-all.sh, re-runs setup to prove it keeps files, and adds a macOS job (bash 3.2 syntax, setup, launchd plist lint) - shellcheck-clean: `cd ... || exit 1` everywhere Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- memory-search: always builds the FTS5 keyword index; with Ollama it also stores vectors, and query.py merges both rankings with reciprocal rank fusion (meaning-level matches without losing exact names). Falls back to keywords when Ollama is down at query time. Chunks carry their heading path. - /council: strategy-advisor + first-principles + an assigned dissenter in parallel; the synthesis must answer each dissent point. Seats run on Sonnet to stay affordable; recall reads vault/Decisions from /log-decision. - hooks/hook-plan-premortem.py (PreToolUse ExitPlanMode): holds an irreversible, wide-blast, or multi-week plan until it has a pre-mortem from strategy-advisor. Reads the plan file named in this session's own transcript, never another session's plan. tests/test-plan-premortem.sh covers both ways. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Second half of the maintenance pass. v1.2.0 (fixes, simplification) is already on main.
What changes
style_gate: warnby default,block/offin the user config); all 325 em dashes removed from the kit; the constitution drops its duplicated style and quality sections and gains a stopping rule./reflectnow writes the format/memory-debtreads;/chart-tufteis called by/visual-explainer.tests/run-all.sh(syntax, shellcheck, hook behaviour, frontmatter, docs vs tree, pre-mortem gate); CI runs it and adds a macOS job./council(advisors + mandatory dissenter), pre-mortem gate on ExitPlanMode.Verified
bash tests/run-all.shpasses on each commit's tree (fresh checkout-index copy).🤖 Generated with Claude Code