Athernyx Prose Pipeline
Multi-model expansion system for audiobook-quality prose.
Quick Reference
Location: /root/athernyx/bookstore/pipeline/
Intake Guide: /root/athernyx/bookstore/INTAKE.md
How to Queue Work
cd /root/athernyx/bookstore/pipeline
python3 pipeline_daemon.py --queue /path/to/skeleton.md
python3 pipeline_daemon.py --status
Skeleton Format
**Page 1**
Scene location. Brief action.
Dialogue. "Sparse."
Key beat. Emotion hint.
*Italics for emphasis.*
Hook ending.
---
**Page 2**
...
Rule: 50-150 words per page. Beats, not prose. Let the pipeline expand.
Model Stack (Free Tier)
| Role | Model | Purpose |
|---|---|---|
| Expander | Cerebras qwen-235b | Raw expansion |
| Critic | Gemini 2.5-flash | Identify violations |
| Rewriter | Groq qwen3-32b | Fix issues |
| Judge | Gemini 2.5-flash | Quality gate |
~4-7 API calls per page. ~60-90 seconds per page.
What the Pipeline Catches
- Camera drift — internal narration ("he felt sad")
- Subtext murder — over-explaining emotions
- Melodrama — unearned cosmic significance
- Generic imagery — "like a vice" → world-specific
- AI-isms — "couldn't help but", "a palpable thing"
Files
| File | Purpose |
|---|---|
pipeline_v2.py | Main orchestrator |
pipeline_daemon.py | PM2 overnight runner |
chapter_processor.py | Batch processing |
prompts/eyuun_voice.md | Narrator voice |
prompts/critic.md | Issue identification |
prompts/rewriter.md | Surgical fixes |
prompts/judge.md | Scoring rubric |
prompts/simile_bank.md | World-specific imagery |
Context Template
Every skeleton needs this context block for best results:
## Context
**Volume:** [Title]
**Chapter:** [N] — [Title]
**Era:** Year 600
### Characters
- **Kael**: Cyan frequency. Static + Lightning. "Huh."
- **Veyra**: Blue frequency. Star + Breeze. Scowl is armor.
### Location
[Where is the scene?]
### Scene Purpose
[What's the emotional/narrative goal?]
PM2 Service
pm2 status pipeline-daemon
pm2 logs pipeline-daemon --lines 50
pm2 restart pipeline-daemon
Created: 2026-01-18 | Session: Pipeline v2 Build