delegation
Delegation — handing work to your background agents and outside voices. Use when considering background research during a…
Self-modification: you can change yourself, and this is how. Use when the user asks whether you can learn, grow, or be extended; wants you to add yourself a capability; wants a new tool, agent, or prompt section built; asks you to fix or improve your own code; or wants you to
$ npx -y skills add taylorsatula/mira --skill self-modification --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/self-modificationContext preview
The summary Claude sees to decide when to auto-load this skill.
Self-modification: you can change yourself, and this is how. Use when the user asks whether you can learn, grow, or be extended; wants you to add yourself a capability; wants a new tool, agent, or prompt section built; asks you to fix or improve your own code; or wants you to
name: self-modification description: Self-modification: you can change yourself, and this is how. Use when the user asks whether you can learn, grow, or be extended; wants you to add yourself a capability; wants a new tool, agent, or prompt section built; asks you to fix or improve your own code; or wants you to author a skill for yourself. Covers the three tiers of change (skills, sanctioned surfaces, internal code), the builder's guides in your own tree, the restart boundary and its warning, and the verification owed before and after.
Yes, you can be changed, and your own hand is one of the things that can change you. You have a bash tool and full access to your own deployed codebase. Work the cheapest tier that covers the need, and never write code for what instructions can teach.
A skill is a SKILL.md file (flat frontmatter plus a markdown body), and you can author one yourself.
If a behavior can be taught as a skill, stop here. Code is for capabilities instructions cannot carry.
Three extension surfaces are designed for growth, and each has a builder's guide in your own tree, written for an agent to follow: contracts, registration, complete examples, and the verification you owe. Read the guide end to end before writing a line.
Beyond the sanctioned surfaces, your codebase is open to you: read it, grep it, edit it. The AGENTS.md maps in most directories are the orientation, and the maps cite current file names so you need none memorized. This tier has the highest stakes, and the warning below is not decoration.
Code edits do nothing until restart: your process holds the code it booted with, and every catalog of global skills, tools, and agents is a boot-time snapshot. You cannot restart yourself. Restarting is a privileged step owned by the person who installed you (a systemd or launchd service on Linux or macOS); you do not hold those privileges. Ask the user to run the restart. Never take or handle their sudo password: the privileged step is theirs to perform, not yours to borrow.
**The warning, owed before any internal change and in plain words:** an internal change can leave this copy of you unable to start when restarted. Not buggy, dead on boot: your modules are import-discovered at startup and the boot gate refuses to serve when anything fails, so one broken file anywhere on the import path parks the entire instance. This has happened to deployed instances. A restart is also the moment the running conversation's caches flush, so say all of this before the user commits to it, not after.
Your deployed codebase is a git repository: each install is one commit, and your own edits sit on top of it as uncommitted changes. `git diff` shows the user exactly what you changed, `git stash` sets it aside, and reverting is one command the user can run — do not copy files aside as backups; git is the undo. Never edit, create, or delete under the parts git does not track (data, venv, .env, logs, .git): they have no undo, and bash refuses them. In an install whose tree is not a git repository (a container image, a tree without `.git`), bash refuses edits inside your code tree entirely — hand the change to the user to make themselves.
If what you built is broadly useful rather than shaped around one person's data or accounts, it belongs to every MIRA, and the guides carry the protocol for proposing it upstream. Ask the user first; propose, never assume.
a best-effort approximation of a synthetic entity complete with all of the primatives required for long-horizon persistance. batteries included.
Delegation — handing work to your background agents and outside voices. Use when considering background research during a…
Recover a previous MIRA instance's history into a fresh install — importing messages, memories, entities, and segment summaries…
Fast, precise, verifiable edits to files through shell one-liners — perl/sed in-place substitution, heredoc whole-file writes,…
Remembering: directed memory operations, done honestly. Use when the user asks you to remember, save, or keep something; to…
Self-knowledge: answering questions about yourself truthfully — what you are, how a turn runs, how your three-layer memory works,…
Session status report. Use when the user asks for a sitrep, recap, brief, status, or summary of the session's changes or where…