← Compound WritingCONTENT HISTORY

Update to Compound Writing

Snapshot Sep 30, 2026 · 23:16 UTC · version 2.4.1

Collection source: not recorded for this historical snapshot.

WHAT CHANGED · RULE-BASED ANALYSIS

First saved snapshot

No earlier snapshot is available to establish a change.

Compare saved observations

Download comparison JSON
Full technical diff · 0 changed fields
Full snapshot data
{
  "name": "cw-setup-project",
  "description": "Create or initialize a durable writing home with VOICE.md, STYLE.md, examples/, and drafts/. Use when Scribe identifies a first-time writer with no established writing context after resolving the target, or when the user explicitly asks to set up, scaffold, initialize, or migrate a self-contained writing folder.",
  "included_files": [
    {
      "relative_path": "agents/openai.yaml",
      "size_in_bytes": 219
    },
    {
      "relative_path": "scripts/create_project.py",
      "size_in_bytes": 2679
    }
  ],
  "skill_md_contents": "---\nname: cw-setup-project\ndescription: Create or initialize a durable writing home with VOICE.md, STYLE.md, examples/, and drafts/. Use when Scribe identifies a first-time writer with no established writing context after resolving the target, or when the user explicitly asks to set up, scaffold, initialize, or migrate a self-contained writing folder.\n---\n\n# Set Up A Writing Home\n\nCreate one portable folder that can travel independently of the plugin and contains the context and working surfaces Compound Writing needs.\n\n## Resolve The Target\n\n- Use the path or folder name the user supplied.\n- If the destination is unclear and choosing it would create the writing home in a materially different place, ask for the path.\n- Read existing workspace instructions before writing.\n- Never create writing-home files inside the installed plugin or runtime cache.\n\n## Create The Writing Home\n\nCreate this exact minimum structure:\n\n```text\nwriting-home/\n├── VOICE.md\n├── STYLE.md\n├── examples/\n│   └── README.md\n└── drafts/\n    └── README.md\n```\n\nRun the bundled creator by resolving it relative to this `SKILL.md`; do not assume the user's working directory is the plugin root:\n\n```bash\npython3 \"<plugin-root>/skills/cw-setup-project/scripts/create_project.py\" \"/path/to/writing-home\"\n```\n\nThe script copies the canonical templates from `defaults/project-template/`. It may create a new folder or populate an empty folder. It refuses to modify a non-empty folder by default and never overwrites files.\n\nFor an existing folder, inspect it first. If the user explicitly wants the Compound Writing structure added, run:\n\n```bash\npython3 \"<plugin-root>/skills/cw-setup-project/scripts/create_project.py\" \"/path/to/writing-home\" --add-missing\n```\n\n`--add-missing` creates only absent items. Preserve every existing file and convention.\n\n## Optional Audience Guide\n\nWhen the writer asks to establish audience context and no maintained shared guide is already named, add `--with-audience` to the creator command. For an existing writing home, combine it with `--add-missing` after inspection. This adds the generic `AUDIENCE.md` template without overwriting any existing file.\n\nIf a shared audience guide already governs the work, reference that guide from project instructions instead of creating a duplicate. A local `AUDIENCE.md` is optional; do not add one or interrupt writing merely because it is missing. Use the audience resolution rules in `../../references/context-contract.md`.\n\n## Keep The Split Clear\n\n- `VOICE.md` answers: **How should the sentences sound?** Put syntax, diction, and tone here, including cadence, rhythm, register, punctuation, and verbal tics.\n- `STYLE.md` answers: **What must the article do, contain, and prove?** Put argument, evidence, article structure, substantive standards, audience promise, and publication-readiness criteria here.\n- Optional `AUDIENCE.md` answers: **Who are we writing for, and what may engage them?** Keep reader situations, knowledge, wants, interests, resistance, and their evidence here; use a named shared guide when one exists.\n- `examples/` holds curated positive and negative examples. Examples are evidence for the written rules, not rules by themselves.\n- `drafts/` holds one folder per piece: `drafts/<piece-slug>/`. Keep that piece's notes, research, outline, draft versions, and reviews together.\n\nNever put argument, evidence, structure, or publication-readiness rules in `VOICE.md`. Never put word choice, sentence construction, cadence, or tone rules in `STYLE.md`. Split mixed feedback into separate rules.\n\nDo not create `TASTE.md`, `context.md`, `published/`, or `.status.yaml` as part of setup.\n\n## Migrate A Legacy Project\n\nWhen `TASTE.md` exists:\n\n1. Read it with the existing project instructions.\n2. Route syntax, diction, and tone rules to `VOICE.md`.\n3. Route argument, evidence, article structure, substantive standards, and publication-readiness rules to `STYLE.md`.\n4. Route durable reader knowledge to a maintained `AUDIENCE.md` when requested; use an existing shared guide rather than creating a duplicate. Flag mixed or conflicting guidance.\n5. Show the migration summary before changing ambiguous or high-authority guidance.\n6. Preserve `TASTE.md` until the user explicitly approves its deletion or archival.\n\n## Begin The Guides\n\nAfter first-run setup, begin `cw-onboarding` so the writer can add a useful first version of both guides from a short conversation, existing writing, or the work already in progress. Do not block use of the writing home on completing either profile.\n\nWhen the user invoked `cw-setup-project` manually for an additional folder, offer onboarding rather than assuming they want a new profile immediately.\n\n## Handoff\n\nReport the writing-home path, the created surfaces, any optional audience guide or shared source, anything skipped because it already existed, and the next useful step.\n"
}

SHA-256: 2cbf8abdec8bc8cd5df5cf3a0340bd723d5eaf38e590a423dabc3a5599f9d950