Praxis
Praxis
Build with AI. Develop taste.
A plugin for developing engineering taste while coding with AI.
Codex · Cursor · CodeBuddy · DeepSeek Harness
English · 简体中文
Philosophy
AI makes implementation cheap. Taste is still earned.
Fast output is not the same as good engineering. If AI makes every meaningful choice before you understand it, you may ship faster today without getting better at choosing tomorrow.
Praxis extends the coding agent you already use. Routine work stays fast. When a decision can shape the system, Praxis slows down just enough to expose the reasoning, alternatives, tradeoffs, and consequences.
That attention compounds. The more good decisions you understand, the faster you can recognize them yourself.
Slower at the right moment is faster over time.
What using Praxis feels like
Without Praxis:
You Add persistent chat history.
Agent I’ll use the database as the source of truth
and Redis as a cache.
✓ Implemented
With Praxis:
You Add persistent chat history.
Agent I’ll use the database as the source of truth
and Redis as a cache.
This choice matters:
history is durable product state, so a Redis restart
should not erase it.
The tradeoff is an extra durable write path,
but Redis stays disposable.
You I don't know what "source of truth" means.
Agent It means the database owns the canonical history.
Redis can make access faster, but losing Redis
should not lose messages.
You Got it.
Agent ✓ Implemented
✓ Verified: history survived a Redis restart.
Praxis keeps the learning inside the same workflow, so the decision becomes part of your own taste instead of disappearing into the implementation.
What Praxis helps you build
Engineering taste is the ability to recognize better choices earlier.
It grows by connecting decisions to consequences:
compare
→ choose
→ implement
→ observe
→ internalize
→ choose better next time
Praxis does not try to slow down the whole task. It spends attention where understanding compounds, so future decisions become faster, better, and more independent.
Install
Requires Python 3.10+.
Install Praxis:
python3 -m pip install --user 'git+https://github.com/Civitasv/praxis.git'
On Windows, replace python3 with py.
Then add Praxis to the coding agent you use.
Codex
codex plugin marketplace add Civitasv/praxis
codex plugin add praxis@praxis
Enable it in the project:
$praxis:praxis-enable
Cursor
mkdir -p ~/.cursor/plugins/local
git clone --depth 1 https://github.com/Civitasv/praxis.git ~/.cursor/plugins/local/praxis
Restart Cursor, then run:
/praxis enable
DeepSeek Harness / Cordis
Replace web with your profile name.
dsh plugin --profile web add github:Civitasv/praxis
dsh --profile web
Then run:
/praxis enable
CodeBuddy
codebuddy plugin marketplace add Civitasv/praxis --name praxis && codebuddy plugin install praxis@praxis
Then run:
/praxis:enable
Once enabled, work normally. Praxis only slows down decisions worth learning from.
Commands
| Agent | Enable | Disable | Status |
|---|
| Cursor | /praxis enable | /praxis disable | /praxis status |
| DeepSeek Harness | /praxis enable | /praxis disable | /praxis status |
| CodeBuddy | /praxis:enable | /praxis:disable | /praxis:status |
| Codex | $praxis:praxis-enable | $praxis:praxis-disable | $praxis:praxis-status |
Update Praxis
Update Praxis:
python3 -m pip install --user --upgrade 'git+https://github.com/Civitasv/praxis.git'
Then refresh the integration you use.
Codex
codex plugin marketplace upgrade praxis
codex plugin add praxis@praxis
Open a new chat.
Cursor
git -C ~/.cursor/plugins/local/praxis pull --ff-only
Restart Cursor.
DeepSeek Harness / Cordis
dsh plugin --profile web update praxis
dsh --profile web
CodeBuddy
codebuddy plugin marketplace update praxis && codebuddy plugin update praxis@praxis
Then reload plugins:
/reload-plugins
Status
Praxis is currently alpha.
Current integrations: Codex, Cursor, CodeBuddy, and DeepSeek Harness / Cordis. Distribution is currently source-based.
License
Praxis is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0-only).
You may use, modify, and redistribute Praxis under the terms of the AGPL. Its copyleft requirements include source-availability obligations for covered modifications, including when a modified version is offered for use over a network. See LICENSE for the full terms.
Documentation
Implementation details live under Docs/:
Contributors should start with Code.md and State.md.