Sruja is a context engineering tool for software teams. It helps you:
- capture important knowledge and decisions
- retrieve the right task context for developers and AI agents
- verify that code changes still align with those decisions
The product center is not diagrams or generic agent orchestration. The product center is a small loop:
- capture knowledge and reviewed intent
- brief the next change with grounded context
- verify the result with deterministic checks
Bring durable context into the repo:
sruja ingest <path>for design docs, ADRs, and notessruja decision ...for decision records and links- optional
repo.srujawhen you want reviewed intent in Git
Give humans and AI the minimum useful context before editing:
sruja focus -r . --file path/to/file.rssruja ai -r . --task "Refactor auth boundary"sruja mcp -r .for editor and agent tooling
Check that implementation still matches reality and intent:
sruja drift -r . --structural-only --advisorysruja intent check -r .sruja verify-task --profile coding -r .sruja lint repo.srujawhen reviewed intent exists
Install the CLI and run the core loop:
curl -fsSL https://sruja.ai/install.sh | bash
# 1) detect current structure
sruja start -r .
sruja drift -r . --structural-only --advisory
# 2) brief a change
sruja focus -r . --file path/to/file.rs
# 3) verify the result
sruja verify-task --profile coding -r .This works without a repo.sruja file. Add reviewed intent later if you want stricter decision tracking in Git.
When you want durable, reviewable intent in version control:
sruja lint repo.sruja
sruja sync -r .
sruja drift -r . -a repo.srujaTreat repo.sruja as reviewed truth, not as the day-one requirement.
Sruja works best when your editor can ask for context directly through MCP.
Cursor template: .cursor/mcp.json
{
"mcpServers": {
"sruja": {
"command": "sruja",
"args": ["mcp", "-r", "."],
"env": {
"SRUJA_MCP_TOOL_PROFILE": "coding",
"SRUJA_MCP_READONLY": "1"
}
}
}
}Use the default coding profile. Host editors own the LLM loop; Sruja supplies grounded context and verification.
Everything else should build on the core foundations above.
architecture authoring: richerrepo.srujaworkflows, proposals, author evidencevisualization: Mermaid, Markdown, D2, GraphML, Neo4j, Obsidian exportsteam workflows: review, drift in CI, compliance, critique, federation
agent ops: plan/apply, learnings, run snapshots, memory curationworkflow orchestration: workflow and AI-DLC flowsinspection and analytics: dashboards, graph history, metrics, registry tooling
These remain useful, but they are not the product story to lead with.
Every public feature should strengthen one of these jobs:
capture knowledgesurface decisionsretrieve relevant contextverify alignment with intent
If a feature does none of those, it belongs in an extension or should be hidden.
- Website book: https://sruja.ai
- Getting started: book/src/docs/getting-started.md
- Host/editor setup: HOST_AGENT_INTEGRATION.md
- Core vs extensions: FEATURE_TIERS.md
- MCP tools reference: mcp_tools_reference.md
- Context framing: CONTEXT_ENGINEERING.md
Install script
curl -fsSL https://sruja.ai/install.sh | bashCargo
cargo install sruja-cli --git https://github.com/sruja-ai/srujaBuild from source
git clone https://github.com/sruja-ai/sruja.git
cd sruja
just buildHarness skill:
npx skills add https://github.com/sruja-ai/sruja --skill sruja-harnessArchitecture authoring skill:
npx skills add https://github.com/sruja-ai/sruja --skill sruja-architecturesruja: command not found
export PATH="$HOME/.local/bin:$PATH"AI generates invalid reviewed intent
sruja lint repo.sruja --format jsonNeed to understand what Sruja found
- Run
sruja focusbefore a change - Run
sruja aifor a paste-ready task brief - Run
sruja whyfor investigation
This project follows the all-contributors specification. Contributions of any kind are welcome!
Apache 2.0 or MIT