grainulator
Research that compiles.
Links
README
From the repo.
Grainulator
Evidence and verification for the model you already use.
Keep the evidence. Challenge the answer. Know what to do next.
A shared workflow for research, engineering, and model-assisted work.
Quick start · Installation · Upgrading · Tools · Agent setup · Changelog
What it adds
Good models still need a way to keep track of evidence, revisit assumptions, and verify their work. Grainulator gives them that process, with a local ledger that stays with the task as it moves between models and sessions.
| Capability | What it gives you |
|---|---|
| Evidence that stays with the work | Typed claims, sources, evidence tiers, and provenance that survive edits and exports. |
| A check on the answer | Conflict detection, weak-support signals, and explicit gaps to investigate. |
| Clear next actions | Two lists: what the agent can continue automatically, and what needs your input. |
| Sessions you can carry forward | Configurable research, stop/resume, reusable context, and credential-free exports. |
| Verification for your task | A managed command loop that can use a verifier you provide. |
Grainulator works with Claude Code and Codex through plugins. It also provides a command-line tool and an MCP connection for other agents. You do not need to install its components separately.
Quick start
Requires Node.js 24+. Node 25 is the development default.
Upgrading from 1.x? Follow the migration checklist to update the plugin and keep your existing research data.
git clone --branch v2.0.4 https://github.com/grainulation/grainulator.git
cd grainulator
npm ci --ignore-scripts
node bin/grainulator.js doctor
To use Grainulator inside your agent, follow the Claude Code or Codex setup guide. The website shows a saved example of an evidence check. It does not send your question to a model.
The local research playground remains available through node bin/grainulator.js preview. It runs models using a provider account you configure locally.
Distribution: v2.0.4 is a GitHub release, not an npm registry release. For a separate local installation, follow the archive installation guide.
Other agents: connect through MCP
From the project you want Grainulator to access:
node /path/to/grainulator/bin/grainulator.js connect --dir "$PWD"
Add the printed MCP configuration to your agent, then restart the connection. This command only prints the settings; it does not install the plugin.
For the full Claude Code or Codex plugin, use the agent setup guide. Codex needs a project folder; the guide shows how to set it. CLI and direct MCP access remain available to other hosts.
Put it to work
With Grainulator connected, give your agent the outcome you need:
Use Grainulator to investigate whether we should migrate this service. Record the evidence, challenge the assumptions, implement the agreed changes, and verify them. Keep the remaining next steps split into Auto and Manual.
The work follows a simple cycle:
- Record findings with their sources and evidence tiers.
- Check for conflicts, weak support, and missing perspectives.
- Act on the gaps that matter, then verify the requested result.
- Continue from the saved ledger or export the session to another workflow.
There are no fixed claim-count or research-pass quotas. Auto lists work the agent can continue within your authorization. Manual lists decisions, access, or actions that need you. When you ask only for next steps, those two lists are the entire response.
Example: record a claim from the terminal
node bin/grainulator.js init --dir ./sprints/migration \
--question 'Should we migrate this service?' \
--audience engineers --constraints 'Preserve existing user data' \
--done 'A verified plan with remaining risks documented'
node bin/grainulator.js add --dir ./sprints/migration \
--id r001 --type constraint --topic migration \
--content 'Existing user data must remain readable.' --evidence stated
node bin/grainulator.js compile --dir ./sprints/migration
The equivalent MCP tool is add_claim on the grainulator server. See the tool reference for evidence, memory, export, analytics, and orchestration operations.
Explore the docs
| Guide | Start here for… |
|---|---|
| Installation | Tagged source, isolated archives, and verified build identity. |
| Upgrading from 1.x | Host updates, renamed tools, existing data, and retired setup instructions. |
| Agent setup | Use Grainulator with Claude Code, Codex, or another agent. |
| Research sessions | Models, feature controls, credentials, export, and resume. |
| Tools | The canonical CLI and MCP interface. |
| Execution adapters | Attaching a model command and a task-specific verifier. |
| Architecture | The workspace layout and internal modules. |
| Evaluation | What has been measured and what remains unproven. |
| Contributing | Development setup, tests, and changes to the project. |
Verification and limits
CI checks Node 24 and 25, isolated package installation, plugin contracts, Rust runtime conformance, lint, and the static playground in a browser. Native host and live-provider acceptance have separate verification guides.
The compiler checks the structure and support recorded in the ledger; it does not establish that a source is true. Evaluations do not establish a general accuracy or efficiency gain, and per-pass limits are not a whole-session spending cap. Keep those distinctions when interpreting results.
Run the development checks
npm test
npm run test:install
npm run lint
Browser and runtime prerequisites are in CONTRIBUTING.md. The offline node bin/grainulator.js demo exercises the adapter/verifier protocol without a provider account.
Built by Grainulation · MIT licensed · Issues & ideas
Collected info
- ★ 86 stars
- ⎇ 7 forks
- Language: JavaScript
- Source updated: 9/22/2026
