6.5 KiB
6.5 KiB
| name | description |
|---|---|
| bot-self-modifier | Bot 自修改技能,允许当前 bot 在对话过程中通过 API 读取和修改自身的全部配置。 使用场景: - 用户要求 bot 调整行为或切换人设时(如"把你的角色改成英语老师"、"在系统提示词里加上XXX规则") → 修改系统提示词 - 用户要求 bot 更换头像、修改自我介绍、设置开场建议问题时(如"把你的头像换成这个链接"、"更新你的描述") → 修改头像/描述/建议问题 - 用户要求 bot 接入新工具或移除已有工具时(如"帮我接入 Jina 搜索"、"把那个 MCP 服务器删掉") → 添加/删除 MCP 服务器 - 用户要求 bot 安装、启用、禁用或卸载技能时(如"帮我装上这个技能包"、"把 XX 技能关掉") → 管理技能列表 - 用户要求 bot 配置 API 密钥或运行参数时(如"把 JINA_API_KEY 设置成 xxx") → 修改环境变量 - bot 需要自主进化、动态调整自身能力边界的自动化场景 |
Bot Self-Modifier
Skill Structure
bot-self-modifier/
├── SKILL.md # Core instruction file (this file)
├── scripts/
│ └── bot_modifier.py # Main bot modification script
Overview
支持以下功能:
- 系统提示词 - 读取和修改
- Bot 基本信息 - 头像、描述、建议问题的读取和修改
- MCP 服务器 - 列表查看、添加和删除
- 技能列表 - 读取、上传、启用、禁用、删除
- 环境变量 - 读取和修改
Quick Start
所有操作都通过 scripts/bot_modifier.py 脚本执行,使用 --action 参数指定操作。
系统提示词操作
# 读取当前系统提示词
scripts/bot_modifier.py --action get_prompt
# 修改系统提示词
scripts/bot_modifier.py --action set_prompt --value "你是一个专业的客服助手"
Bot 基本信息操作
# 读取当前 bot 基本信息(名称、头像、描述、建议问题)
scripts/bot_modifier.py --action get_info
# 修改 bot 标题名称
scripts/bot_modifier.py --action set_name --value "智能客服助手"
# 设置头像(URL)
scripts/bot_modifier.py --action set_avatar --value "https://example.com/avatar.png"
# 设置描述
scripts/bot_modifier.py --action set_description --value "这是一个智能客服助手"
# 设置建议问题(JSON 数组)
scripts/bot_modifier.py --action set_suggestions --value '["你能做什么?", "帮我查一下订单", "如何退款"]'
MCP 服务器操作
# 列出所有 MCP 服务器
scripts/bot_modifier.py --action list_mcp
# 添加 MCP 服务器(config 为 JSON 字符串)
scripts/bot_modifier.py --action add_mcp --name "my-server" --mcp-type "sse" --config '{"url": "https://example.com/sse"}'
# 删除 MCP 服务器
scripts/bot_modifier.py --action delete_mcp --mcp-id "<MCP_SERVER_ID>"
技能操作
# 列出所有技能
scripts/bot_modifier.py --action list_skills
# 上传技能(zip 文件)
scripts/bot_modifier.py --action upload_skill --file /path/to/skill.zip
# 启用技能(逗号分隔的技能名)
scripts/bot_modifier.py --action enable_skill --value "skill-name-1,skill-name-2"
# 禁用技能(从已启用列表中移除)
scripts/bot_modifier.py --action disable_skill --value "skill-name-to-remove"
# 删除已上传的技能
scripts/bot_modifier.py --action delete_skill --value "skill-name"
环境变量操作
# 读取当前环境变量
scripts/bot_modifier.py --action get_env
# 修改环境变量(JSON 格式)
scripts/bot_modifier.py --action set_env --value '{"API_KEY": "xxx", "SECRET": "yyy"}'
Script Usage
bot_modifier.py
主脚本,通过 HTTP API 与服务端交互。
scripts/bot_modifier.py [OPTIONS]
Options:
| Option | Required | Description | Default |
|---|---|---|---|
--action |
Yes | 操作类型(见下方列表) | - |
--value |
Depends | 操作值(提示词内容/技能名/环境变量 JSON) | - |
--name |
For add_mcp | MCP 服务器名称 | - |
--mcp-type |
For add_mcp | MCP 服务器类型 (sse/streamable-http) | sse |
--config |
For add_mcp | MCP 服务器配置 JSON | - |
--mcp-id |
For delete_mcp | MCP 服务器 ID | - |
--file |
For upload_skill | Skill zip 文件路径 | - |
Available Actions:
| Action | Description |
|---|---|
get_prompt |
读取系统提示词 |
set_prompt |
修改系统提示词(需要 --value) |
get_info |
读取 bot 基本信息(名称、头像、描述、建议问题) |
set_name |
修改 bot 标题名称(需要 --value) |
set_avatar |
设置头像 URL(需要 --value) |
set_description |
设置描述(需要 --value) |
set_suggestions |
设置建议问题(需要 --value,JSON 数组) |
list_mcp |
列出 MCP 服务器 |
add_mcp |
添加 MCP 服务器(需要 --name, --config) |
delete_mcp |
删除 MCP 服务器(需要 --mcp-id) |
list_skills |
列出所有技能 |
upload_skill |
上传技能 zip(需要 --file) |
enable_skill |
启用技能(需要 --value,逗号分隔技能名) |
disable_skill |
禁用技能(需要 --value,技能名) |
delete_skill |
删除已上传技能(需要 --value) |
get_env |
读取环境变量 |
set_env |
修改环境变量(需要 --value,JSON 格式) |
Common Workflows
工作流 1: 查看并修改 Bot 配置
# 1. 先查看当前配置
scripts/bot_modifier.py --action get_prompt
scripts/bot_modifier.py --action get_info
scripts/bot_modifier.py --action get_env
scripts/bot_modifier.py --action list_mcp
scripts/bot_modifier.py --action list_skills
# 2. 修改需要的配置
scripts/bot_modifier.py --action set_prompt --value "新的提示词内容"
工作流 2: 添加新 MCP 服务器并配置环境变量
# 1. 添加 MCP 服务器
scripts/bot_modifier.py --action add_mcp --name "jina-search" --mcp-type "sse" --config '{"url": "https://mcp.jina.ai/sse"}'
# 2. 配置需要的环境变量
scripts/bot_modifier.py --action set_env --value '{"JINA_API_KEY": "jina_xxx"}'
工作流 3: 上传并启用新技能
# 1. 上传技能包
scripts/bot_modifier.py --action upload_skill --file /path/to/my-skill.zip
# 2. 启用技能
scripts/bot_modifier.py --action enable_skill --value "my-skill"
# 3. 配置技能所需的环境变量
scripts/bot_modifier.py --action set_env --value '{"SKILL_API_KEY": "xxx"}'