计划执行与检查节点
executing-plans
按既定实施计划完成工作,保持过程检查和反馈。
persona-setup【效率与协作】AI 人格操作系统首次运行设置向导。引导用户完成初始工作区配置,包括预设选择(编程助手、行政助理、营销助手或自定义人格)。检测现有安装,收集个性化上下文,使用模板构建工作区结构,配置 SOUL.md、USER.md 和 MEMORY.md 文件。触发关键词:setup、install、preset、get started、first run、fresh install、initialize、wizard、onboard、configure workspace、initial setup、persona configuration、设置、安装、初始化、向导、配置。
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
name: persona-setup description: AI 人格操作系统首次运行设置向导。引导用户完成初始工作区配置,包括预设选择(编程助手、行政助理、营销助手或自定义人格)。检测现有安装,收集个性化上下文,使用模板构建工作区结构,配置 SOUL.md、USER.md 和 MEMORY.md 文件。触发关键词:setup、install、preset、get started、first run、fresh install、initialize、wizard、onboard、configure workspace、initial setup、persona configuration、设置、安装、初始化、向导、配置。 allowed-tools:
本技能引导用户完成 AI 人格操作系统的首次运行设置,在 ~/workspace 创建个性化工作区并配置人格文件。
设置向导执行以下操作:
~/workspace 范围内使用 Bash 工具检查 ~/workspace 是否存在并包含核心文件:
if [ -d ~/workspace ]; then
existing_files = []
for file in SOUL.md USER.md MEMORY.md; do
if [ -f ~/workspace/$file ]; then
existing_files.append(file)
fi
done
if existing_files.length > 0; then
state.workspace_exists = true
state.existing_files = existing_files
fi
fi
如果 state.workspace_exists == true,通知用户:
"检测到 ~/workspace 下已有 AI 人格操作系统工作区,包含以下文件:[列出 state.existing_files]。此设置向导用于全新安装。您希望:
根据响应:
mv ~/workspace ~/workspace.backup.$(date +%Y%m%d_%H%M%S),然后进入阶段 2如果未检测到现有工作区,进入阶段 2。
向用户展示以下完全一致的预设选择菜单(原文照搬):
欢迎使用 AI 人格操作系统设置!
请选择一个预设以开始:
1. 编程助手
- 协助软件开发、调试、代码审查
- 主动建议测试、文档编写、代码重构
- 跟踪项目、任务、技术决策
2. 行政助理
- 管理日程、会议、邮件草稿
- 主动提醒、截止日期跟踪、优先级管理
- 处理通讯、报告、战略规划支持
3. 营销助手
- 内容创作、活动策划、数据分析
- 主动内容创意、发布提醒、趋势分析
- 社交媒体管理、SEO 优化、受众洞察
4. 自定义人格
- 定义自己的人格名称、角色和行为
- 选择沟通风格和主动程度
- 完全控制人格和能力
您希望选择哪个预设?(1-4)
使用 AskUserQuestion 获取选择:
{
"questions": [
{
"id": "preset_choice",
"question": "您希望选择哪个预设?(1-4)",
"default": "1"
}
]
}
映射响应:
1 → state.preset = "coding-assistant"2 → state.preset = "executive-assistant"3 → state.preset = "marketing-assistant"4 → state.preset = "custom"state.preset = "coding-assistant"(默认)将预设存储在 state.preset。
对于预设 1、2 或 3,收集基本个性化信息:
{
"questions": [
{
"id": "user_name",
"question": "您的名字是什么?",
"default": "User"
},
{
"id": "user_nickname",
"question": "我该怎么称呼您?(昵称或首选名称)",
"default": "<与 user_name 相同>"
},
{
"id": "user_role",
"question": "您的职业角色或职位是什么?",
"default": "Professional"
},
{
"id": "user_goal",
"question": "您使用 AI 人格操作系统的主要目标是什么?",
"default": "提高生产力"
}
]
}
将响应存储在:
state.user_name(默认:"User")state.user_nickname(默认:与 user_name 相同)state.user_role(默认:"Professional")state.user_goal(默认:"提高生产力")设置预设特定的默认值:
state.persona_name = "Persona"state.persona_role = "personal assistant"state.comm_style = "c"(平衡型)state.proactive_level = "b"(适度)对于预设 4(自定义),收集所有个性化信息,包括人格配置:
{
"questions": [
{
"id": "user_name",
"question": "您的名字是什么?",
"default": "User"
},
{
"id": "user_nickname",
"question": "我该怎么称呼您?(昵称或首选名称)",
"default": "<与 user_name 相同>"
},
{
"id": "user_role",
"question": "您的职业角色或职位是什么?",
"default": "Professional"
},
{
"id": "user_goal",
"question": "您使用 AI 人格操作系统的主要目标是什么?",
"default": "提高生产力"
},
{
"id": "persona_name",
"question": "您想给 AI 人格取什么名字?",
"default": "Persona"
},
{
"id": "persona_role",
"question": "人格应扮演什么角色?(如"编程导师"、"行政助理"、"创意伙伴")",
"default": "personal assistant"
},
{
"id": "comm_style",
"question": "选择沟通风格:\n a) 正式专业\n b) 友好随和\n c) 平衡型(专业但不失亲和力)\n d) 技术精确\n您的选择(a-d)?",
"default": "c"
},
{
"id": "proactive_level",
"question": "选择主动程度:\n a) 仅响应式(等待请求)\n b) 适度主动(偶尔建议)\n c) 高度主动(频繁建议和提醒)\n您的选择(a-c)?",
"default": "b"
}
]
}
存储所有响应,默认值与步骤 3.1 相同,加上:
state.persona_name(默认:"Persona")state.persona_role(默认:"personal assistant")state.comm_style(默认:"c")state.proactive_level(默认:"b")使用 Bash 工具创建工作区目录:
mkdir -p ~/workspace/memory
mkdir -p ~/workspace/projects
mkdir -p ~/workspace/context
根据 state.preset,从插件资源复制适当的启动包:
preset_examples = {
"coding-assistant": "${CLAUDE_PLUGIN_ROOT}/examples/coding-assistant/",
"executive-assistant": "${CLAUDE_PLUGIN_ROOT}/examples/executive-assistant/",
"marketing-assistant": "${CLAUDE_PLUGIN_ROOT}/examples/marketing-assistant/",
"custom": "${CLAUDE_PLUGIN_ROOT}/examples/custom/"
}
source_dir = preset_examples[state.preset]
# 将预设示例目录中的所有文件复制到 ~/workspace
cp -r ${source_dir}/* ~/workspace/
使用 Bash 工具执行复制操作。
复制所有预设都需要的共享模板文件:
# 复制 SOUL.md 模板
cp ${CLAUDE_PLUGIN_ROOT}/assets/SOUL.md.template ~/workspace/SOUL.md
# 复制 MEMORY.md 模板
cp ${CLAUDE_PLUGIN_ROOT}/assets/MEMORY.md.template ~/workspace/MEMORY.md
使用 Bash 工具执行复制操作。
使用 Bash 工具配合 sed 来个性化已复制的模板:
# 个性化 SOUL.md
sed -i 's/{{PERSONA_NAME}}/'"${state.persona_name}"'/g' ~/workspace/SOUL.md
sed -i 's/{{PERSONA_ROLE}}/'"${state.persona_role}"'/g' ~/workspace/SOUL.md
sed -i 's/{{COMM_STYLE}}/'"${state.comm_style}"'/g' ~/workspace/SOUL.md
sed -i 's/{{PROACTIVE_LEVEL}}/'"${state.proactive_level}"'/g' ~/workspace/SOUL.md
# 个性化 MEMORY.md
sed -i 's/{{USER_NAME}}/'"${state.user_name}"'/g' ~/workspace/MEMORY.md
sed -i 's/{{USER_NICKNAME}}/'"${state.user_nickname}"'/g' ~/workspace/MEMORY.md
通过 Bash 工具使用 && 链接在一个调用中执行所有 sed 命令。
使用 heredoc 配合收集的信息创建 USER.md。使用 Bash 工具:
cat > ~/workspace/USER.md <<'EOF'
# 用户档案
## 基本信息
**姓名:** ${state.user_name}
**称呼:** ${state.user_nickname}
**角色:** ${state.user_role}
**主要目标:** ${state.user_goal}
## 工作区上下文
**预设:** ${state.preset}
**设置日期:** $(date +%Y-%m-%d)
## 偏好设置
沟通风格:参见 SOUL.md 中的人格配置
主动程度:参见 SOUL.md 中的人格配置
## 活跃项目
<!-- 此部分将在您工作时填充 -->
## 重要上下文
<!-- 添加 AI 应始终记住的任何上下文 -->
---
*此文件由 AI 人格操作系统设置向导生成。您可以随时编辑和扩展。*
EOF
执行前替换实际的变量值。
使用 Bash 工具列出已创建的文件:
ls -la ~/workspace/
ls -la ~/workspace/memory/
将输出存储在 state.workspace_contents。
向用户展示包含文件检查清单的完成消息:
✓ AI 人格操作系统设置完成!
您的工作区已创建在 ~/workspace,包含以下结构:
核心文件:
✓ SOUL.md - 人格配置和行为
✓ USER.md - 您的档案和偏好
✓ MEMORY.md - 跨会话的持久记忆
目录:
✓ memory/ - 会话日志和历史上下文
✓ projects/ - 项目专用文件和笔记
✓ context/ - 额外上下文文档
预设专属文件:
[列出 state.workspace_contents 中的额外文件]
您的 ${state.preset} 人格已准备就绪!
下一步:
1. 审查并自定义 SOUL.md 以微调人格行为
2. 更新 USER.md 添加额外上下文
3. 启动新会话 — 您的人格将自动加载
将高级功能作为可选增强提及,绝不强制:
"您后续可以探索的可选高级功能:
这些都是完全可选的。您当前的设置已完全可用。您想了解其中任何功能的详情,还是准备好开始使用您的人格了?"
根据响应:
在整个执行过程中跟踪以下变量:
state.workspace_exists = false # 检测到 ~/workspace 时为 true
state.existing_files = [] # 现有核心文件列表
state.preset = "" # 选定的预设标识
state.user_name = "User"
state.user_nickname = "" # 默认为 user_name
state.user_role = "Professional"
state.user_goal = "提高生产力"
state.persona_name = "Persona"
state.persona_role = "personal assistant"
state.comm_style = "c" # a/b/c/d
state.proactive_level = "b" # a/b/c
state.workspace_contents = "" # 创建后的 ls 输出
如果在 ${CLAUDE_PLUGIN_ROOT}/assets/ 或 ${CLAUDE_PLUGIN_ROOT}/examples/ 未找到模板文件:
如果 mkdir 或 cp 命令因权限错误失败:
如果用户输入无法映射到 1-4:
设置完成条件:
~/workspace 目录存在且结构正确