Empryo 复合工具全解析:一行指令搞定重命名、移动与重构
【免费下载链接】EmpryoAI coding harness for desktop, terminal and CI. Maps your repo, edits code by symbol through AST and LSP, then runs your checks. Any model or the plan you already pay for. Get it at https://empryo.com项目地址https://gitcode.com/gh_mirrors/so/Empryo点击查看免费下载Empryo 是一款面向桌面、终端与 CI 的 AI coding harnessAI 编程代理工具它能自动绘制仓库地图、按符号精确编辑代码、跑通检查后提交。它的杀手锏是复合工具Compound Tools把重命名 → 改所有引用 → 修 import → 跑检查这种多步任务压缩成一次调用你只需一行自然语言指令就能搞定跨文件重命名、符号移动与代码重构。为什么需要复合工具传统 AI 助手改代码时Agent 要盲猜先 grep 找引用、再逐个文件编辑、然后猜测试命令……每一步都在烧 token 和步数Agent: Ill run the tests with npm test Shell: npm ERR! missing script: test Agent: Let me try npx jest...Empryo 的思路是让工具一次做完整个任务。Agent 不用解释每一步也不用猜命令。官方给出的实测对比在 8 个文件中重命名一个导出类指标手动分步方式rename_symbol复合工具Agent 步数19 步3 步Token 成本$0.228$0.036工具自己找到符号、执行 LSP 重命名、验证零残留引用然后汇报结果——没有探索、没有猜测、没有验证循环。复合工具全家福一张表看懂Empryo 的复合工具覆盖改代码 → 验证的完整链路核心成员如下完整列表见 constants.ts工具一句话说明rename_symbol跨所有文件重命名符号LSP 驱动并自动验证move_symbol把符号移到另一个文件 更新所有 importrename_file重命名/移动文件 更新所有引用者refactor提取函数/变量、整理 import、格式化project自动检测工具链跑 lint / typecheck / test / build支持 23 个生态navigate查定义、引用、调用层级、类型层级read按行号区间或按符号名读取文件ast_editTypeScript/JavaScript 的手术式 AST 编辑65 种操作官方文档入口compound-tools.mdx。rename_symbol跨文件重命名零残留引用最常用的场景类名、函数名改掉了但几十个文件还在引用旧名字。传统做法是全局搜索替换风险极高字符串匹配会误伤同名变量、注释、字符串字面量。你只需要说 rename UserService to AccountServiceAgent 直接调用rename_symbol——一次基于 LSP 的调用更新每一个文件并自动验证不存在悬空引用dangling references。关键特性✅ 支持函数、类、类型、接口、变量、枚举不需要告诉它符号在哪个文件✅ 同名符号有多个时Agent 会停下来让你选择不会乱改✅ 重命名前可先运行/lsp status确认 LSP 已挂载✅ 所有改动自动保存检查点CtrlB一键全部回退实现源码rename-symbol.ts。move_symbol 与 rename_file移动代码不断链重构时最麻烦的不是移动而是移动后修好所有 import 和 re-export。Empryo 把这两件事做成了单步操作。移动符号到别的文件 move parseConfig from src/utils.ts to src/config/parser.ts符号被移走项目里所有 import 同步更新re-export 自动修正。完整支持 TypeScript、JavaScript、Python、Rust。重命名/移动文件 rename src/old-name.ts to src/utils/new-name.ts文件移动 所有引用者路径更新一次完成。底层采用事务机制先暂存所有文件写入全部校验通过包括安全检查才一次性落盘任何一步失败则整体回滚不会出现改了一半的中间态。核心实现move-symbol.ts。refactor 与 ast_edit手术级代码重构refactor工具封装了 LSP 的 Code Action四句话覆盖日常重构 extract lines 42-58 of handler.ts into a function called validateInput # 提取函数 clean up imports in src/api.ts # 整理 import提取函数refactor extract_function是 LSP 代码动作提取出的代码自动带上正确的参数和返回类型整理 import通过 LSP 排序、去重、删除未使用的导入而更底层的ast_edit是首个AST 原生AI 编辑器对 TypeScript/JavaScript 文件它不按文本匹配而是按符号种类 名字进行结构化修改。65 种操作覆盖改返回类型、加参数、增删类成员、换继承关系等且支持原子批量——一批操作要么全成功、要么全不应用。编辑前后还会对比诊断新出现的类型错误立刻回流给 Agent 修复。你不需要手动调用它Agent 处理 TS/JS 文件时会自动优先选择。完整操作参考ast-edit.mdx工具实现refactor.ts。project 工具自动探测工具链不再猜测试命令跑一下测试看似简单实际上每个项目的命令都不同。project工具通过扫描配置文件和锁文件自动识别工具链bun.lock→bun testCargo.toml→cargo testgo.mod→go test……覆盖23 个生态你对它说它实际执行run testsproject(action: test)run the auth testsproject(action: test, file: auth)lint and fixproject(action: lint, fix: true)typecheckproject(action: typecheck)buildproject(action: build)更妙的是当 Agent 通过 shell 手跑了bun run lint之类的命令结果里会附带提示下次请用project(action: lint)持续把 Agent 教育到最优路径上。Monorepo 场景下project(action: list)能自动发现 pnpm workspace、Cargo workspace、Go workspace 的所有子包。详见project.mdx。安全网改错了怎么办复合工具动作大Empryo 为它配了三层保险检查点Checkpoints每轮对话自动存档CtrlB/CtrlF前后穿梭/checkpoint undo同时回退对话和磁盘文件。详见checkpoints.mdx编辑前诊断快照编辑前采集 LSP 诊断编辑后只回流新产生的错误避免 Agent 被历史错误干扰事务回滚move_symbol等多文件写入是全有或全无失败自动还原ast_edit在编辑前做文件快照若磁盘文件中途被改动则直接拒绝快速上手3 步开始用第 1 步安装仓库为只读镜像安装请使用官方渠道curl -fsSL https://empryo.com/install.sh | bash # macOS / Linux irm https://empryo.com/install.ps1 | iex # Windows第 2 步打开项目。Empryo 会先绘制仓库地图——文件、符号、导入关系全部索引并排序知道一次编辑会碰到什么再动手。第 3 步自然语言下指令比如 rename UserService to AccountService, then run tests and commit重命名、跑测试、写提交信息全程无需你描述任何步骤。更多可复制的指令示例重命名、移动、测试、提交流程rename-refactor.mdx 和 test-and-commit.mdx。常见问题 FAQQ复合工具和普通文本替换有什么本质区别A普通替换是字符串匹配同名就全改容易误伤rename_symbol走 LSP 语义解析只改真正的引用改完自动验证零残留且成本更低8 文件重命名仅 3 步 / $0.036。Q重命名时同名符号很多会改错吗A不会。检测到歧义时 Agent 会暂停并请你选择目标符号所有写入走事务提交失败整体回滚。Q支持哪些语言A重命名/移动/重构基于 LSP覆盖 TypeScript、JavaScript、Python、Rust 等主流语言ast_edit专门针对 TS/JS.ts.tsx.js.jsx.mts.cts.mjs.cjs其他文件自动回退到通用编辑工具。Q改坏了能撤销吗A能。检查点 CtrlB一键回退undo_edit也可逆向撤销单次编辑文件内容、引用更新全部还原。总结Empryo 复合工具的设计哲学可以概括为一句话一次调用做完一整件事。rename_symbol、move_symbol、refactor、project把找引用 → 改代码 → 修 import → 跑检查的冗长链路封装成原子操作配合检查点回滚与 LSP 诊断回流让一行指令搞定重命名、移动与重构真正成为日常。无论你用桌面端、终端还是 CI同一套地图与记忆体验一致。赞分享【免费下载链接】EmpryoAI coding harness for desktop, terminal and CI. Maps your repo, edits code by symbol through AST and LSP, then runs your checks. Any model or the plan you already pay for. Get it at https://empryo.com项目地址https://gitcode.com/gh_mirrors/so/Empryo点击查看免费下载相关推荐Nuclide批量重构安全重命名与代码迁移工具Nuclide批量重构安全重命名与代码迁移工具 在大型项目开发中开发者经常面临批量修改标识符名称、迁移代码模块的需求。手动修改不仅效率低下还容易遗漏引用或开发工具Psalm 的 psalm-refactor 重构工具详解批量移动与重命名类、方法、命名空间Psalm 的 psalm refactor 重构工具详解批量移动与重命名类、方法、命名空间 Psalm 除了静态分析定位问题还内置了一个专门用于结构性变更开发工具代码质量质量保障F2高效安全的命令行批量重命名工具F2高效安全的命令行批量重命名工具 项目介绍 在日常的文件管理中批量重命名文件和目录是一个常见但繁琐的任务。为了解决这一问题 F2 应运而生。F2 是一款创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

