crucible-writer
First-draft writing assistant for Crucible-planned novels. Use when author has completed planning (crucible-planner) and outlining (crucible-outliner) and wants to write the actual prose. Handles scene-by-scene drafting, style matching, continuity tracking, and hallucination prevention. Triggers on "write my novel," "draft chapter X," "start writing from my outline," "help me write my book," or when user has Crucible outline and wants prose output. Works with any Crucible-planned story.
What this skill does
# Crucible Writer
Transform Crucible outlines into first-draft prose while maintaining style consistency, plot fidelity, and narrative quality.
## Critical Principles
**Context Window is Limited.** Never try to hold the entire novel in context. Load only what's needed for the current scene. Save constantly.
**The Outline is Law.** Never invent plot points, characters, or events not in the outline. If something seems missing, ASK the author—don't improvise.
**Style is Sacred.** Capture the author's voice early. Maintain it relentlessly. When in doubt, match the sample.
**Save Everything.** After every scene, update the story bible and save the draft. Progress must survive session breaks.
## Before Starting
**Read these references based on the writing phase:**
- `references/context-management.md` — Critical: Managing limited AI context
- `references/writing-process.md` — Scene-by-scene drafting approach
- `references/style-capture.md` — Learning and maintaining author voice
- `references/anti-hallucination.md` — Verification protocols
- `references/prose-craft.md` — Genre conventions and techniques
## Questioning Rules
1. **ALWAYS use AskUserQuestion tool** for all user questions (provides interactive UI)
2. **Max 4 options per question** (tool limit) + "Other" is automatic
3. **Max 4 questions per AskUserQuestion call**
4. **Reference user's story elements** by name (characters, places, etc.)
5. **Save state after every scene and chapter**
**CRITICAL: Use the AskUserQuestion tool, NOT plain text A/B/C options.**
## Required Inputs
Before writing can begin, gather:
1. **Complete Chapter Outline** (required) — The crucible-outliner output
2. **Crucible Summary Card** (required) — Quick reference for theme, characters
3. **Style Sample** (required) — 2,000+ words of author's existing prose OR detailed style preferences
4. **Constellation Bible** (as needed) — Character details
5. **World Forge** (as needed) — Setting details
## Workflow Overview
```
Phase 1: PROJECT SETUP
↓
Phase 2: STYLE CAPTURE
↓
Phase 3: CHAPTER WRITING (repeat for each chapter)
│
├─→ Load Context
├─→ Write Scene-by-Scene
├─→ Verify Against Outline
├─→ Update Story Bible
└─→ Save Progress
↓
Phase 4: COMPILE MANUSCRIPT
```
---
## Phase 1: Project Setup
### Initialize the Draft Project
```bash
python scripts/init_draft.py "./draft-project" "Book Title" --chapters 28 --target-words 150000
```
### Request Essential Documents
```
To begin writing, I need:
1. **Your complete chapter outline** (from crucible-outliner)
2. **The Crucible Summary Card** (for quick reference)
3. **A style sample** — either:
- 2,000+ words of your previous writing, OR
- Detailed description of your desired prose style
Please upload or paste these now.
```
### Confirm Writing Parameters
Present the extracted parameters, then use AskUserQuestion:
```
**Writing Parameters:**
Target words per chapter: [calculated from total ÷ chapters]
POV style: [First/Third Limited/Third Omniscient/Multiple]
Tense: [Past/Present]
Genre conventions to follow: [Cultivation fantasy / Epic fantasy / etc.]
Pacing preference: [Dense/Balanced/Breezy]
```
```json
{
"questions": [
{
"header": "Parameters",
"question": "Do these writing parameters look correct?",
"options": [
{"label": "Confirm settings", "description": "Proceed with these parameters"},
{"label": "Adjust settings", "description": "Modify one or more parameters"}
],
"multiSelect": false
}
]
}
```
---
## Phase 2: Style Capture
**CRITICAL:** Read `references/style-capture.md` before this phase.
### Analyze the Style Sample
Extract and document:
```
**STYLE PROFILE**
Sentence Structure:
- Average length: [Short/Medium/Long/Varied]
- Complexity: [Simple/Compound/Complex/Mixed]
- Rhythm pattern: [Staccato/Flowing/Varied]
Vocabulary:
- Register: [Formal/Informal/Mixed]
- Density: [Sparse/Rich/Purple]
- Unusual word frequency: [Low/Medium/High]
Dialogue:
- Tag style: [Minimal/Standard/Elaborate]
- Dialect/Voice distinction: [Strong/Moderate/Subtle]
- Subtext usage: [Heavy/Moderate/Light]
Description:
- Sensory focus: [Visual/Auditory/Tactile/Mixed]
- Metaphor density: [Sparse/Moderate/Rich]
- Setting integration: [Separate blocks/Woven in]
Interiority:
- Internal monologue: [Rare/Occasional/Frequent]
- Emotional showing vs. telling: [Show-heavy/Balanced/Tell-heavy]
Pacing:
- Scene transitions: [Abrupt/Smooth/Varied]
- White space usage: [Dense paragraphs/Frequent breaks]
**SIGNATURE ELEMENTS:**
[List 3-5 distinctive features of this author's voice]
```
### Confirm Style Profile
Present the style profile and sample, then use AskUserQuestion:
```
Based on your sample, here's your style profile:
[Show extracted profile]
**Sample of how I'll write in this style:**
[Write 200-word sample matching the style]
```
```json
{
"questions": [
{
"header": "Style",
"question": "Does this capture your writing voice?",
"options": [
{"label": "Captures my voice", "description": "Proceed with this style profile"},
{"label": "Needs adjustment", "description": "Specify what's off about the style"},
{"label": "Show another sample", "description": "See a different example in this style"}
],
"multiSelect": false
}
]
}
```
---
## Phase 3: Chapter Writing
### Pre-Chapter Context Loading
**For each chapter, load ONLY:**
1. **Current chapter outline** (from the full outline)
2. **Previous chapter summary** (from story bible—NOT full text)
3. **Active character states** (from story bible)
4. **Relevant foreshadowing** (plants that pay off OR are planted this chapter)
5. **Style profile** (from Phase 2)
**Do NOT load:**
- Full text of previous chapters (too large)
- Chapters not adjacent to current
- Planning documents not directly relevant
### Scene-by-Scene Writing
Each chapter contains multiple scenes. Write ONE SCENE AT A TIME:
```
**WRITING: Chapter [X], Scene [Y]**
From outline:
- Goal: [scene goal]
- Conflict: [what opposes]
- Turn: [how it shifts]
- Key moments: [listed]
- Plants/Payoffs: [listed]
Writing this scene now...
```
**After each scene:**
1. Show word count
2. Ask if author wants to review before continuing
3. Option to revise before moving on
### Scene Writing Protocol
For each scene, follow this sequence:
1. **State what you're writing** (goal, conflict, turn)
2. **Write the prose** (matching style profile)
3. **Verify against outline** (all required elements present?)
4. **Note any plants/payoffs** executed
5. **Update running word count**
### Chapter Completion
After all scenes in a chapter:
```
**Chapter [X] Complete**
Word count: [X,XXX]
Target: [X,XXX]
Status: [Under/On target/Over]
**Outline Verification:**
- [✓] All required scenes written
- [✓] All key moments included
- [✓] All plants executed
- [✓] All payoffs resolved (for this chapter)
- [✓] Chapter turn achieved
- [✓] Ending hook present
**Continuity Check:**
- [✓] Character states consistent
- [✓] Timeline consistent
- [✓] No new elements invented
```
Use AskUserQuestion for chapter approval:
```json
{
"questions": [
{
"header": "Chapter",
"question": "How would you like to proceed with this chapter?",
"options": [
{"label": "Approve & save", "description": "Save chapter and continue to next"},
{"label": "Review scene", "description": "Look at a specific scene in detail"},
{"label": "Revise", "description": "Make changes before saving"}
],
"multiSelect": false
}
]
}
```
### Update Story Bible
After each chapter, update the story bible to track progress and continuity:
```bash
python scripts/update_story_bible.py "./draft-project" --chapter X
```
**For complete command reference**, see [references/story-bible-commands.md](references/story-bible-commands.md).
Key commands:
- `--chRelated in Productivity
gitea-workflow
IncludedOrchestrate agile development workflows for Gitea repositories using the tea CLI. Use when working with Gitea-hosted repos and asking to 'run the workflow', 'continue working', 'what's next', 'complete the task cycle', 'start my day', 'end the sprint', 'implement the next task', or wanting guided step-by-step development assistance. Keywords: workflow, orchestrate, agile, task cycle, sprint, daily, implement, review, PR, standup, retrospective, gitea, tea.
microsoft-graph-gateway
IncludedRoute Microsoft Graph work in this workspace. Use when users want to read or write Outlook mail, calendar events, contacts, OneDrive or SharePoint files, Teams, Planner, To Do, users, groups, directory data, or arbitrary Microsoft Graph endpoints from VS Code. Prefer WorkIQ for common read scenarios. Use Microsoft Graph for write actions and gap-read scenarios that need exact Graph properties, filters, permissions, or endpoints.
copilotkit
IncludedUse when building with CopilotKit — setup, development, integrations, debugging, upgrading, or contributing. Routes to the appropriate specialized skill based on the task.
wordly-wisdom
IncludedProvides calibrated decision analysis using Charlie Munger-style multiple mental models, inversion, incentive mapping, circle-of-competence checks, misjudgment audits, second-order effects, and forecast updates. Use when the user asks for an oracle take, a hard call, a decision memo, a premortem, an outside view, a red-team, a sanity-check, what am I missing, think this through, or wants a strategy, hire, investment, plan, product, partnership, or major life choice analysed. Avoid for simple factual lookups or time-sensitive legal, medical, or market questions without fresh evidence.
swain-session
IncludedSession management and project status dashboard. Owns the full session lifecycle (start/work/close/resume), focus lane, bookmarks, worktree detection, and tab naming. Also serves as the project status dashboard — shows active epics, progress, actionable next steps, blocked items, tasks, GitHub issues, and recommendations. Worktree creation is deferred to swain-do task dispatch (SPEC-195). Triggers on: 'session', 'status', 'what's next', 'dashboard', 'overview', 'where are we', 'what should I work on', 'show me priorities', 'bookmark', 'focus on', 'session info'.
gandi
IncludedComprehensive Gandi domain registrar integration for domain and DNS management. Register and manage domains, create/update/delete DNS records (A, AAAA, CNAME, MX, TXT, SRV, and more), configure email forwarding and aliases, check SSL certificate status, create DNS snapshots for safe rollback, bulk update zone files, and monitor domain expiration. Supports multi-domain management, zone file import/export, and automated DNS backups. Includes both read-only and destructive operations with safety controls.