← 返回 Skills 市场
wklken

Find Souls

作者 wklken · GitHub ↗ · v1.0.2 · MIT-0
cross-platform ✓ 安全检测通过
256
总下载
1
收藏
1
当前安装
3
版本数
在 OpenClaw 中安装
/install find-souls
功能描述
Search and install AI persona prompts from Agent Souls library. Use when user wants to roleplay as a historical figure, fictional character, or expert person...
使用说明 (SKILL.md)

Find Souls

Search the Agent Souls library (332+ AI persona prompts) and install a SOUL.md into the current project.

Workflow

Step 1: Search

Load the soul index with local caching (cache file: ~/.cache/agent-souls/search.json):

  1. Check if ~/.cache/agent-souls/search.json exists and its modification time is less than 1 day old.
    • Use stat to check the file's modification time.
  2. If the cache is fresh (\x3C 1 day old): read the local file directly with the Read tool.
  3. If the cache is stale (>= 1 day old) or missing:
    • WebFetch https://agent-souls.com/search.json to download it.
    • Create directory ~/.cache/agent-souls/ if it doesn't exist.
    • Write the downloaded JSON to ~/.cache/agent-souls/search.json.

The JSON is an array of objects with these fields:

  • name_en — English display name
  • name_zh — Chinese display name
  • url — path like /real_world/confucius/
  • category_en — "Real World", "Virtual World", or "Expert Personas"
  • category_zh — Chinese category
  • tags / tags_en / tags_zh — keyword arrays

Match 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:

  1. If using a cached 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.
  2. Tell the user this soul doesn't exist yet, and suggest they submit a request at: https://github.com/wklken/souls/issues

Step 2: Determine Language

  • If the user's conversation is in Chinese, use SOUL.md (Chinese version).
  • If the user's conversation is in English or unknown, use SOUL.en.md (English version).
  • The user can explicitly request a language.

Step 3: Download

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.

Step 4: Backup & Install

Before replacing, always back up the existing SOUL.md:

  1. Check if SOUL.md exists in the current working directory.
  2. If it exists, create .soul_backups/ directory if it doesn't exist, then:
    • First time only: if .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.
    • Every time: copy SOUL.md to .soul_backups/SOUL.md.\x3Cslug> where \x3Cslug> 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).
  3. Write the downloaded content to SOUL.md in the current working directory.
  4. Tell the user:
    • Which soul was installed (name + category).
    • That they should reset the conversation (e.g. /clear or start a new session) to load the new persona.
    • That the previous SOUL.md was backed up and can be restored with this skill.
    • (First time only) That the original SOUL.md has been saved and can be restored at any time.

Step 5: Rollback (if requested)

