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
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. |
One package, one MCP server. Use the CLI, connect an MCP-compatible agent, or load the bundled Claude Code or Codex plugin. The consolidated components are included; separate ecosystem installations are not required.
Requires Node.js 24+. Node 25 is the development default.
Upgrading from 1.x? Follow the migration checklist to update the correct plugin scope, reconnect the single MCP server, and review retired Farmer instructions without changing your research data.
git clone --branch v2.0.2 https://github.com/grainulation/grainulator.git
cd grainulator
npm ci --ignore-scripts
node bin/grainulator.js doctor
node bin/grainulator.js previewOpen localhost:4517/playground/ to choose your model, configure the workflow, and run research with your provider key.
Want to look around first? The public playground lets you explore the controls and export a setup. Model execution happens in your local installation.
Distribution: v2.0.2 is a GitHub release, not an npm registry release. For a separate local installation, follow the archive installation guide.
From the project you want Grainulator to access:
node /path/to/grainulator/bin/grainulator.js connect --dir "$PWD"Register the printed MCP configuration in your host, then restart its connection. The command prints configuration; it does not change your host settings.
For bundled skills, agents, and hooks, use the native plugin setup guide. Native Codex needs an explicit workspace: run node /path/to/grainulator/bin/grainulator.js setup --dir /absolute/project once, then restart Codex. A per-launch GRAINULATOR_WORKSPACE overrides that saved default. CLI and direct MCP access remain available to other hosts.
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/migrationThe equivalent MCP tool is add_claim on the grainulator server. See the tool reference for evidence, memory, export, analytics, and orchestration operations.
| 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 | Claude Code, Codex, and actual plugin acceptance checks. |
| 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. |
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 lintBrowser 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
