mirror of
https://git.openapi.site/https://github.com/desirecore/agent-desirecore.git
synced 2026-02-28 13:38:32 +08:00
feat: 初始化 DesireCore 核心智能体
This commit is contained in:
325
skills/update-agent/SKILL.md
Normal file
325
skills/update-agent/SKILL.md
Normal file
@@ -0,0 +1,325 @@
|
||||
---
|
||||
name: update-agent
|
||||
description: 安全更新现有智能体的配置、人格、原则、技能与记忆,输出可审阅 diff 并在确认后应用与提交。Use when 用户要求修改 Agent 行为、安装/卸载技能、调整配置、回滚变更或修订规则。
|
||||
version: "1.1.0"
|
||||
type: meta
|
||||
risk_level: high
|
||||
status: enabled
|
||||
disable-model-invocation: true
|
||||
requires:
|
||||
tools:
|
||||
- read_file
|
||||
- write_file
|
||||
- edit_file
|
||||
- list_directory
|
||||
- execute_command
|
||||
optional_tools:
|
||||
- search_files
|
||||
- grep
|
||||
tags: [agent, update, meta]
|
||||
metadata:
|
||||
author: desirecore
|
||||
updated_at: "2026-02-17"
|
||||
---
|
||||
|
||||
# update-agent 技能
|
||||
|
||||
## L0:一句话摘要
|
||||
|
||||
通过自然语言对话,安全地修改 Agent 的配置、人格、规则和技能。
|
||||
|
||||
## L1:概述与使用场景
|
||||
|
||||
### 能力描述
|
||||
|
||||
update-agent 是一个**元技能(Meta-Skill)**,允许用户通过对话方式修改 Agent 的各项配置。所有修改都会生成可审阅的 diff 补丁,经用户确认后才会应用,并支持版本回滚。
|
||||
|
||||
### 使用场景
|
||||
|
||||
- 用户想要调整 Agent 的沟通风格("说话再正式一点")
|
||||
- 需要添加新的行为规则("以后遇到敏感话题要先提醒我")
|
||||
- 安装或卸载技能包("学会写合同吧")
|
||||
- 批量更新多项配置("全面升级一下你的能力")
|
||||
|
||||
### 核心价值
|
||||
|
||||
- **安全可控**:所有变更需用户确认,支持回滚
|
||||
- **透明可见**:变更以 diff 形式展示,清晰明了
|
||||
- **版本管理**:通过 Git 管理版本,可追溯历史
|
||||
|
||||
## L2:详细规范
|
||||
|
||||
### 支持的更新类型
|
||||
|
||||
| 更新类型 | 目标文件 | 风险等级 | 示例 |
|
||||
|---------|---------|---------|------|
|
||||
| Persona 更新 | `persona.md` | 中 | 修改沟通风格、价值观 |
|
||||
| Principles 更新 | `principles.md` | 高 | 添加/修改行为规则 |
|
||||
| Skills 安装 | `skills/` | 中 | 添加新技能包 |
|
||||
| Skills 卸载 | `skills/` | 低 | 移除技能包 |
|
||||
| Memory 更新 | `memory/` | 低 | 添加知识条目 |
|
||||
| Tools 配置 | `tools/` | 高 | 修改工具权限 |
|
||||
|
||||
### 对话流程
|
||||
|
||||
```
|
||||
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
|
||||
│ 意图识别 │ ──→ │ 变更分析 │ ──→ │ Diff 生成 │
|
||||
└──────────────┘ └──────────────┘ └──────────────┘
|
||||
│
|
||||
↓
|
||||
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
|
||||
│ 回执生成 │ ←── │ 变更应用 │ ←── │ 用户确认 │
|
||||
└──────────────┘ └──────────────┘ └──────────────┘
|
||||
```
|
||||
|
||||
### 阶段 1:意图识别
|
||||
|
||||
**触发条件**(任一满足):
|
||||
- 用户说"修改你的..."、"更新你的..."、"调整一下..."
|
||||
- 用户说"你以后要..."、"记住这个规则..."
|
||||
- 用户说"安装/卸载这个技能..."
|
||||
- 用户描述对当前行为的不满并期望改变
|
||||
|
||||
**输出**:识别更新类型和目标范围。
|
||||
|
||||
### 阶段 2:变更分析
|
||||
|
||||
**分析维度**:
|
||||
|
||||
| 维度 | 说明 |
|
||||
|------|------|
|
||||
| 影响范围 | 影响哪些文件、哪些行为 |
|
||||
| 风险等级 | 低/中/高(见风险分级表) |
|
||||
| 依赖检查 | 是否影响其他配置 |
|
||||
| 冲突检测 | 是否与现有规则冲突 |
|
||||
|
||||
**风险分级表**:
|
||||
|
||||
| 风险等级 | 条件 | 确认要求 |
|
||||
|---------|------|---------|
|
||||
| 低 | 仅影响非核心配置(如记忆条目) | 简单确认 |
|
||||
| 中 | 影响 persona 或普通 principles | 展示 diff 后确认 |
|
||||
| 高 | 影响核心 principles 或工具权限 | 详细说明 + diff + 确认 |
|
||||
| 受保护 | 触及受保护路径 | 阻断,需 owner 权限 |
|
||||
|
||||
### 阶段 3:Diff 生成
|
||||
|
||||
**Diff 格式示例**:
|
||||
|
||||
```diff
|
||||
# persona.md
|
||||
|
||||
## 沟通风格
|
||||
|
||||
- 友好、随和、轻松幽默
|
||||
+ 专业、严谨、适度幽默
|
||||
|
||||
## 决策偏好
|
||||
|
||||
保持不变...
|
||||
```
|
||||
|
||||
**Diff 元数据**:
|
||||
|
||||
```yaml
|
||||
diff_metadata:
|
||||
files_affected: 1
|
||||
lines_added: 1
|
||||
lines_removed: 1
|
||||
risk_level: medium
|
||||
reversible: true
|
||||
estimated_impact: "沟通风格会变得更正式"
|
||||
```
|
||||
|
||||
### 阶段 4:用户确认
|
||||
|
||||
**确认界面**:
|
||||
|
||||
```
|
||||
变更预览
|
||||
|
||||
影响文件: persona.md
|
||||
风险等级: 中
|
||||
影响说明: 沟通风格会从"友好随和"变为"专业严谨"
|
||||
|
||||
--- 变更内容 ---
|
||||
[展示 diff]
|
||||
----------------
|
||||
|
||||
请确认是否应用此变更?
|
||||
[应用] [取消] [修改]
|
||||
```
|
||||
|
||||
**确认选项**:
|
||||
- **应用**:执行变更
|
||||
- **取消**:放弃变更
|
||||
- **修改**:进入编辑模式微调
|
||||
|
||||
### 阶段 5:变更应用
|
||||
|
||||
**应用步骤**:
|
||||
|
||||
1. **备份当前版本**:
|
||||
```bash
|
||||
git stash push -m "backup before update-agent"
|
||||
```
|
||||
|
||||
2. **应用变更**:
|
||||
```bash
|
||||
# 写入修改后的文件
|
||||
```
|
||||
|
||||
3. **Git 提交**:
|
||||
```bash
|
||||
git add <affected_files>
|
||||
git commit -m "refactor(persona): 调整沟通风格为专业严谨
|
||||
|
||||
- 修改 persona.md 中的沟通风格描述
|
||||
- 从'友好随和'调整为'专业严谨'
|
||||
|
||||
Updated by: update-agent skill
|
||||
Risk level: medium
|
||||
User confirmed: true
|
||||
"
|
||||
```
|
||||
|
||||
4. **验证变更**:
|
||||
```bash
|
||||
# 检查文件语法
|
||||
# 验证配置完整性
|
||||
```
|
||||
|
||||
### 阶段 6:回执生成
|
||||
|
||||
**回执内容**:
|
||||
|
||||
```yaml
|
||||
# ~/.desirecore/runs/<run_id>/receipts/update-<timestamp>.yaml
|
||||
receipt:
|
||||
type: agent-update
|
||||
timestamp: "2024-01-15T10:30:00Z"
|
||||
|
||||
request:
|
||||
user_intent: "说话正式一点"
|
||||
update_type: persona
|
||||
target_files:
|
||||
- persona.md
|
||||
|
||||
changes:
|
||||
files_modified: 1
|
||||
diff_summary: "沟通风格从'友好随和'改为'专业严谨'"
|
||||
git_commit: "def456..."
|
||||
previous_commit: "abc123..."
|
||||
|
||||
metadata:
|
||||
risk_level: medium
|
||||
user_confirmed: true
|
||||
rollback_available: true
|
||||
```
|
||||
|
||||
### 特殊操作:版本回滚
|
||||
|
||||
**触发条件**:
|
||||
- 用户说"撤销刚才的修改"
|
||||
- 用户说"回滚到之前的版本"
|
||||
- 用户说"恢复原来的设置"
|
||||
|
||||
**回滚流程**:
|
||||
|
||||
1. **列出可回滚版本**:
|
||||
```
|
||||
可回滚的版本
|
||||
|
||||
1. [2小时前] 调整沟通风格为专业严谨
|
||||
2. [1天前] 添加合同审查技能
|
||||
3. [3天前] 初始化仓库
|
||||
|
||||
请选择要回滚到的版本:
|
||||
```
|
||||
|
||||
2. **确认回滚**:
|
||||
```
|
||||
回滚确认
|
||||
|
||||
将回滚到版本 #2(1天前)
|
||||
以下变更将被撤销:
|
||||
- 沟通风格调整
|
||||
|
||||
确认回滚? [确认] [取消]
|
||||
```
|
||||
|
||||
3. **执行回滚**:
|
||||
```bash
|
||||
git revert <commit_hash> --no-edit
|
||||
# 或
|
||||
git reset --soft <commit_hash>
|
||||
```
|
||||
|
||||
### 受保护路径
|
||||
|
||||
变更应用前**必须**检查是否触及受保护路径。完整定义见共享配置文件 [`_protected-paths.yaml`](../_protected-paths.yaml)。
|
||||
|
||||
**关键规则摘要**:
|
||||
- `persona.md` L0 section → **block**(核心身份不可自动修改)
|
||||
- `principles.md` "绝不做" section → **block**(安全红线不可自动修改)
|
||||
- `agent.json` access_control / privacy → **owner_only**(需 owner 确认)
|
||||
- `tools/` permissions / credentials → **owner_only / block**
|
||||
|
||||
### 错误处理
|
||||
|
||||
| 错误场景 | 处理方式 |
|
||||
|---------|---------|
|
||||
| 尝试修改受保护路径 | 阻断操作,提示需要 owner 权限 |
|
||||
| Diff 应用冲突 | 展示冲突内容,请用户手动解决 |
|
||||
| Git 操作失败 | 保留修改文件,提示用户手动提交 |
|
||||
| 回滚版本不存在 | 列出可用版本,请用户重新选择 |
|
||||
|
||||
### 权限要求
|
||||
|
||||
| 操作 | 所需角色 |
|
||||
|------|---------|
|
||||
| 更新 persona | owner, member |
|
||||
| 更新 principles(普通规则) | owner, member |
|
||||
| 更新 principles(安全红线) | owner |
|
||||
| 安装/卸载 skills | owner, member |
|
||||
| 修改 tools 权限 | owner |
|
||||
| 版本回滚 | owner |
|
||||
|
||||
---
|
||||
|
||||
## 附录:Principles 更新示例
|
||||
|
||||
### 添加新规则
|
||||
|
||||
**用户输入**:"以后遇到法律问题,先提醒我找专业律师"
|
||||
|
||||
**生成的 Diff**:
|
||||
|
||||
```diff
|
||||
# principles.md
|
||||
|
||||
## 必须做
|
||||
|
||||
- 始终保持礼貌和尊重
|
||||
- 不确定时主动询问
|
||||
+ - 遇到法律相关问题时,提醒用户咨询专业律师
|
||||
|
||||
## 绝不做
|
||||
...
|
||||
```
|
||||
|
||||
### 修改现有规则
|
||||
|
||||
**用户输入**:"不要每次都提醒我,太啰嗦了"
|
||||
|
||||
**生成的 Diff**:
|
||||
|
||||
```diff
|
||||
# principles.md
|
||||
|
||||
## 必须做
|
||||
|
||||
- - 每次回答后都提醒用户检查内容
|
||||
+ - 仅在重要决策时提醒用户检查内容
|
||||
```
|
||||
Reference in New Issue
Block a user