brenner
Made by JeffBrenner Bot CLI for research sessions. Use when in your brenner_bot repo, managing hypotheses, searching corpus, or running multi-agent sessions.
Works With
Quality and Utility come from canonical skill metadata. Community ratings appear separately as stars when subscriber reviews exist.
Subscribe to download
Public previews are available, but downloads, CLI sync, and premium content require an active subscription.
Sign In to Subscribe- Full skill content with deterministic versioning
- CLI sync + local search index
- Access to Jeffrey’s premium library
Save to your account
Saved skills live in your cloud list. Run jsm sync on each machine to pull them locally.
What's New with this Skill
2Updates, enhancements, and release notes for this skill.
Updated: brenner, rewritten to match the CLI brenner_bot actually ships
Several commands, flags, lint rules and delta fields in the brenner skill did not exist in brenner_bot, so an agent following it hit errors or produced deltas the compiler skipped. The skill now documents brenner_bot as of commit 8ad044c: brenner lint, the real rule IDs, the delta fence and subject prefix, session nudge, and all 17 operators.
- brenner lint <artifact.json> replaces the nonexistent brenner artifact lint; session compile already runs the linter
- LINTING-RULES.md now lists the 40 rule IDs the linter enforces (EM, EH, ET, EA, EC and variants) instead of an invented HYP-* table; EH-003 is the missing-third-alternative rule
- Deltas need a fence tagged delta and a DELTA[role]: subject prefix, or compile skips them; fields are section and target_id
- session nudge sends an operator card to the agents; roles come from --role-map, and there is no --mode tribunal
- 17 operators with symbols and tags, and transcript quotes checked verbatim against the corpus by section number
- Prediction lock and the hypothesis arena are documented as the web-app modules they are, not as CLI commands
Every command, flag, field name, rule ID and count in the skill was checked against the brenner_bot source and corrected where it was wrong.
- Linting. The command is
brenner lint <artifact.json> [--json], notbrenner artifact lint. It exits 1 when an error-level rule fires, andsession compilealready lints.references/LINTING-RULES.mdnow lists the 40 rule IDslintArtifactenforces (EM, EH, ET, EA, EC and the warning/info variants, plus ER-REF-001..005), with the spec-only IDs listed separately as review guidance. The old HYP-* table and the "50+ rules" count were invented. Th
New: Brenner Bot, research sessions that kill hypotheses instead of confirming them, with a 7-section artifact and a rule-based linter
Exclusion beats confirmation. Design experiments to kill hypotheses, not prove them; a theory that survives elimination is stronger than one with supporting evidence. Brenner Bot is the CLI for that workflow: a corpus of 236 sections with §n anchors, a 7-section artifact schema, an artifact linter (40 enforced rules; the spec lists 75), 17 operators (such as Exclusion-Test, Object-Transpose and Theory-Kill), multi-agent threaded sessions, and deterministic delta merging.
- Exclusion beats confirmation: design tests to kill hypotheses, not confirm them. A theory that survives elimination is stronger than one with supporting evidence
- Corpus first: brenner corpus search "<topic>" against the 236-section corpus, then brenner excerpt build --sections N,M,P produces the cited context. Always build the excerpt before starting a session
- 7-section artifact schema is the contract: research_thread, hypothesis_slate (must include "both wrong" third alternative), predictions_table, discriminative_tests, assumption_ledger, anomaly_register, adversarial_critique
- Brenner's operator library: 14 core and 3 derived operators, each with a symbol and canonical tag, such as Object-Transpose, Recode, Exclusion-Test, Chastity-vs-Impotence Check, Scale-Check and Theory-Kill
- brenner lint artifact.json checks the compiled artifact against rule IDs that combine severity (E, W, I) and section (M metadata, R research thread, H hypotheses, P predictions, T tests, A assumptions, C critiques): 40 enforced, 75 in the linter spec. EH-003 flags a missing third alternative
- Deterministic delta merge: agents emit {operation: ADD|EDIT|KILL, section, target_id, payload, rationale} fenced JSON blocks. The compiler sorts them by timestamp and applies them in order
- Thread ID is the join key across Agent Mail, ntm, artifacts, and beads. Format: RS-{YYYYMMDD}-{slug} for research, bead ID directly for engineering work
- Doctor first: brenner doctor --skip-ntm --skip-cass --skip-cm --json runs a minimal toolchain check before a session
- Composes with agent-mail (the threaded coordination), ntm (multi-agent tmux orchestration), cass (session archaeology), and br (engineering work tracking via beads)
Most research sessions drift. You start with a question, find something interesting, follow it, lose the original question, and come away with notes that don't compose. Brenner Bot fixes the structure: every session starts from a corpus excerpt with explicit §n citations, runs as a threaded conversation between named agents, ends in a 7-section artifact, and gets validated by brenner lint.