The Self Improving Agent by nith studio.
Used across our projects to turn agent experience into reusable, reviewed skills. SIA gives each kind of work an agent, each agent a versioned skill, and each run a report. The next run starts with the lessons worth keeping.
The improvement happens in readable Markdown. Your model does the work; you review what it learned. No model training, hidden memory service, or magic "it gets smarter" button. Unfortunately, those still mostly come with a sales deck.
task → brief + skill → agent → deliverable + report
↑ ↓
next run ← reviewed lesson + skill version
Python 3.10 or newer. No runtime dependencies or API keys.
python -m pip install "git+https://github.com/BuildAppolis/sia.git"Or clone this repository and run python -m pip install .. The distribution is
named nith-sia; the command is sia. python -m sia works too. The initial
release is installed from Git or source; it is not published on PyPI.
cd your-project
sia init
sia new-agent writer --role "Writes guides from verified sources." --tools Read,Write,Edit,Bash,Glob,Grep
sia new-skill write-guide --purpose "Write a short, verified guide for a named reader." --owner writerOpen .claude/skills/sia-write-guide/SKILL.md and replace the placeholder
procedure with real steps. Then:
sia on
sia brief writer --task "Write a setup guide from README.md; save it in this run's output directory." --out brief.mdGive the brief to the named agent in your host. SIA does not launch agents.
After reviewing the deliverable and any proposed lesson, save the agent's report
to .claude/sia/out/r0001/report.md and record the run:
sia report writer --run r0001 --file .claude/sia/out/r0001/report.md
sia annotate r0001 --note "Checked the guide's commands against the project."
sia checkUse the actual run ID printed by brief. If you changed the skill, run
sia bump-skill write-guide --note "what improved and why". An unchanged skill
does not need a version bump. No new lesson is a valid outcome.
| Host | Setup | What SIA provides |
|---|---|---|
| Claude Code | sia init --claude-hooks |
Project agents, skills, /sia, and context hooks |
| Codex | Follow the adapter guide | Explicit status checks, shared skills and reports, tool translation |
| Other agents | Read the generated protocol and pass briefs manually | The same CLI and learning records |
Claude setup merges settings without removing unrelated hooks or permissions.
It refuses to replace an existing, different /sia command. The CLI must be
available on the host's PATH. SIA starts off in new projects; sia off keeps
all learning on disk.
- Agents, their roles, owned skills, and declared tool grants.
- Versioned skills with procedures, checks, and a bounded lessons section.
- Run briefs and the skill versions they used.
- Reports, reviewer annotations, and orchestration lessons.
- Tool requests, escalation decisions, grants, and revocations.
Everything lives in the project's .claude/ directory, retained for backward
compatibility even when using another host. Each project has its own learning
store. Copy reviewed skills deliberately; there is no automatic cross-project
sync or private-history upload.
See the command reference, host setup, architecture and limitations, and migration guide.
SIA is a local workflow and audit tool, not a security sandbox. Its grants
record intended access; your host enforces actual permissions. --by user is
an actor label, not proof of consent. A process that can edit the files can
change the records. Read SECURITY.md before using it with sensitive
projects or untrusted agents.
The package makes no network requests, contains no model client, and sends no telemetry. Agents you run through your host may have their own network access.
python -m pip install -e .
python -m unittest discover -s tests -v
python -m pip install build
python -m buildTests use temporary projects. They cover the run lifecycle, grant escalation, revocation, legacy upgrade, root discovery, hook setup, and command locking. CI runs on Windows and Linux with Python 3.10 and 3.13, then builds wheel/sdist.
Contributions: CONTRIBUTING.md. Licensed under MIT.