From self-improvement
Use when the user gives feedback about agent behavior, says "remember this", asks to improve instructions, or asks to create/update a skill, hook, plugin, or durable workflow rule. Routes feedback to hooks, skills, project code, or instruction files instead of reflexively appending to AGENTS.md/CLAUDE.md.
How this skill is triggered — by the user, by Claude, or both
Slash command
/self-improvement:self-improvementThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
<post-update-broadcast>
if [ -n "${CLAUDE_PLUGIN_ROOT:-}" ]; then
node "${CLAUDE_PLUGIN_ROOT}/bin/check-broadcast"
fi
If the command produces output, the self-improvement plugin was updated since the last time you saw the broadcast on this machine. Show the output verbatim in a markdown block, prefixed with one short sentence ("self-improvement was updated; here is what changed."). Then continue with the rest of this skill.
If the command produces no output, say nothing about updates and proceed.
The helper writes the sentinel only when stdout was non-empty, so a silent
run does not mark the version as seen. In agents that do not set
CLAUDE_PLUGIN_ROOT the broadcast is intentionally skipped; that is the
guard's purpose, not an oversight.
Turn user feedback into a durable improvement. Do not default to adding a line to the nearest instruction file. First choose the strongest enforcement level, then the broadest correct scope, then edit the source that owns that behavior.
When the feedback is clear, apply the change. Do not stop at advice unless the change would cross an explicit approval gate or the target cannot be found.
Walk both ladders before editing anything:
The common failure is pinning feedback to the current repo's AGENTS.md or
CLAUDE.md because that file is nearby. Nearby is not the same as correct.
Pick the first level that can structurally address the feedback.
AGENTS.md, CLAUDE.md, user-level
instructions, and project instructions are broad reminders; they are weaker
than hooks, skills, and code.Other targets can sit between these levels: helper scripts in bin/, fixtures,
tool config, generated adapters, or project-local docs. Use the same principle:
prefer the target that changes future behavior closest to the failure point.
After choosing the enforcement level, choose the broadest scope where the rule still holds.
Where the feedback arose is evidence, not the scope. Ask whether the same rule would hold in a sibling repo or another stack before choosing a narrow target.
If the current project is a plugin marketplace, user-level instruction edits are not a valid fix for plugin-related feedback. Marketplace users need the fix in the plugin source.
Marketplace indicators include:
.claude-plugin/marketplace.json.agents/plugins/marketplace.jsonpackages/*/.claude-plugin/plugin.jsonIn a marketplace, route feedback like this:
packages/<plugin>/skills/<skill>/SKILL.md..claude-plugin/plugin.json or marketplace source.packages/<plugin>/README.md.Do not edit runtime caches as source. Caches live under agent-managed install
directories and are overwritten by plugin updates. Find the source repo under
~/github.com/<owner>/<repo>/ or use the current marketplace checkout.
Instruction files are valid only after the stronger targets do not fit.
Common targets:
AGENTS.md, CLAUDE.md, CIRCUS.md, or equivalent files in
the repo.Keep personal context out of project-level files. If a rule is personal, keep it in user-level instructions. If it is useful to other users of a plugin or repo, move it into that shared source instead.
When feedback names a skill, hook, or plugin, inspect that source before any instruction file. If the principle is already present but was missed, sharpen the source: add a clearer trigger, an explicit anti-pattern, a checkpoint, or a short example. "It already says that" is not a resolution when the miss just happened.
When no existing skill fits but the workflow is repeatable, create a skill in the appropriate marketplace or user-level skill directory. Use the active agent's skill-authoring guidance and this repo's existing package conventions.
Self-improvement is allowed to delete, shorten, merge, or simplify. Do not only append.
Prune when you find:
One clear source of truth beats mirrored reminders.
rg/file search before creating anything.If you cannot find the source, say exactly what you checked and what blocked the edit. Do not patch a cache or a generated file as a substitute.
Stop and re-walk both ladders if you catch yourself thinking:
AGENTS.md/CLAUDE.md" while the feedback names a skill,
hook, plugin, command, or generated target.git-discipline hook/skill sources, not one project's instruction file.travel_to in time-sensitive Rails specs" is stack-specific; use
a Rails-scoped source, not a single app's local note unless no shared Rails
source exists.Searches MemPalace before answering questions about past work, people, projects, or prior decisions. Returns verbatim stored content instead of guessing from model memory.
Guides Payload CMS config (payload.config.ts), collections, fields, hooks, access control, APIs. Debugs validation errors, security, relationships, queries, transactions, hook behavior.
Implements vector databases with Pinecone, Weaviate, Qdrant, Milvus, pgvector for semantic search, RAG, recommendations, and similarity systems. Optimizes embeddings, indexing, and hybrid search.
npx claudepluginhub epologee/laicluse-agent-fieldkit --plugin self-improvement