Search the Agent Souls library (332+ AI persona prompts) and install a SOUL.md into the current project.
Load the soul index with local caching (cache file: ~/.cache/agent-souls/search.json):
~/.cache/agent-souls/search.json exists and its modification time is less than 1 day old.stat to check the file's modification time.Read tool.WebFetch https://agent-souls.com/search.json to download it.~/.cache/agent-souls/ if it doesn't exist.~/.cache/agent-souls/search.json.The JSON is an array of objects with these fields:
name_en — English display namename_zh — Chinese display nameurl — path like /real_world/confucius/category_en — "Real World", "Virtual World", or "Expert Personas"category_zh — Chinese categorytags / tags_en / tags_zh — keyword arraysMatch the user's query against name_en, name_zh, tags, tags_en, tags_zh, and category_en / category_zh. Show the top matches (up to 10) in a numbered list with name, category, and tags. Ask the user to pick one.
If no matches are found:
search.json, tell the user the cache may be outdated and offer to refresh it (delete the cache and re-download). If after refresh there are still no results, go to step 2.SOUL.md (Chinese version).SOUL.en.md (English version).Construct the download URL:
https://agent-souls.com{url}SOUL.md # Chinese
https://agent-souls.com{url}SOUL.en.md # English
Where {url} is the url field from search.json (e.g. /real_world/confucius/).
Use WebFetch to download the raw content of the chosen SOUL file.
Before replacing, always back up the existing SOUL.md:
SOUL.md exists in the current working directory..soul_backups/ directory if it doesn't exist, then:.soul_backups/SOUL.md.original does not exist, copy SOUL.md to .soul_backups/SOUL.md.original. This preserves the user's original persona and is never overwritten..soul_backups/SOUL.md. where is the soul's unique identifier extracted from the url field (the last non-empty path segment, e.g. /virtual_world/sun_wukong/ → sun_wukong, so the backup file is SOUL.md.sun_wukong). If a backup with the same slug already exists, overwrite it (only the latest version of each soul needs to be kept).SOUL.md in the current working directory./clear or start a new session) to load the new persona.When the user asks to revert / rollback / restore the previous SOUL.md:
.soul_backups/ sorted alphabetically.SOUL.md. (e.g. SOUL.md.sun_wukong, SOUL.md.confucius), making it easy to identify which soul each backup contains. Highlight SOUL.md.original as "[Original]" if it exists — this is the user's initial persona before any soul was installed.SOUL.md.original).SOUL.md..soul_backups/ directory keeps a full history. The user can manually delete old backups.共 1 个版本