Files
market/skills/update-agent/SKILL.md
yi-ge b8ba404577 refactor: 消灭 skill.json,SKILL.md 成为唯一真相源
- 将 skill.json 中的 icon、shortDesc、category、maintainer、
  compatibleAgents、channel 迁移到 SKILL.md frontmatter 的 market 段
- 将 skill.json 中的 changelog 字段提取为独立 CHANGELOG.md
- 删除所有 skill.json(downloads/rating/ratingCount 等虚假数据一并移除)
- 版本号统一从 SKILL.md frontmatter version 读取

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-27 20:38:00 +08:00

9.4 KiB
Raw Blame History

name, description, version, type, risk_level, status, disable-model-invocation, tags, metadata, market
name description version type risk_level status disable-model-invocation tags metadata market
update-agent 安全更新现有智能体的配置、人格、原则、技能与记忆,输出可审阅 diff 并在确认后应用与提交。Use when 用户要求修改 Agent 行为、安装/卸载技能、调整配置、回滚变更或修订规则。 2.1.0 meta high enabled true
agent
update
meta
author version updated_at
desirecore 2.1.0 2026-02-26
icon short_desc category maintainer compatible_agents channel
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><defs><linearGradient id="ua-a" x1="2" y1="7" x2="14" y2="21" gradientUnits="userSpaceOnUse"><stop stop-color="#AF52DE"/><stop offset="1" stop-color="#007AFF"/></linearGradient></defs><circle cx="9" cy="7" r="4" fill="url(#ua-a)" fill-opacity="0.15" stroke="url(#ua-a)" stroke-width="1.5"/><path d="M10 15H6a4 4 0 0 0-4 4v2" fill="url(#ua-a)" fill-opacity="0.1" stroke="url(#ua-a)" stroke-width="1.5"/><circle cx="18" cy="15" r="3" fill="#007AFF" fill-opacity="0.12" stroke="#007AFF" stroke-width="1.3"/><path d="m14.3 16.53.92-.38m.01-2.3-.92-.38m1.5-1.24-.38-.92m0 5.54-.38.92m2.3.01.38-.92m.3-4.84-.38-.92m1.24 1.5.92-.38m0 2.3.92.38" stroke="#AF52DE" stroke-width="1.3" stroke-linecap="round"/></svg> 安全更新智能体配置、人格、规则与技能,支持 diff 预览与版本回滚 productivity
name verified
DesireCore Official true
latest

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 权限

阶段 3Diff 生成

Diff 格式示例

# persona.md

## 沟通风格

- 友好、随和、轻松幽默
+ 专业、严谨、适度幽默

## 决策偏好

  保持不变...

Diff 元数据

diff_metadata:
  files_affected: 1
  lines_added: 1
  lines_removed: 1
  risk_level: medium
  reversible: true
  estimated_impact: "沟通风格会变得更正式"

阶段 4用户确认

确认界面

变更预览

影响文件: persona.md
风险等级: 中
影响说明: 沟通风格会从"友好随和"变为"专业严谨"

--- 变更内容 ---
[展示 diff]
----------------

请确认是否应用此变更?
[应用] [取消] [修改]

确认选项

  • 应用:执行变更
  • 取消:放弃变更
  • 修改:进入编辑模式微调

阶段 5变更应用

应用步骤

  1. 备份当前版本
git stash push -m "backup before update-agent"
  1. 应用变更
# 写入修改后的文件
  1. Git 提交
git add <affected_files>
git commit -m "refactor(persona): 调整沟通风格为专业严谨

- 修改 persona.md 中的沟通风格描述
- 从'友好随和'调整为'专业严谨'

Updated by: update-agent skill
Risk level: medium
User confirmed: true
"
  1. 验证变更
# 检查文件语法
# 验证配置完整性

阶段 6回执生成

回执内容

# ~/.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天前] 初始化仓库

请选择要回滚到的版本:
  1. 确认回滚
回滚确认

将回滚到版本 #21天前
以下变更将被撤销:
- 沟通风格调整

确认回滚? [确认] [取消]
  1. 执行回滚
git revert <commit_hash> --no-edit
# 或
git reset --soft <commit_hash>

受保护路径

变更应用前必须检查是否触及受保护路径。完整定义见共享配置文件 _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 操作失败 保留修改文件,提示用户手动提交
回滚版本不存在 列出可用版本,请用户重新选择

API 端点

建议优先通过 HTTP API 完成操作,也可直接通过 Read/Write/Edit 工具编辑 AgentFS 文件:

  • PUT /api/agents/:id/files/* — 更新指定文件内容

API 基础地址已注入到 system prompt 的「本机 API」小节使用 Bash 工具调用 curl 访问即可。

权限要求

操作 所需角色
更新 persona owner, member
更新 principles普通规则 owner, member
更新 principles安全红线 owner
安装/卸载 skills owner, member
修改 tools 权限 owner
版本回滚 owner

附录Principles 更新示例

添加新规则

用户输入"以后遇到法律问题,先提醒我找专业律师"

生成的 Diff

# principles.md

## 必须做

  - 始终保持礼貌和尊重
  - 不确定时主动询问
+ - 遇到法律相关问题时,提醒用户咨询专业律师

## 绝不做
  ...

修改现有规则

用户输入"不要每次都提醒我,太啰嗦了"

生成的 Diff

# principles.md

## 必须做

- - 每次回答后都提醒用户检查内容
+ - 仅在重要决策时提醒用户检查内容