Android商城界面开发:ListView+BaseAdapter从零搭建购物列表

Android商城界面开发:ListView+BaseAdapter从零搭建购物列表

简介:面向Android初学者的购物商城界面源码,基于Android Studio与ListView组件搭建,解决了从零构建商品列表展示页面的常见需求,适合课程设计、期末项目或入门练手,整体代码结构简单直观,便于初学者快速上手…

2026/10/12 12:05:07 阅读更多 →
硬盘坏道怎么修?Victoria清零与重映射全流程实战指南

硬盘坏道怎么修?Victoria清零与重映射全流程实战指南

简介:Victoria硬盘坏道维修软件及维修教程为一套面向硬盘检测与坏道修复场景的实用资源,适合遭遇读写异常、坏道报错或系统稳定性问题的个人用户、维修人员及小型企业技术人员使用。压缩包共18个文件,约2.79MB,包含exe主程序、doc…

2026/10/12 12:05:07 阅读更多 →
AI日报自动化工作流:从信息过载到90秒决策

AI日报自动化工作流:从信息过载到90秒决策

1. 项目概述:这不是一份“新闻稿”,而是一套可复用的AI信息日更工作流“AI 日报(2026年10月5日)”这个标题乍看像一条社交媒体上的轻量资讯推送,但作为从业十多年、亲手搭建过27个不同规模信息聚合系统的博主&#xff…

