Your AI understands before it codes — and your team's knowledge compounds every commit. Sage makes the agents you already use grasp what your team has decided, what a change will break, and what to reuse, then remembers it for next time.
curl -fsSL https://raw.githubusercontent.com/qorstack/sage/main/AGENTS.md -o AGENTS.md
# or just let it fill in as the agent captures rules
git clone --depth 1 https://github.com/qorstack/sage t && cp -r t/agents . && rm -rf t
Sage gives every AI agent the ikigai of your most senior dev — the balance of four questions it asks before writing a line, so it grows with your team instead of charging ahead.
agents/sage/?
They reinvent helpers that already exist, miss the payment flow three files over, and ship changes your team explicitly decided against last quarter. Markdown docs don't fix this — agents skip them. Sage makes understanding a required tool call, not a suggestion.
A required pipeline that names the domain, the blast radius, and a binding decision before any code — written as plain rules the agent must follow.
Surfaces the exact existing assets and conventions to follow, so agents import instead of reinventing.
ASK pauses for a human. REJECT stops cold. Code is validated before it's written.
Coding agents are great at producing code. None of them make sure it's the right code for your system, or that it respects what your team already decided. Sage is the AGENTS.md they read first — it makes understanding mandatory.
Point it at the agents you already use — Claude Code · Cursor · Codex · Copilot · Antigravity. It doesn't replace them. It makes them think first.
Before touching code, the agent follows the pipeline in AGENTS.md and reads the team's Markdown rules. Here's the verdict it must produce for a real request.
add a refund endpoint to /payments
1. read agents/sage/payment/ # rules + decisions 2. reuse before creating 3. emit Risk: / Decision: header 4. stop on ask | reject
payments/refund_service.py already exists — extend
it, don't recreate.
When someone states a team decision, the agent writes it as a
Markdown file; a human approves it by flipping
status: proposed to approved;
git push shares it. Next time any agent in any repo
touches that domain, the rule is right there. Personal agent memory
can't do this — it isn't governed, approved, or shared.
---
title: Use idempotency keys
domain: payment
status: approved
enforcement: block
---
All payment calls MUST pass an
idempotency key. No exceptions.
Plain Markdown in your repo. Edit it, diff it, review it in a PR. The agent follows it on every payment change.
source: human · committedOpen source. One file. A governed, shared cognition protocol — no server, no Python.