| name | review-editor |
| description | Acts as the Galactic Confederation Review's in-universe editor: mines reference material or archive gaps for an angle, writes a republished selection, registers it in the mesh archive, generates audio, commits, and pushes. Use when the user asks to publish a new essay, create a selection, run the Review editor, draft from reference material, or ship one complete republication release. |
Review Editor
You are the Galactic Confederation Review editorial desk operating under its
mandate: make important arguments portable across member polities. You republish
(or rarely, disclose editorial indulgences). You are not a wiki, lore dump, or
fan narrator.
Read before acting: GLOSSARY.md, README.md, AI_INSTRUCTIONS.md, one recent
selection in the target field, and reference.md.
When to run
Use this skill when the user wants one full release — angle → essay →
register → audio → commit → push — without hand-holding between steps.
Default to complete the pipeline unless the user says not to push, not to
commit, or review first.
Phase 1 — Find the angle
Reference inputs (use whatever is available):
- User-attached files, folders, or
@ paths (primary).
- User-named reference roots (external text files, notes, Calypso Cycle material).
- The existing archive:
docs/articles/, docs/series/, docs/dossiers/,
docs/articles/index.md.
docs/authors.md for voice patterns and gaps.
Do not wait for perfect reference. If none is given, derive an angle from:
- a missing perspective on a crowded subject (law, species, Fleet, mesh policy);
- a companion to an existing selection (dissent, field report, technical memo);
- a mundane institutional case that clarifies a loud dispute;
- an absent-work note turned into a selection that stands without the missing source.
Write a three-line pitch internally before drafting:
Selection: [working title]
Author/venue: [who, where it would have been published]
Why now: [what cross-polity argument this carries]
Pick one strong angle. Avoid encyclopedic coverage.
Phase 2 — Commission the selection
Decide before prose:
| Decision | Guidance |
|---|
| Author | Existing author from docs/authors.md or a new plausible scholar. Match voice metadata. |
| Type | Usually Republication. Staff work → Editorial Note on editorial-content.md. |
| Field | Human-readable; see README.md fields list. |
| Series / dossier | Optional. Only if the track genuinely fits. Standalone is fine. |
| Release date | After latest in register; irregular spacing. See reference.md. |
| Slug | kebab-case.md, not wiki-shaped. |
Voice split:
- Author — discipline, institution, argument, examples, limits.
- Review — republication note only: provenance, controversy, absent works.
Use public mesh / the mesh in house copy. See GLOSSARY.md. Do not use
"online" or "internet" in republication notes, register, or series pages.
Phase 3 — Write the selection
Follow the skeleton in reference.md.
Quality bar:
- Concrete institutions, procedures, dates, and examples.
- Explicit uncertainty where the author would have limits.
- Absent-work notes when citing unavailable replies or annexes.
- Title sounds like a republished article, not a setting guide.
- Length: substantive essay (typically 1,500–4,500 words) unless user asks shorter.
Add ## Related Review selections with 2–4 meaningful links.
Phase 4 — Register the release
Update all that apply:
docs/articles/<slug>.md — the selection.
docs/articles/index.md — release-order row.
docs/index.md — latest selections grid (keep ~6 cards).
docs/series/*.md — if series member.
docs/dossiers/*.md — if dossier member.
docs/authors.md — new or updated author with:
- institution bio
- Republications in this archive list
<!-- author-metadata: ... --> comment for LLM voice (not reader-visible).
docs/editorial-content.md — only for Review staff / Language Desk work.
Do not add the article to mkdocs.yml nav unless creating a new series or
dossier page.
Phase 5 — Verify, audio, ship
Run the publish pipeline:
python scripts/publish_selection.py --slug <slug> --commit --push --message "Release selection: <Title>."
On Windows with venv:
.\.venv\Scripts\python.exe scripts/publish_selection.py --slug <slug> --commit --push --message "Release selection: <Title>."
The script runs mkdocs build --strict, generates audio, verifies it, commits
source + MP3 + manifest, and pushes main.
If audio dependencies fail, fix and retry. Do not commit without audio unless the
user explicitly waived narration.
Commit scope: article, register updates, index/series/dossier/author edits,
docs/assets/audio/<slug>.mp3, docs/assets/audio/manifest.json. Never site/.
Phase 6 — Handoff
Report briefly:
- Title, slug, release date, author, field
- Series/dossier (if any)
- One sentence on the editorial angle
- Commit hash
Guardrails
- Do not rewrite unrelated articles or prose.
- Do not create a new series for one piece or a new dossier without ≥3 fit unless asked.
- Do not put Review staff on
authors.md.
- Do not normalize release dates into tidy decades.
- Push only when the user has asked to publish/ship/push, or when running this
skill's default full pipeline.
Checklist
Editorial release:
- [ ] Angle chosen from reference and/or archive gap
- [ ] Author, field, type, release date, slug decided
- [ ] Selection written (author voice + republication note)
- [ ] Archive register + home page updated
- [ ] Series/dossier/authors updated if applicable
- [ ] mkdocs build --strict passes
- [ ] Audio generated and verified
- [ ] Committed and pushed (if requested)