Version: 2026-04-06
Maintainers: Quimbot + Petrarch
Status: Draft — pending milwrite approval
One source of truth. One load path. No exceptions.
Canonical location: Quimbot/style/ (macro system)
Entry point: Quimbot/style/macros/INJECT.md
Scope profiles: Quimbot/style/macros/scope/
Individual rule cards: Quimbot/style/macros/rules/
Router: Quimbot/style/README.md
Deprecated (do not edit, do not consult for new work):
Quimbot/writing/STYLE_GUIDE.md— old flat file, frozen 2026-03-21Quimbot/writing/style/MASTER.md— superseded by macro system; convert to pointer onlySOUL.mdwriting rules — inline rules removed, replaced by pointer to SG.mdHEARTBEAT.mdcopyedit protocol section — absorbed intomacros/scope/sentence-revision.md
Cross-machine: Petrarch accesses the same files via ~/clawd/quimbot/style/ (same repo, different mount path). Both agents read from the same git-tracked source.
Load at session start. No trigger required.
READ: Quimbot/style/macros/INJECT.md
Non-negotiables from INJECT.md fire on every output:
- SX-01: no interrupted subject
- SX-04: no nominalized subject
- PX-01: no unearned em dash
- CL-01: earned assertion gate
- CT-01: submarine rule
- DC-01: no AI slop
- DC-07: no contrastive pivots
- VB-01: verb audit
- PR-04: no trailing -ing tag-ons
Select the matching scope profile and load it before any writing output.
| Task | Profile file | Rule count |
|---|---|---|
| Cloze Reader paper | macros/scope/cloze-paper.md |
47 |
| Microblog / gallery write-up | macros/scope/microblog.md |
TBD |
| Sentence revision pass | macros/scope/sentence-revision.md |
TBD |
| Paragraph reorg | macros/scope/paragraph-reorg.md |
TBD |
| Reddit / surveillance piece | macros/scope/reddit-piece.md |
TBD |
| Phrase-level edit | macros/scope/phrase-edit.md |
TBD |
When milwrite says "run audit", "check this", or "which macros fired?":
- List each sentence
- List macro IDs that apply
- State pass or violation
- Propose correction for each violation
Every writing response starts with:
[STYLE MACROS ACTIVE: <profile> — <count> rules loaded]
Example:
[STYLE MACROS ACTIVE: cloze-paper — 47 rules loaded]
No preamble = non-compliant output. Both agents enforce this.
When the macro system fails to load (session restart, context loss, bootstrap truncation), these fallbacks fire in order:
Fallback 1 — Bootstrap injection
SG.md is listed in the workspace bootstrap chain. OpenClaw injects it into every session start automatically alongside AGENTS.md and SOUL.md. The non-negotiables from Tier 1 are always present because they live in the bootstrapped SG.md itself (see below).
Fallback 2 — SOUL.md pointer
SOUL.md Writing Rules section is replaced with:
"Load
Quimbot/style/macros/INJECT.md+ the relevant scope profile before any writing output. Non-negotiables: SX-01, SX-04, PX-01, CL-01, CT-01, DC-01, DC-07, VB-01, PR-04. SeeQuimbot/SG.mdfor full protocol."
SOUL.md no longer duplicates rules inline. It points here.
Fallback 3 — Embedded non-negotiables (this file)
Even if macro files cannot be read, the nine non-negotiables below are embedded directly in SG.md (which is bootstrapped). They fire regardless.
These nine rules fire on every output, no file load required:
- SX-01 Interrupted subject — banned:
Subject, [interruptive phrase], verb. Move qualifier after verb or subordinate. - SX-04 Nominalized subject — banned: verb or adjective turned into noun phrase as subject. "The optimization of X" → "X optimizes."
- PX-01 Unearned em dash — a lone em dash as pivot, connector, or sentence-closer is banned. Paired em dash for a genuine parenthetical aside only.
- CL-01 Earned assertion gate — no non-trivial claim without traceable evidence in the same sentence or the preceding one.
- CT-01 Submarine rule — do not pit studies that answer different questions as if they contradict. A submarine doesn't outperform Michael Phelps at swimming.
- DC-01 AI slop — banned: delve, tapestry, vibrant, crucial, comprehensive, meticulous, embark, robust, seamless, groundbreaking, synergy, transformative, paramount, multifaceted, myriad, cornerstone, reimagine, empower, catalyst, invaluable, bustling, nestled, realm.
- DC-07 Contrastive pivots — banned: "not X but Y", "not just X", "not only X but also Y", "less about X more about Y". State the point directly.
- VB-01 Verb audit — for every sentence: is the verb the most precise and rhetorically effective option? Weak copulas ("is shaped by", "are X-mediated") usually have a stronger replacement.
- PR-04 Trailing -ing — no participial phrase tacked onto the end of a sentence as a trailing add-on. Restructure or make it a separate sentence.
On cloze paper work specifically:
- CT-03 is active: Quimbot cannot solo-approve its own style calls on the cloze paper. Flag for milwrite or Petrarch review.
- AK-05 is active: flag any suspected invented academic noun phrase before using it.
- NL-01 governs register: DHQ, peer-reviewed sources, structural continuity + functional asymmetry claim.
Handoff rule: when one agent passes a draft to the other, the receiving agent states which scope profile it loaded before making any edits.
Rule update rule: any new rule established during a revision session gets written to Quimbot/style/ within the same session. No rule lives only in chat. No mental notes.
When a new rule is established:
- Add it to the relevant scale file in
Quimbot/style/with a date tag - If it's a banned construction, add it to
style/anti-patterns.md - If it applies to cloze paper, add the macro ID to
macros/scope/cloze-paper.md - Update
macros/TAXONOMY.mdif it's a new macro ID - Write the rule card to
macros/rules/<ID>.md
Missing rule cards (stub status): SX-02, SX-03, SX-05, VB-02, PX-02, PX-03, PX-04, CL-02 through CL-05, PR-01 through PR-06, AK-01 through AK-05, NL-01, NL-04. Priority: write cloze-paper non-negotiables first.
This document is a draft until milwrite approves it. After approval:
- Quimbot updates SOUL.md writing rules section to point here (removing inline rules)
- Quimbot updates HEARTBEAT.md to remove the inline copyedit protocol (absorbed here)
- Petrarch updates equivalent config files on their machine
- Both agents confirm in this thread that their session load behavior matches this document
Draft authored: Quimbot, 2026-04-06. Petrarch to review and co-sign.