2026/10/12 12:04:06 阅读更多 →

最新新闻

【论文】【NLP】Attention Is All You Need 精读:从自注意力到多头机制,TaoToken 统一 Key 跑通 Transformer 最小复现

【论文】【NLP】Attention Is All You Need 精读:从自注意力到多头机制,TaoToken 统一 Key 跑通 Transformer 最小复现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 13:57:07 阅读更多 →
AI Agent Harness Engineering 电商实战:TaoToken 统一 Key 打通智能导购、客户运营与供应链优化

AI Agent Harness Engineering 电商实战:TaoToken 统一 Key 打通智能导购、客户运营与供应链优化

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 13:57:07 阅读更多 →
2026年9月北京GEO优化服务商怎么选?TaoToken统一API通道下的AI搜索可见性能力拆解

2026年9月北京GEO优化服务商怎么选?TaoToken统一API通道下的AI搜索可见性能力拆解

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 13:57:07 阅读更多 →
C++ static变量初始化陷阱:顺序、线程安全与实战解决方案

C++ static变量初始化陷阱:顺序、线程安全与实战解决方案

1. 从一个编译期报错说起:为什么static变量的初始化值得单独聊刚入行那会儿,我写过一段自认为很优雅的代码:一个单例模式的配置管理器,用函数内static变量来保证线程安全的懒加载。本地跑得好好的,一上测试环境就偶发崩…

2026/10/12 13:57:07 阅读更多 →
用TypeScript从零重写仙剑奇侠传并打造可视化编辑器全记录

用TypeScript从零重写仙剑奇侠传并打造可视化编辑器全记录

前阵子我干了一件特别折腾的事:用 TypeScript 从零重写一款经典国产仙侠 RPG《仙剑奇侠传》,而且不是做个 Demo 摆摆手,是做到浏览器里能完整通关,连结局动画和最终 Boss 战都能跑通。更离谱的是,我顺手还给它做了一个…

2026/10/12 13:57:07 阅读更多 →
Massive MIMO统计信道:协方差矩阵驱动波束形成与功率分配

Massive MIMO统计信道:协方差矩阵驱动波束形成与功率分配

简介:一份面向无线通信与大规模天线系统研究者的学术论文PDF,聚焦Massive MIMO系统容量提升,探讨基于统计信道状态信息(SCSI)的波束形成与功率分配联合优化问题。针对瞬时信道信息获取困难、反馈成本高的挑战&#xff…

2026/10/12 13:56:05 阅读更多 →

日新闻

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

在数码相机、高清显示屏与现代矢量图形技术高度发达的今天,画面可以做到绝对的锐利、平滑与无瑕。然而,当一张秋日手账插画或拍立得照片过于“平整无瑕”时,往往会散发出一种冰冷生硬的“数码塑料感(Digital Plasticity&#xff0…

2026/10/12 0:00:59 阅读更多 →
活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

在现代网页与移动端设计中,横排(Horizontal Layout)早已经成为了绝对的主流。然而,当我们翻开泛黄的线装古籍、宋版木刻诗集,或是欣赏一张茶道雅集的手写便签时,那种**自上而下纵向书写、自右向左逐列铺展&…

2026/10/12 0:00:59 阅读更多 →
周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

每到周日的晚上八点到十点,很多人心里都会悄悄亮起一盏警示灯。 在心理学上,这种现象有一个专门的称谓——“周日夜晚焦虑症(Sunday Scaries)”。明天又是周一,闹钟又要重新在七点响彻卧房;脑海里仿佛有一个…

2026/10/12 0:00:59 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/12 0:16:30 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/12 0:16:38 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/12 0:16:43 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:53 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:54 阅读更多 →