Install
$ agentstack add skill-francescoborzi-agent-toolkit-self-improve ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Self-improve
Suggest durable improvements to the skill or governing doc that should have steered the agent, so the next session gets it right without being told again — and apply them only after the user approves. The skill proposes; the user stays in control of every change. Three ways in:
- Manual — the user invokes
/self-improveto deliberately improve a skill or doc. - Self-triggered — the agent notices it was corrected on something a skill/doc governs (or
should). Don't silently correct and move on, but don't derail the task either: note the lesson, finish what the user asked for, and offer to persist it at the next natural breakpoint.
- Driven by another skill — a caller hands over content that is already durable guidance plus an
already-chosen target (scope, form, and path — possibly a new file). It resolved both with the user, so skip steps 1-2 and run only draft + apply.
"Skill/doc" means any standing instruction: a SKILL.md, AGENTS.md/CLAUDE.md, a coding-standards or convention doc, a rules file — anything that guides future agents.
Hard rules
- Confirm before applying. The skill's job is to suggest, never to change text on its own.
Never edit a skill or doc without the user's explicit go-ahead on the concrete change — present it as a diff and apply only on approval, whether the user invoked the skill or the agent self-triggered. State plainly whether a change is not yet applied (awaiting approval) or already applied (and where), so the user never has to ask.
- **Editing any skill/doc → always route the write through one of two skills to keep it compact;
never edit it directly.** A SKILL.md goes through [compact-skill-creator](../compact-skill-creator/SKILL.md); any other doc (rule, AGENTS.md/CLAUDE.md, convention doc) goes through [compact-docs-writer](../compact-docs-writer/SKILL.md). Actually invoke the skill and follow its workflow before drafting or applying; reading it, applying its principles by hand, or naming it after a direct edit does not count.
Recognize a persistable correction (self-trigger)
Signals the agent was corrected in a way worth persisting: the user rejects or reverts a choice ("no, do X instead"), states a standing preference ("we always…", "never…"), or redirects an action the agent took under a skill or doc.
**Only persist a durable lesson** — one that generalizes and will recur. Skip one-off, task-specific tweaks that won't apply next time; persisting those pollutes the docs. Whenever unsure whether it generalizes, ask the user.
Workflow
- Capture the lesson. State, in one line, the general rule the feedback implies — not the
surface incident ("Mock external HTTP in unit tests," not "the agent mocked the wrong call").
- Locate the target. Find which skill/doc governs this action (search skills,
AGENTS.md/
CLAUDE.md, convention docs). If one exists, it's the target — and if that rule already existed yet failed to steer the agent, the discoverability gap is the lesson, not a no-op: don't stop at "the rule exists." Diagnose why it didn't fire (buried, in a doc the agent wouldn't open for this action, scoped or worded too narrowly, or unenforced) and fix that root cause: surface it where the agent looks, tighten its scope, cross-reference it, or propose mechanical enforcement (e.g. a lint rule). If none fits, propose a new target and ask before drafting: a new skill for a recurring workflow, a new rule for a standing constraint, or the most fitting doc otherwise. Ask whenever unsure.
- Draft the edit. Write the rule into the target as the least text that fully captures it:
agent-agnostic ("the agent", never a vendor name), no process narration, no restating — a real durable instruction. Prefer tightening or extending an existing rule over appending a new one. If the lesson reverses an existing rule, surface that explicitly — show the old rule, the feedback, and the proposed replacement — and never overwrite it silently; the contradiction may mean the feedback is context-specific, not a true reversal.
- Apply the edit. Route the write per the Hard rules —
SKILL.md→ compact-skill-creator, any
other doc → compact-docs-writer — presenting a diff and applying only on approval.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: FrancescoBorzi
- Source: FrancescoBorzi/agent-toolkit
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.