KeiSeiKit-1.0/_blocks/README.md
Parfii-bot d50c5a56ae feat(blocks): 5 cognitive mode blocks + 2 manifest wirings
- 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
2026-04-22 13:49:57 +08:00

2.5 KiB
Raw Blame History

_blocks/ — Composable Agent Content

Each .md file in this directory is a block: a single-concern, standalone-readable snippet that any agent manifest can include via its blocks = [...] list. The _assembler concatenates selected blocks + manifest metadata into the final agent .md that Claude Code loads.

Blocks are grouped by prefix:

Prefix Purpose
baseline, evidence-grading, memory-protocol Obligatory base — every manifest must include these
rule-* Discipline rules (pre-dev-gate, test-first, error-budget, double-audit, math-first)
mode-* Cognitive mode blocks (see below)
stack-* Language / framework constraints (Rust Axum, React Vite, Swift SPM, …)
deploy-* Deployment target rules (Modal, AWS EC2, Cloudflare, Hetzner, …)
api-* External API conventions (Apify, fal.ai, ElevenLabs, Anthropic, …)
db-* Database rules (Postgres, SQLite, Drizzle, sqlx, migrations)
auth-*, security-*, obs-*, ci-*, test-*, scraper-*, domain-*, docs-* Domain-specific rules

Cognitive mode blocks

Composable behavioural skews. Add any combination to a manifest's blocks list to stack the mode. Modes compose — e.g. mode-skeptic + mode-minimalist yields an adversarial pruner.

Block Purpose
mode-skeptic.md Doubt the conclusion until proved; flag claims without E1/E2 grade
mode-devils-advocate.md Steel-man the opposite; name the strongest objection before agreeing
mode-minimalist.md Prefer deleting over adding; justify every addition against existing code
mode-maximalist.md Explore 10× scope; return both maximum and minimum bounds; only when user invokes exploration
mode-first-principles.md Derive from invariants; cite the physical / mathematical constraint, not "best practice"

Adding a new block

  1. Pick a stable prefix (existing category or a new one documented here).
  2. One concern per file. 2050 LOC target, <200 LOC hard cap (Constructor Pattern).
  3. Imperative voice ("Do X" not "the agent should do X") — these land verbatim in agent prompts.
  4. Standalone-readable — do not assume sibling blocks are present. Cross-references OK, hard dependencies not.
  5. Reference from a manifest's blocks = [...] list; the assembler validates existence.

Ownership

Blocks are kit-ownedinstall.sh overwrites _blocks/ on re-run, backing up local edits to _blocks.bak-TIMESTAMP/. User-owned content belongs in _manifests/*.toml (which are never overwritten).