AI Bandwidth Amplifier - turn notes into structured practice and actionable learning insights
Project description
OpenPraxis
Built for applied mastery of your local knowledge bases, notes, and other multi-source materials: turn raw inputs into structured practice so you can use what you know, not just store it.
Now supports an OpenClaw-oriented knowledge assistant workflow via skills: ingest personal local knowledge into a local KB and generate retrieval practice during import, so users can actively master stored knowledge instead of only archiving it.
Requirements
- Python 3.11+
- LLM API Key (OpenAI / Doubao / Kimi / DeepSeek)
Installation
Install from PyPI:
pip install openpraxis
Or install from source (for development):
git clone https://github.com/Sibo-Zhao/OpenPraxis.git
cd OpenPraxis
pip install -e ".[dev]"
Configuration
Recommended first-time setup:
praxis llm setup
praxis llm show
This saves your default provider/model/api_key into ~/.openpraxis/config.toml.
You can also edit config.example.toml manually and copy it to ~/.openpraxis/config.toml.
openai(default): native structured output parsedoubao: native structured output parsekimi/deepseek: JSON mode + JSON string -> Pydantic validation
API key env vars (higher priority than llm.api_key):
OPENAI_API_KEYforopenaiARK_API_KEYfordoubaoMOONSHOT_API_KEYforkimiDEEPSEEK_API_KEYfordeepseek
Usage
praxis add <file> [--type report|interview|reflection|idea]
praxis practice <input_id>
praxis answer <scene_id> [--editor] [--file <path>]
praxis insight [<input_id>] [--type <insight_type>] [--min-intensity <n>]
praxis show <id>
praxis export [--format md|json] [--output <path>]
praxis list [--type report|interview|reflection|idea] [--limit N]
OpenClaw + Skills
Use the bundled skill at openclaw-knowledge-coach/ to run a CLI-first workflow for local-knowledge mastery:
- Clone and install OpenPraxis
- Configure provider/model/API key
- Import local files with
praxis add - Generate/re-run practice with
praxis practice - Submit answers with
praxis answer - Review/export insights with
praxis insight,praxis show, andpraxis export
The skill documents command chaining, output contracts, and exercise-generation patterns for retrieval practice on personal local knowledge bases.
praxis add accepts both text/markdown files and common image formats (.png, .jpg, .webp, ...). For images, OpenPraxis uses a vision-capable model to extract readable text first (providers: openai or doubao).
Global runtime LLM overrides (for a single command):
praxis --provider doubao --model doubao-seed-1-6-251015 add note.md
praxis --provider kimi --model kimi-k2-turbo-preview practice <input_id>
praxis --provider deepseek --model deepseek-chat answer <scene_id> --file answer.md
Development
pytest
ruff check src tests
Vision
Increase your "AI bandwidth" by converting fragmented inputs into reusable practice loops that build real transfer: faster recall, clearer decisions, better on-the-job application.
License
See the project repository.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file openpraxis-0.1.0.tar.gz.
File metadata
- Download URL: openpraxis-0.1.0.tar.gz
- Upload date:
- Size: 33.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
03874973f7fbd3d0470cc7fd8369905dc449ff471f6e84af5a878ba2d5fb6294
|
|
| MD5 |
20dc359bf65b447c0287cc7a0b767d91
|
|
| BLAKE2b-256 |
be28012c238146e3d24dc940091439d1154f83321fb4c90a952b0ad18ba105e6
|
Provenance
The following attestation bundles were made for openpraxis-0.1.0.tar.gz:
Publisher:
publish.yml on Sibo-Zhao/OpenPraxis
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
openpraxis-0.1.0.tar.gz -
Subject digest:
03874973f7fbd3d0470cc7fd8369905dc449ff471f6e84af5a878ba2d5fb6294 - Sigstore transparency entry: 976803564
- Sigstore integration time:
-
Permalink:
Sibo-Zhao/OpenPraxis@0e65bfa21e2bb51f9063bbceb0c4ea76b1085cbf -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Sibo-Zhao
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@0e65bfa21e2bb51f9063bbceb0c4ea76b1085cbf -
Trigger Event:
push
-
Statement type:
File details
Details for the file openpraxis-0.1.0-py3-none-any.whl.
File metadata
- Download URL: openpraxis-0.1.0-py3-none-any.whl
- Upload date:
- Size: 27.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
68661cf6ffdf21cd6a30fd768afcad4578b3ed537a88c0b3fd43554b31006be1
|
|
| MD5 |
5a62258f29fe61583617d2bdac310dfb
|
|
| BLAKE2b-256 |
84f29065382676c6cd0c18f493be4601212fd2a947d74c1a5e8ab15d7d865a9b
|
Provenance
The following attestation bundles were made for openpraxis-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on Sibo-Zhao/OpenPraxis
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
openpraxis-0.1.0-py3-none-any.whl -
Subject digest:
68661cf6ffdf21cd6a30fd768afcad4578b3ed537a88c0b3fd43554b31006be1 - Sigstore transparency entry: 976803566
- Sigstore integration time:
-
Permalink:
Sibo-Zhao/OpenPraxis@0e65bfa21e2bb51f9063bbceb0c4ea76b1085cbf -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Sibo-Zhao
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@0e65bfa21e2bb51f9063bbceb0c4ea76b1085cbf -
Trigger Event:
push
-
Statement type: