discern v1.3.0
Intelligence In Practice.
An engineering practice for agent-built software.
Any stack. Runs offline. No API key.
Agent-led setup
Your coding agent installs and fine-tunes discern for your project.
Many agents, one machine
Run agents in parallel, each in its own copy of your project.
Finished means tested
Work counts as finished only when your tests, linter, and build pass.
Teach it once
Explain a rule once, and every agent session starts out knowing it.
Experiment freely
Rapidly iterate on new features and experiments with confidence.
Switch agents freely
Change coding agents without explaining your project all over again.
No API key
No AI model inside, so there's no API key and no extra model bill.
Review what matters
Stop checking whether the tests ran, and review what the change does.
Gains that stick
Set a limit, like minimum test coverage, that agents can't lower to pass.
Hand off bigger goals
Turn one big goal into complete briefs your agents can run with.
Tidy up safely
Delete old tasks, and recover their committed work if you change your mind.
A record that lasts
Months later, look up what a change passed before it merged.
Remember the why
Keep the reasons behind big decisions where future agents will find them.
Don't run tests twice
If your agent loses a long test run, it reads the result back.
1 Config file
Every discern setting for your project lives in a single readable file.
Leave without losing work
Uninstall with one command and keep everything you and your agents wrote.
Raise the bar
When test coverage improves, one command locks the gain in as the new minimum.
Playbooks for hard jobs
Agents follow step-by-step playbooks for jobs like fixing bugs and splitting work.
No wasted checks
Checks for one part of your project run only when that part changes.
Dead links get caught
A broken link in the docs your agents keep fails like a broken test.
Build on pending work
Start the next task on top of work you haven't merged yet.
Any language, any stack
Work the same way in every project, whatever it's written in.
Main stays clean
An agent can try, fail, and retry without touching your main branch.
New sessions start fast
A new session searches the docs your agents keep and reads only what its task needs.
See what needs you
One screen shows every task and which ones are waiting on you.
Stays in its lane
Every place discern can write is on a list you can read.
Fix it everywhere
Fix a bug everywhere it lives and guard against its return.
Built with itself
Every change to discern is made with discern itself.
Proof of what passed
Every finished change shows which of your commands passed, and on which commit.
What your agents know
Read a plain account of how your agents think your project works.
Walk away mid-task
Leave a task half done and resume it in a new session.
5 Coding agents supported
Claude Code, Codex, Gemini, Cursor, and GitHub Copilot all read the same instructions.
Upgrade on your schedule
See what an upgrade will change, then update when it suits you.
Tested or only claimed
Every result separates what passed your tests from what your agent only judged.
One source of truth
A built-in playbook has agents define each value once and test every use.
Catch the forgotten file
Know when a change skips a file that usually goes with it.
Clutter stays gone
Clear out dead code and duplicates, and stop them piling back up.
Stop playing messenger
Agents wait for each other's work, then carry on without a nudge.
A built-in health check
If discern stops working, one command finds the problem and names the fix.
Pre-approve the routine
Let routine changes, like docs fixes, merge without waiting for you.
Known fixes, delivered
When an agent hits a problem you've seen before, it gets your written fix.
Standing review questions
Write a review question once, and agents answer it on every matching change.
One task, two agents
Start a task with one coding agent and finish it with another.
Limits for any metric
Limit bundle size, lint warnings, or any number a command can print.
Nothing to host
Add discern with no account, server, or service to set up.
36 Limits it must meet
Every change to discern has to pass them, from test coverage to reading level.
Less noise for agents
Results stay short, so your agent's attention goes to your code.
See where agents struggle
Find out where your agents keep getting stuck, counted from real runs.
Merge in any order
Finished work still merges after other changes land, retested on the combined code.
Scriptable by design
Get any result as JSON with a published schema for your scripts.
Preview before it runs
See what discern will change before it touches your project.
Briefings on demand
Export what a new teammate or agent should read as one file.
Failures you can use
Every failure comes with its output and the command to reproduce it.
No telemetry
What discern records stays on your machine, and it sends no telemetry.
Migrations that finish
Phase out an old library and block it from creeping back.
Ready when you are.
Ask your coding agent to set up discern in your project.