Every new sprint
starts from zero.
It doesn't have to.

silo stores reusable knowledge packs — pre-researched constraint sets, risk libraries, and architecture patterns. Pull them into any wheat sprint in one command instead of re-researching what your team already knows.


What is silo?

When you use wheat (a structured research framework) to make technical decisions, you collect findings called "claims." silo lets you save the best claims from past sprints as reusable "packs" — like a library of pre-verified knowledge.

Next time someone on your team starts a sprint about compliance, they can pull the compliance pack and start with 14 documented constraints instead of a blank slate. Think of it as a knowledge base that speaks the same language as your research tool.


Quick start — 3 commands
1

List available packs

See what knowledge packs are available — compliance, migration, architecture, and more.

$ npx @grainulation/silo packs
Pack Claims Types compliance 14 constraint migration 10 risk + constraint architecture 12 all types
2

Pull into your sprint

Import a pack's claims into your claims.json. They merge cleanly with existing claims.

$ npx @grainulation/silo pull compliance --into ./claims.json
Pulled 14 claims into ./claims.json Added: 6 HIPAA, 4 SOC 2, 4 GDPR All type "constraint", evidence "documented"
3

Search stored knowledge

Search across all packs. Find relevant claims without knowing which pack they are in.

$ npx @grainulation/silo search "encryption at rest"
Found 3 matches: compliance/hipaa-07 — PHI encrypted (AES-256) compliance/soc2-03 — CC6.1 criteria architecture/a09 — <2% latency for SSDs

Searching across three sprints for performance insights

Your team ran separate sprints on infrastructure, caching, and API design. silo indexes all three and lets you search, filter by evidence tier, and generate cross-sprint comparisons — without opening each sprint manually.

1
$ npx @grainulation/silo index ./sprints/*/claims.json

Index your sprints

Point silo at your sprint directories. It reads every claims.json, deduplicates, and builds a searchable index across all of them.

✓ Indexed 3 sprints (247 claims)
$ npx @grainulation/silo search "API latency" --evidence documented

Search with evidence filters

Find claims across all indexed sprints. Filter by evidence tier so you only see findings backed by docs, tests, or production data — not hearsay.

r041 API p99 latency under 200ms with connection pooling (sprint: infra) p003 Redis caching reduced latency by 62% in benchmark (sprint: caching)
3
$ npx @grainulation/silo compare infra caching --topic performance

Compare sprints

Generate a side-by-side comparison of two sprints on a specific topic. The output is a self-contained HTML file you can share with your team.

✓ Generated comparison: output/compare-performance.html

The outcome: Instead of re-reading three sprint briefs and mentally cross-referencing claims, the team has a searchable index and a generated comparison. Knowledge compounds across sprints instead of getting lost in old directories.


Pre-built knowledge for every sprint

Pull packs into any wheat sprint. Each pack is a curated set of claims — pre-researched, typed, and evidence-graded.

Compliance

14 claims · constraint

HIPAA, SOC 2, and GDPR constraints. Every claim references the specific regulation clause so auditors can trace decisions back to requirements.

Migration Risks

10 claims · risk + constraint

Common failure modes for database migrations, cloud provider switches, and framework upgrades. Each risk includes mitigation patterns from past sprints.

Architecture Patterns

12 claims · all types

Event sourcing, CQRS, microservices boundaries, and distributed consensus. Claims span from constraints through tested benchmarks.

API Design

9 claims · constraint + recommendation

REST vs GraphQL trade-offs, pagination strategies, rate limiting patterns, and versioning schemes. Sourced from production-scale systems.

Precedent Engine

cross-sprint · automatic

Surfaces past decisions and outcomes when you start a new sprint on a similar topic. silo matches incoming wheat claims against your full history — so every decision is informed by what your team already learned, even from sprints you forgot existed.

Technology Radar

generated · living document

Builds a tech radar from claims accumulated across all your sprints. Technologies move through assess, trial, adopt, and hold rings based on real evidence tiers — not opinions. Powered by harvest analytics and updated every time you run a sprint.

Create your own packs from any sprint: npx @grainulation/silo pack create my-pack --from ./claims.json


Stop researching the same things

Knowledge you can reuse, version, and share across teams.

Knowledge Packs

Version-controlled bundles of claims. Compliance, migration risks, architecture patterns — all pre-researched.

Clean Merge

Pull claims into any sprint. IDs are namespaced so they never conflict with existing research. orchard uses silo's merge logic to run cross-sprint consistency checks automatically.

Full-Text Search

Search across all stored knowledge. Find relevant claims without knowing which pack they are in.

Team Sharing

Store your best sprint findings as reusable packs. Next team gets a head start, not a blank slate. Use mill to export indexed knowledge into PDFs or static sites for stakeholders who don't use the CLI.


Do I need Node.js?

Yes, Node 18 or later. But your project can use any language or framework.

Where are packs stored?

In ~/.silo as plain JSON files. You can inspect, back up, or version control them with standard tools.

Can I share packs across teams?

Yes. Packs are plain JSON files stored in ~/.silo. Copy them, check them into a shared repo, or distribute them however your team shares files. No database, no network calls, no accounts.