A zero-dependency skill memory, testing, and refinement engine for AI agents.
Project description
Agent Skill System
Structured, self-evolving skill memory for AI agents — with built-in regression tests.
AI agents forget. Teach one to review contracts, and tomorrow it makes the same mistakes — no memory across sessions, no way to catch degradation.
agent-skill-system turns corrected behavior into versioned, testable skill packages. Each skill bundles instructions, accumulated experience, and regression tests into a standalone directory. Next time, the engine matches the task type, loads context, and avoids repeating past errors.
vs Addy Osmani's agent-skills
agent-skills (63K stars) is a catalog of human-written prompt templates for one-shot tasks.
This solves a different problem: persistent, self-evolving skill memory.
- Self-evolving —
.memory.mdauto-logs successes/failures so skills improve with use instead of going stale. - Regression tests — 8 assertion patterns verify no degradation.
- Auto-repair —
refiner.pydiagnoses failures, patches SKILL.md, reruns tests (up to 3 rounds). - Portable — Each skill is a directory.
cp -rto any agent.
Think agent-skills = recipe book. This = chef's notebook that learns.
Quick start
pip install agent-skill-system
agent-skill list # what skills are available?
agent-skill search "contract" # find the right skill
agent-skill load contract-review # print skill + memory context
With LLM backend (for creating/refining skills):
export OPENAI_API_KEY="sk-..."
export LLM_MODEL="gpt-4o"
agent-skill health contract-review # run regression tests
agent-skill register my-new-skill # register a new skill
agent-skill scan # auto-register skills added to skills/
Lifecycle: Create → Evaluate → Refine → Register → Use → Remember
| Stage | Engine | What |
|---|---|---|
| Create | creator.py |
Conversation trace → SKILL.md + test cases |
| Evaluate | test_runner.py |
8 assertion patterns verify the skill |
| Refine | refiner.py |
Diagnose failures → patch → retry (max 3×) |
| Remember | memory.py |
.memory.md accumulates successes/failures |
Skill structure
skills/contract-review/
├── SKILL.md # How to do the task correctly
├── .memory.md # What went right/wrong — auto-accumulated
├── config.json # Trigger keywords, version, metadata
└── tests/ # Regression tests (8 assertion types)
Each skill is a standalone directory — no framework lock-in.
vs other approaches
| Prompt Eng | RAG | Cursor Rules | This | |
|---|---|---|---|---|
| Creates from experience | ❌ | ❌ | ❌ | ✅ |
| Independent memory | ❌ | ❌ | ❌ | ✅ |
| Automated tests | ❌ | ❌ | ❌ | ✅ |
| Self-healing on failure | ❌ | ❌ | ❌ | ✅ |
| Cross-agent portable | Manual | Tied to DB | Tied to editor | ✅ cp |
| Training needed | None | None | None | None |
License
MIT
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 agent_skill_system-1.0.6.tar.gz.
File metadata
- Download URL: agent_skill_system-1.0.6.tar.gz
- Upload date:
- Size: 45.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ae359d0eaf4f37bf69d913f73408b24b22febe70eeef58a6b3008241d0d9aeb
|
|
| MD5 |
5c7e014e42b29213d6bcfc8b769c2e19
|
|
| BLAKE2b-256 |
8bf321aa1a688f9a05e4144db06483d139afcc3336d090f9bc1ce22886c70522
|
File details
Details for the file agent_skill_system-1.0.6-py3-none-any.whl.
File metadata
- Download URL: agent_skill_system-1.0.6-py3-none-any.whl
- Upload date:
- Size: 56.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9bf8708934d5634c72aa10de4c071c22d7a4558b0a51583743536e96d4cde154
|
|
| MD5 |
8ad207a9ba0d4b1c819847c87486139a
|
|
| BLAKE2b-256 |
ccd70139247c3f6acdf9a4c31032aa02ec4133857391b2c60f4e2f8c1802408f
|