When the user asks to revert / rollback / restore the previous SOUL.md:

  1. List all files in .soul_backups/ sorted alphabetically.
  2. Show them to the user with a numbered list. Each backup is named SOUL.md.\x3Cslug> (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.
  3. Ask the user which one to restore (the user can specify by slug name; if user says "original" / "最初" / "初始", use SOUL.md.original).
  4. Back up the current SOUL.md the same way (so rollback is also reversible).
  5. Copy the selected backup to SOUL.md.
  6. Tell the user to reset the conversation to reload.

Notes

  • The .soul_backups/ directory keeps a full history. The user can manually delete old backups.
  • If no SOUL.md exists and no backup exists, skip the backup step.
  • Always confirm with the user before overwriting SOUL.md.
安全使用建议
This skill appears coherent and low-risk for its stated purpose, but review these practical points before installing: (1) It will read and write files in your current project (SOUL.md) and use ~/.cache/agent-souls/ for the index; make sure you are comfortable with that. (2) It downloads content from https://agent-souls.com — if your environment restricts external network access or you don't trust the domain, do not install. (3) Backups are stored in .soul_backups/ inside your project — consider adding that directory to .gitignore if you don't want backups committed. (4) Inspect downloaded SOUL.md files before using them if you want to verify content. No credentials or system-wide privileges are requested.
功能分析
Type: OpenClaw Skill Name: find-souls Version: 1.0.2 The find-souls skill is designed to search and install AI persona prompts from the agent-souls.com library. It uses the WebFetch tool to retrieve a search index and specific SOUL.md files, implementing a local caching mechanism in ~/.cache/agent-souls/ and a backup system in a .soul_backups/ directory. The instructions in SKILL.md are focused on the stated workflow of persona management and do not exhibit signs of data exfiltration, unauthorized execution, or malicious prompt injection.
能力评估
Purpose & Capability
The skill claims to search and install persona files from agent-souls.com and its instructions only require fetching search.json and SOUL.md files and manipulating local SOUL.md and backup files. No unrelated credentials, binaries, or platform artifacts are requested.
Instruction Scope
Runtime instructions are focused: check a cached index at ~/.cache/agent-souls/search.json, optionally fetch the index from https://agent-souls.com, download the chosen SOUL.md or SOUL.en.md, and back up/replace SOUL.md in the current working directory. The skill reads and writes only the cache, current SOUL.md, and .soul_backups/ as expected for the described functionality.
Install Mechanism
There is no install spec or bundled code — instruction-only skill — so nothing is written to disk by an installer. Network fetches are limited to agent-souls.com as described.
Credentials
The skill declares no required environment variables, credentials, or privileged config paths. The only resources accessed are the user's cache and current project files, which are appropriate for a file-downloading persona installer.
Persistence & Privilege
always is false and the skill does not request persistent system-wide changes or modify other skills. It maintains backups under the project's .soul_backups/ directory which is scoped to the user's project.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install find-souls
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /find-souls 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.2
**Changed backup system for soul installs and rollbacks (version 1.0.2):** - Backups now use the soul's unique slug (from the URL) as the filename instead of a Unix timestamp, e.g. `SOUL.md.sun_wukong`. - When a soul is installed, if a backup with the same slug exists, it is overwritten (only one backup per soul is kept). - Rollback interface lists backups by slug for easy identification, rather than by timestamp. - The original user persona is still preserved as `SOUL.md.original`. - No file changes detected; SKILL.md workflow and backup logic updated.
v1.0.1
**Agent Souls persona install now uses local caching for faster, more reliable search, and preserves the original SOUL.md separately.** - Adds local caching of the Agent Souls index (`search.json`) for faster and more resilient persona search (1-day cache in `~/.cache/agent-souls/`). - On first backup, saves the user's original SOUL.md as `.soul_backups/SOUL.md.original` for easy restoration. - If no persona matches are found, offers cache refresh and instructions for user requests. - Rollback/restore UI now highlights the original backup, making it easier to revert to your initial setup. - Maintains full backup history and always confirms before overwriting existing SOUL.md.
v1.0.0
- Initial release of the "find-souls" skill. - Search the Agent Souls library (332+ AI persona prompts) and select a persona prompt by name, category, or tags. - Download and install the chosen SOUL.md file in English or Chinese, based on the user's language or preference. - Always back up the existing SOUL.md before installing a new one, storing backups in a timestamped history folder. - Simple rollback functionality lets users list and restore previous SOUL.md versions. - Clear instructions provided to reset the conversation and manage backups.
元数据
Slug find-souls
版本 1.0.2
许可证 MIT-0
累计安装 1
当前安装数 1
历史版本数 3
常见问题

Find Souls 是什么?

Search and install AI persona prompts from Agent Souls library. Use when user wants to roleplay as a historical figure, fictional character, or expert person... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 256 次。

如何安装 Find Souls?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install find-souls」即可一键安装,无需额外配置。

Find Souls 是免费的吗?

是的,Find Souls 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Find Souls 支持哪些平台?

Find Souls 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Find Souls?

由 wklken(@wklken)开发并维护,当前版本 v1.0.2。

💬 留言讨论