Skip to main content

An agentic scriptorium for scholarly writing — coordinated AI capabilities for manuscripts, grants, and reviews.

Project description

scriptorium

An agentic scriptorium for scholarly writing.

Scriptorium is an agentic operating system for scholarly writing. It coordinates AI capabilities — citation audit, reviewer simulation, structural analysis — around shared editorial state, so manuscripts, grants, and reviews are improved as a workflow rather than a series of one-shot prompts.

Why this exists

A medieval scriptorium was a coordinated workspace where multiple scribes copied, annotated, glossed, and corrected manuscripts under shared conventions. The modern scholarly-writing process — drafting, citing, reviewing, revising, publishing — has the same shape, but most AI tools sit outside of it: they generate prose in isolation, lose context between sessions, and offer no way to compose improvements.

Scriptorium puts the agentic-AI layer inside the workflow:

  • A single source of editorial truth (MANUSCRIPT_STATE.yaml) that every skill reads.
  • A collection of conservative, single-responsibility skills (citation audit, reviewer simulation, argumentative-flow analysis) that emit structured outputs another skill can consume.
  • A discipline of inspectable transformations: semantic diffs over unconstrained rewriting; preserved citations and statistics by default; no hidden state.

The medieval scriptorium had an operating model. The agentic one is just now being built.

Install

Claude Code (recommended)

Pre-release; install from source until the first PyPI cut:

git clone https://github.com/seandavi/scriptorium
cd scriptorium
uv pip install -e .

# Live-linked (edits propagate immediately — best for iterating)
scriptorium install --mode dev-link

# Or a copy install (stable snapshot, no live edits)
scriptorium install

Restart Claude Code; the skills appear as scriptorium:init, scriptorium:citation-audit, scriptorium:reviewer-simulation, scriptorium:argumentative-flow.

Other agents (Codex, Gemini, Hermes, ChatGPT, …)

Each skill ships with a platform-neutral prompt.md you can paste into any LLM directly. To get all skills concatenated into a single prompt-pack file:

scriptorium prompt-pack -o scriptorium-prompts.md

See INSTALL.md for per-platform recipes.

Quick start

# 1. Scaffold editorial state for your manuscript
scriptorium init /path/to/your/manuscript

# 2. Populate it. Two ways:
#    a) Edit /path/to/your/manuscript/MANUSCRIPT_STATE.yaml directly.
#    b) In Claude Code inside the manuscript repo, run the conversational
#       bootstrap that walks you through core_claims, known_weaknesses,
#       terminology, audience, and tone:
#       /scriptorium:init

# 3. Validate the result
scriptorium validate /path/to/your/manuscript/MANUSCRIPT_STATE.yaml

# 4. Run the leaf skills in Claude Code, inside the manuscript repo:
/scriptorium:citation-audit
/scriptorium:reviewer-simulation
/scriptorium:argumentative-flow

A fully-populated reference manuscript lives at templates/MANUSCRIPT_STATE.example.yaml (an imaginary biomedical paper that exercises every field in the schema). Use scriptorium init --example /tmp/example to drop a copy anywhere as a learning aid.

What's in the box (v0.1)

Four bundled skills, exposed through both Claude Code and the platform-neutral prompt-pack:

Skill Phase What it does
init bootstrap Conversational pass that populates MANUSCRIPT_STATE.yaml (core claims, known weaknesses, terminology, audience, tone) and routes to the right next skill for the document phase. Pairs with the scriptorium init CLI subcommand, which scaffolds the file.
citation-audit leaf For each scientific claim: identify citation support, evaluate evidence strength, flag overreach. Outputs a structured claim/citation/assessment/recommendation table. No text modification.
reviewer-simulation leaf Simulates four reviewer personas (methodological skeptic, domain expert, translational reviewer, statistical reviewer). Outputs Major/Minor Critiques, Fatal Concerns, Enthusiasm Drivers, Suggested Revisions, Acceptance Risk.
argumentative-flow transformative Improves logical and argumentative coherence while preserving citations, statistics, and terminology. Outputs Structural Diagnosis / Logical Gaps / Proposed Outline / Revised Text / Remaining Weaknesses.

