Skip to content

Repository files navigation

Story Computing Machine

A shared-universe fiction workspace. A writing prompt becomes a complete story through specialist outline, prose, independent review, and cover assignments:

prompt.md → outline.md → story.md → review.md → title-image.jpg

The stories and universe notes are the product. Production stays in these five artifacts, with Git preserving history and Pages publishing a stored snapshot.

Start a story

Open the primary checkout in Codex and submit a prompt:

[WP] Every city has a ghost assigned to it. Tonight, ours resigns.

Target: about 3,000 words; close third person; melancholy but hopeful.

Put additional context in a separate paragraph. Attach any visual references to the request. The coordinator prepares a dedicated branch and sibling worktree, then follows story-create through a draft pull request. New stories are non-canon; promotion is a separate user decision. For named replacements and localized edits, see permissions.

Project map

  • AGENTS.md: authority, permissions, artifact boundaries, worktrees.
  • universe/: shared facts; style guide: narrative policy and craft profiles.
  • story-create: coordination and completion.
  • story-room: outline, review, cover contracts, scaffold, and validation scripts.
  • short-story-writing: prose adapter; other craft skills are pinned references tracked by skills-lock.json.
  • .codex/agents/: four specialist entry points.
  • stories/: current and supported bundle packages; _template/ supplies the four-file scaffold.
  • pages/catalog.json, pages/covers/: publication snapshot.
  • pages/timeline.json: curated chronology; universe/ remains authoritative.

The Chronology reconstructs one world's long history through Galactic Cycles, historical eras, and individual stories. An era groups stories by compatible institutions, technology, magical conditions, and inherited history. Different societies can coexist within a period; similar forms can recur long afterward. Cycles are orbital units, so magic's extinction or return can happen within one. The magic phase belongs to the era, not the entire cycle. An ordinary story's lack of visible magic does not by itself place its society in the zero. Each era explains its context and place in the larger succession. Era and story windows describe possible horizons within a cycle, not measured durations. Overlapping horizons allow regional contemporaries; a story's location is not inferred from its position in a displayed list. Each has a placement rationale in pages/timeline.json. Grouping and broad succession are editorial proposals; established local intervals and the worldline backbone constrain them. Exact Galactic dates remain unresolved. Evidence labels describe established boundaries, constraints, relative sequences, contextual evidence, or undated frames independently of proposed placement. Connections distinguish direct sequences, explicitly proposed historical interpretations, and thematic echoes. Only connections marked ordering: before impose a relative order. The overview weaves four recurring histories across the cycles: authority, public works, extraordinary bodies, and inherited memory. Each stitch opens its account and the stories supporting it. These are editorial interpretations; a continuous visual thread does not establish descent, common origin, or a shared cause. historyThreads stages cite stories placed in their own cycles. The vertical worldline then shows each cycle's larger history, with magic's boundaries inside the relevant cycles. Era entries open their stories, historical context, and local sequences in a focused panel. Each story's “Place in history” disclosure holds its placement rationale, internal sequence, recorded span, and connections; older remembered events can reach outside the story's proposed era. Connections open on demand and distinguish direct links, historical hypotheses, and echoes. Search finds stories throughout the chronology without creating another timeline. The same content remains available through native era and story disclosures when JavaScript is unavailable. The validator requires complete story coverage, unique era IDs, historical context for each era, finite windows contained by their eras, valid connection endpoints and evidence categories, and a feasible partial chronological order before Pages can build. Both sides of the extinction and return are checked, including when stories share an orbit with a boundary. History-current anchors must belong to their cited cycles. Circular or transitively impossible sequences are rejected; overlapping windows and independent display orders are supported.

Local commands

Install the Python dependencies, Markdown and Pillow:

python -m pip install -r pages/requirements.txt

Run these from the story worktree at the appropriate workflow stage:

pwsh -NoProfile -File .agents/skills/story-room/scripts/Test-Stories.ps1 -Story <slug> -Phase PreReview
pwsh -NoProfile -File .agents/skills/story-room/scripts/Test-Stories.ps1 -Phase Final
python pages/build.py capture <slug>
python pages/build.py check

PreReview checks the current scaffold and declarations. Final checks the completed structure, verdicts, inventory, and decodable cover. Semantic and visual judgment remains with the reviewers. Bundle prose receives only compatible checks.

For tooling changes and a local site preview:

python -m unittest discover -s pages -p "test_*.py" -v
python pages/build.py build --output _site

Capture derives the public prompt on first publication and preserves editorial catalog text on recapture. capture-all refreshes existing catalog entries only. Both refuse canon demotion; see Pages rules. GitHub Actions builds and deploys the stored snapshot after merge; it does not reopen story sources or run production review.

About

Agent Base Story Creation

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages