Files
ycode/docs/通用开发角色替换-2026-10-18.md
T

7.1 KiB

通用开发角色替换

日期:2026-10-18。用户要求将之前加入的专业角色改成通用、职责不同的智能体。本次是用户定制修改,不继续将修改后的包称为WorkBuddy原始专家包的1:1副本。

详情布局与头像修复

用户反馈点开错位、头像缺失。实际Electron复现确认:详情头像外容器同时应用avatar和avatarFallback,后者的100%宽高覆盖72px固定尺寸,在1440px窗口里头像宽590px、标题可用宽度为0。已拆成固定头像外容器与内部回退层;本地详情和缓存参考详情同步修复,图片加载失败仍保持头像尺寸。简介、标签和角色指令沿用现有主题;指令使用已有Markdown组件排版,长内容在正文区域滚动,头部保持固定。加载时显示提示,切换读取清理旧内容,焦点循环覆盖正文滚动区域和链接。

五个通用角色新增统一机器人头像,分别使用绿、蓝、金、紫、粉色和职责标记。代码原生SVG与256px PNG保存在resources/agents/avatars/,可用scripts/generate-general-agent-avatars.mjs重建;没有调用图像或模型服务。定义版本2、专家包版本2.1.0。安装脚本检查PNG大小、尺寸、SHA和生产激活后的data URL;配置变更前保留完整包备份,文本通过原注册事务提交,PNG随后单独原子写入。两步不是整个包的单次原子事务,脚本中途失败需重跑或用备份恢复。

本轮备份:C:/Users/Administrator/AppData/Roaming/YCode/capabilities/expert-backups/general-development-20e82549-fb1b-4972-bdff-93d3d52fcec3/。已应用真实用户五个包;独立进程冷读取、--check及隔离重复执行均通过,重复执行变更数0,原五类指令和技能配置未改。

验证:npm run build通过(含原生沙盒构建和两份TypeScript检查);真实正式Electron/main/preload/renderer专项17项通过、0 renderer错误,覆盖五个详情、卡片图片解码、浅/深色、420px/320px窗口、长文滚动、键盘循环/关闭/焦点恢复、无头像回退、详情召唤后的输入框头像及缓存参考详情。报告.tmp/general-agents-validation-ttZ4Gw/detail-ui-report.json;构建日志.tmp/expert-detail-build.log。已查看general-agents-with-avatars.png、expert-detail-light.png、expert-detail-dark.png、expert-detail-narrow.png、expert-detail-320.png、general-agent-avatar-summoned.png。这些是YCode自身缺陷验证,没有新增WorkBuddy采集,也不作为完整1:1验收。

构建另发现electron-vite的ESM shim正则误把两个既有Git诊断文案末尾的before import当成导入语句,导致shim被插入.git字符串中。只调整src/main/sandbox/git-host-source.ts两条诊断文案,未改沙盒执行逻辑。

当前运行用户窗口没有调试监听端口,本轮未强制重启或清除草稿;重新进入我的专家可读取新头像,布局需要重新加载YCode界面。当前工作区其他并行改动保留,未提交。

已应用到用户YCode

原角色 当前通用角色 保留的包ID
高级项目经理/关德豪 代码探索员 senior-project-manager
首席C++架构顾问/C++超级专家 实现工程师 cpp-super-expert
UI设计师/像素君 测试验收员 ui-designer
高级算法工程师/小算 代码审查员 senior-algorithm-expert
新增 问题诊断员 development-debugger

已同步修改双语名称与职业、简介、标签、三条快捷提问、默认提问、实际Agent指令及README;版本改为2.0.0。保留原四个内部ID、agentName和Agent文件名,既有会话和选择引用继续可解析。过去消息中已保存的角色身份不改写。

共同指令不预设语言、框架、行业、目录和外部服务,明确委派边界、证据要求和验证报告。探索与审查默认只读;验收不擅自改业务代码,诊断默认先复现与定位,获准后再修复;实现遵守指定文件范围。

移出原专项技能声明和旧文本资源,实际回合不再自动预加载cpp-mastery、minimax-docx、impeccable、frontend-dev、browser-use或algorithm-engineering-playbook。现有API在编辑时保留二进制资源,原头像和字体等未引用二进制可能仍留在包目录,但不再注册或作为角色资源加载。初次替换使用通用回退头像;本轮已改为上方记录的五张通用角色头像,不复用原专业人物头像。

定义保存在 resources/agents/general-development.json,维护方法见同目录README。scripts/configure-general-agents.mjs通过生产专家包API完成编辑、校验、注册、激活和回合上下文检查;--check只核对配置并写本地验证报告,不修改专家包。

实际数据目录:C:/Users/Administrator/AppData/Roaming/YCode/plugins/marketplaces/my-experts/。

完整原包、原marketplace及逐文件SHA清单备份在:

C:/Users/Administrator/AppData/Roaming/YCode/capabilities/expert-backups/general-development-070c2a39-3f03-4576-bda4-82e54e242af2/。

备份在首次写入前完成并校验逐文件摘要;安装逐个通过生产注册事务,未覆盖无关目录条目。原REA导出和原始证据文件未改动,也未查看或修改WorkBuddy。

验证

  • 先复制原四份YCode专家包到隔离目录,实际执行替换、校验模式和重复执行;五个角色全部通过,重复执行无改动。报告 .tmp/general-agents-validation-ttZ4Gw/report.json。
  • 真实用户目录已替换并重新启动独立校验进程读取:五个角色均可列出、激活,15份目标文本一致;新提示词确实进入expertTurnContext,启动技能均为0。部署报告 .tmp/general-development-agents-rZCsZ0/report.json;冷读取校验 .tmp/general-development-agents-2zULma/report.json。
  • 隔离真实Electron、正式main/preload/renderer通过9项界面检查:五卡片、旧显示名消失、五次召唤绑定对应角色及默认提问、0持久化对话、0 renderer错误。报告 .tmp/general-agents-validation-ttZ4Gw/ui-report.json。
  • 已实际查看 general-agents.png 及 general-reviewer-selected.png,显示通用职责卡片和输入框中的代码审查员。
  • 脚本语法与JSON检查通过。未改应用运行时代码,本批没有重复构建或运行无关回归;验证未调用模型API、未重启用户窗口,未发送消息。

用户当前已打开页面的内存列表未强制刷新;重新进入“我的专家”会重新读取最新包内容。

范围与限制

当前改动对应“我的专家”中可手动召唤的通用Agent配置,没有新增spawn_agent的role参数或将这些包自动注入子任务调度器。工具权限和5并发保持现状;职责提示词不是宿主层的额外权限策略。模型实际回答质量不由配置和界面校验代替。

按既有委派模式尝试了边界明确的只读角色审查,但工作通道因后端封存任务不可读取而失败,未产生候选结果;主上下文完成职责边界审查、部署与最终验证。没有将失败的子任务声称为通过。