The scriptorium CLI exposes six subcommands: install, init, validate, prompt-pack, list, and trace. scriptorium trace extracts skill invocations from Claude Code transcripts as structured records conforming to schemas/trace.schema.json — useful for self-inspection and (eventually) eval-loop work. See scriptorium --help for the full surface.

Deliberately not in v0.1 (see DESIGN.md for the build order): orchestrators, drafting skills, additional knowledge-layer contributions beyond what skills currently cite, Codex/Gemini adapters. These earn their way in once the v0.1 skills have been used on real manuscripts.

Companion tools

Scriptorium is the editorial layer; these tools are useful neighbors for the rest of the scholarly-writing workflow:

  • Semantic Scholar MCP and PubMed MCP — bibliographic lookup and full-text retrieval as MCP servers, consumable by Claude Code (and any MCP-aware agent). Pair well with scriptorium:citation-audit when claims need to be checked against primary literature.
  • quartobot — resolves persistent-identifier cite keys (@pmid:, @doi:) in Quarto documents before citeproc renders them. Used inside the scriptorium docs build for the knowledge/ evidence base; useful standalone for any Quarto-based scholarly writing.

These are external projects, not bundled with scriptorium. Install them separately following each project's own instructions.

Design principles

The system separates:

  • generation (write new prose)
  • critique (assess existing prose)
  • validation (check for structural / factual issues)
  • normalization (terminology, style, journal conventions)

And prefers:

  • inspectable transformations over opaque rewrites
  • structured outputs over freeform rambles
  • semantic diffs over surface rewrites
  • explicit checkpointing over hidden state

See DESIGN.md for the full design philosophy and the roadmap.

Status

v0.1 in flight. Four bundled skills (init, citation-audit, reviewer-simulation, argumentative-flow), the consolidated scriptorium CLI (six subcommands, including trace for transcript analysis), the shared state schema, the trace schema, and the Venice example. Orchestrators, additional skills, and platform adapters follow once the leaves prove out on real manuscripts.

License

Dual-licensed by category:

  • Code — source under src/, tests, schemas, scripts, and configuration files — is MIT.
  • Documentation and knowledge layer — the docs/ site, the knowledge/ evidence base, top-level prose files (README.md, DESIGN.md, INSTALL.md, CONTRIBUTING.md), and per-skill README.md files — is CC BY 4.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agentic_scriptorium-0.1.0.dev0.tar.gz (76.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agentic_scriptorium-0.1.0.dev0-py3-none-any.whl (89.2 kB view details)

Uploaded Python 3

File details

Details for the file agentic_scriptorium-0.1.0.dev0.tar.gz.

File metadata

  • Download URL: agentic_scriptorium-0.1.0.dev0.tar.gz
  • Upload date:
  • Size: 76.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for agentic_scriptorium-0.1.0.dev0.tar.gz
Algorithm Hash digest
SHA256 854a5af1e72e4f85ef8a2bf11fbe9a11eb214affffef76ffc9e221a905df54c2
MD5 a7b81e0fd99b103ebc8f314eeae6d47e
BLAKE2b-256 703c8c9ba6bc85daf02377fb6fa37d5b7bf69b2cff2cd45e3e191a0a8e079871

See more details on using hashes here.

Provenance

The following attestation bundles were made for agentic_scriptorium-0.1.0.dev0.tar.gz:

Publisher: release.yml on seandavi/scriptorium

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file agentic_scriptorium-0.1.0.dev0-py3-none-any.whl.

File metadata

File hashes

Hashes for agentic_scriptorium-0.1.0.dev0-py3-none-any.whl
Algorithm Hash digest
SHA256 0260c813d41235d2baaef4ca7f6adce9a2dfc3541c9c86b70d026318ae411e0d
MD5 af78676d8ad8e943f8ee037847bbc839
BLAKE2b-256 c4f53d5e2c94fde4d9d3d6f0f76594fb3b5bf7e96566931d2a0b770f47d16aaf

See more details on using hashes here.

Provenance

The following attestation bundles were made for agentic_scriptorium-0.1.0.dev0-py3-none-any.whl:

Publisher: release.yml on seandavi/scriptorium

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page