CLI tool for managing requirements and decisions
Project description
🌋 Spex CLI
Autonomous engineering experience enabled.
A set of skills and cli tools to enable autonomous AI engineering.
⚠️ Note: Spex is currently in Beta and considered experimental.
Overview • Autonomous AI Engineering • Quick Start • Workflow •
🌟 Overview
Spex is a CLI tool designed to capture the "why" behind your code. It manages requirements, technical decisions, and project-wide policies in a versioned, git-friendly format (.jsonl).
By integrating directly into your development workflow via agent skills and git hooks, Spex ensures that every major decision is grounded in requirements and traced back to the commits that implemented it.
🤖 Autonomous AI Engineering
True autonomy in AI engineering cannot be achieved without trust. Spex is built on three pillars to establish and maintain this trust:
- Confidence through Delegation: Trust means we are confident that the instructions given to the agent are clear. When ambiguity arises over important decisions—past or present—the agent proactively delegates them back to the engineer.
- Reliable Grounding: Trust means knowing the agent intimately understands your system and product. Spex allows the agent to navigate and ground itself in the correct architecture, constraints and previous decisions.
- Continuous Evolution: To build trust over time, the agent must get better with every task. By reflecting on past experiences and mistakes, Spex enables the agent to learn and improve continuously.
🚀 Quick Start
1. Installation
Install Spex via pip:
pip install spex-cli
2. Initialize Spex
Run the following command in your git repository to set up the necessary directory structure and git hooks:
spex enable
💡 Recommendation: Choose to use Spex as your default workflow during initialization. This ensures your agent automatically leverages Spex memory and state machines for all development tasks.
🔄 Workflow
Spex orchestrates development through a structured lifecycle, ensuring that knowledge is captured and code is aligned with requirements.
1. Onboarding (spex-onboard)
The first step in any project is to map the codebase structure. This identifies all applications and libraries, creating a foundation for localized decisions.
- Description: Scans for
package.json,pyproject.toml, etc., and prompts for component owners. - Example:
spex-onboard analyze the codebase
2. Knowledge Capture (spex learn)
Build your project memory by ingesting existing documentation or capturing real-time decisions.
- Learning from Docs: Reads architecture files and extracts structured requirements/decisions.
spex learn from docs/architecture.md
- Learning from Conversation: Captures decisions made during your chat session.
spex memorize this conversation
3. Development Flow (spex)
Spex intelligently routes your requests based on their complexity.
💡 Lightweight Flow (Small Tasks)
For bug fixes, UI tweaks, or minor refactors that don't change the architecture.
- Description: Researches memory, executes the change, and automatically "memorizes" the result.
- Example:
"Fix the bug where the user's name doesn't update in the header."
🗺️ Plan Mode (Large Features)
For new functionality or complex changes requiring deliberate planning and human review.
- Description: Follows a full state machine:
RESEARCH→PLAN→REVIEW→EXECUTE→AUDIT. - Example:
"spex, let's build a new feature: user-to-user direct messaging."
4. Continuous Improvement (spex reflect)
After a feature is implemented, use reflection to capture learnings and improve the agent's future performance.
- Description: Analyzes the completed feature, identifies patterns, and proposes new Policies for the project memory.
- Usage: Run this only after Plan Mode has successfully finished and you have verified the feature is working as expected (even if extra tweaks were required during execution).
- Example:
"spex reflect on the last feature"
🔧 Troubleshooting
If you encounter issues with git hooks or memory integrity, use the built-in healthcheck command:
spex healthcheck
This command will:
- Verify that git hooks are correctly installed and executable.
- Audit the integrity of the
.spex/memory/JSONL files. - Ensure the agent skills are correctly configured.
Brought to you with ❤️ by the MagmaAI Team
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 spex_cli-0.1.2.tar.gz.
File metadata
- Download URL: spex_cli-0.1.2.tar.gz
- Upload date:
- Size: 412.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
57e82b71bd8873100db826cd16d89ea0eedbb44798e8f97da02d2043814465d7
|
|
| MD5 |
bf267c3d0e6be30800001cd097e16670
|
|
| BLAKE2b-256 |
0aa51046b7803dcb5d7563880bed1c6f146397a427d78b4ddf7ae1fbcbb4eef2
|
File details
Details for the file spex_cli-0.1.2-py3-none-any.whl.
File metadata
- Download URL: spex_cli-0.1.2-py3-none-any.whl
- Upload date:
- Size: 56.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dba36c8b12a0548006ace2fb655e9536180dd8a681077fba3aa3541a3b3e7859
|
|
| MD5 |
ed9a6af2485da7406717ef50b52734f4
|
|
| BLAKE2b-256 |
ac6c15c596cfb914ad685fe4dc2f8d1f7869a2af468891d8345b6d754348cf71
|