新闻详情

新闻详情

首页 / 资讯中心 / 详情

并行不阻塞:mercury-agent子代理多智能体模式完整教程(含文件锁与资源感知调度)

发布时间:2026/9/29 21:45:53来源:尧图网络
并行不阻塞:mercury-agent子代理多智能体模式完整教程(含文件锁与资源感知调度)
并行不阻塞mercury-agent子代理多智能体模式完整教程含文件锁与资源感知调度【免费下载链接】mercury-agentSoul-driven AI agent with permission-hardened tools, token budgets, and multi-channel access. Runs 24/7 from CLI, Telegram or More.项目地址: https://gitcode.com/gh_mirrors/me/mercury-agentmercury-agent 是一款灵魂驱动Soul-driven的 AI 智能体除强化权限的工具与 Token 预算外最亮眼的功能就是子代理Sub-Agent多智能体模式主代理把复杂任务拆解后并行委派给多个后台智能体你无需等待、可以继续对话。本文带你完整理解它的工作原理、文件锁机制与资源感知调度附全部实用命令清单。为什么需要多智能体模式传统 AI 智能体是单线程的一个上下文窗口、一次只干一件事。让它调研 写代码 写测试它只能顺序执行每一步都在阻塞下一步。子代理模式打破了这个瓶颈并行执行—— 多个任务在各自独立的上下文窗口中同时推进LLM 自主委派—— 主代理会根据任务复杂度自己决定何时拆解委派非阻塞—— 子代理在后台干活你可以继续正常聊天文件锁—— 读写锁防止多个智能体同时写坏同一个文件资源感知—— 并发上限根据你机器的 CPU 和内存自动检测工作原理主代理是调度器你的消息 → 主代理编排者 ├─ delegate_task(调研 X) → 子代理 a1独立上下文 ├─ delegate_task(实现 Y) → 子代理 a2独立上下文 └─ 继续对话 → 即时回复你每个子代理拥有独立的上下文窗口不会被主对话污染、独立的步数预算默认 25 步、与主代理相同的权限系统并通过文件锁与队友协作。委派动作由 delegate-task.ts 中的delegate_task工具触发完成后会自动推送通知到你的来源渠道CLI 或 Telegram。子代理命令速查表命令作用/agents列出所有运行中和已完成的子代理/agents stop id\|all停止指定或全部子代理/agents pause id/resume id暂停 / 恢复子代理/agents config查看资源分配最大并发数、模式/agents set max n手动设置最大并发数/code agent task立即把一个编码任务委派给子代理/bg: task用自然语言在后台跑一个子代理任务/bg list查看 shell 后台任务与子代理任务/halt紧急停止所有子代理并清空队列/stop全面停止清队列、释放文件锁、清空任务板/reset全量重置/stop 清空会话上下文 这些小斜杠命令走快速通道——即使主代理正忙也能即时生效非常适合紧急干预。文件锁读写锁防止并发写冲突多个智能体同时改代码最怕的就是你改一半我也改。mercury-agent 用一套经典的读者-写者锁解决它实现位于 file-lock.ts读锁多个智能体可同时读同一文件但只要别的智能体持有写锁读请求就会被拒绝写锁排他锁。只要任何别的智能体持有该文件的任何锁写锁就拿不到自动释放智能体结束时自动releaseAll不会遗留僵尸锁死锁检测detectDeadlock()会周期性检查锁图发现互锁就处理在 sub-agent.ts 中可以看到锁的实际接入点每次调用write_file/edit_file等工具前申请写锁调用read_file/list_dir时申请读锁——拿不到锁就记录为未能修改的文件而不是硬写。资源感知调度并发上限是怎么算出来的子代理运行在主进程内共享同一块 V8 堆内存所以并发不能无脑拉满。resource-manager.ts 的算法很务实CPU 维度max(1, 核心数 - 1)可用内存维度(可用内存 - 1024MB) ÷ 512MB总内存维度(总内存 ÷ 2) ÷ 512MB取三者最小值且硬上限为3MAX_CONCURRENT_SUB_AGENTS可用内存不足 2GB 时直接降为1任务来了却满员怎么办排队而不是丢弃。调度器 supervisor.ts 会把它放进等待队列任务板上显示 Queued — waiting for slot一旦有智能体完成队列按顺序自动补位。一步配置启用子代理模式在~/.mercury/mercury.yaml中加入subagents: enabled: true maxConcurrent: auto # auto 自动检测或手动指定数字 mode: auto # autoLLM 决定委派或 manual用户控制也可以用环境变量覆盖SUBAGENTS_ENABLED、SUBAGENTS_MAX_CONCURRENT、SUBAGENTS_MODE。想临时调并发直接对话里发/agents set max 2即可无需重启。安全护栏预算、步数与内存三重保险并行不等于失控mercury-agent 给子代理装了三重保险步数预算默认 25 步用完后若任务没做完状态置为paused而非谎报完成调度器最多自动续跑 3 次supervisor.ts 中MAX_SUBAGENT_STEP_RESUMES每次续跑会先检查磁盘上的进度、不重复劳动内存治理每步前后都检查 V8 堆使用率memory-governor.ts超警戒线先中止该子代理逼近上限则保护性退出防止拖垮整个进程Token 记账每个子代理的输入/输出 Token 实时写入任务板统一纳入全局 Token 预算预算紧张时系统提示词会自动要求子代理简洁作答任务板所有进度的持久化快照每个子代理都是任务板Task Board上的一张卡片ID、任务描述、状态pending/running/paused/completed/failed/halted、进度、锁定的文件、Token 用量。卡片实时持久化到~/.mercury/memory/task-board.json见 task-board.ts重启也不丢/agents随时可查全貌。关键文件索引模块路径子代理执行核心src/core/sub-agent.ts调度器与排队src/core/supervisor.ts文件读写锁src/core/file-lock.ts资源感知调度src/core/resource-manager.ts任务板src/core/task-board.ts委派工具src/capabilities/subagents/官方文档website/docs/integrations/sub-agents.mdx最佳实践清单适合并行的任务才委派一边调研 X 一边实现 Y 这类天然可拆分的任务收益最大给独立工作目录委派时可指定workingDirectory物理隔离减少锁竞争最小化工具面通过allowedTools给子代理只发它需要的工具更安全也更省 Token善用/agents config先看自动检测到的并发上限再决定是否手动覆盖定期/agents巡检长任务跑起来后一眼看清谁在跑、谁在排队、谁被暂停用一句话总结mercury-agent 的子代理模式 独立上下文读写文件锁资源感知排队预算护栏让多个 AI 同时干活既快又稳。【免费下载链接】mercury-agentSoul-driven AI agent with permission-hardened tools, token budgets, and multi-channel access. Runs 24/7 from CLI, Telegram or More.项目地址: https://gitcode.com/gh_mirrors/me/mercury-agent创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

vscode 系列文章目录 - ctrl+鼠标左键无效:TaoToken 统一 Key 通道下的 settings.json 排查骨架 2026/9/29 22:41:46

vscode 系列文章目录 - ctrl+鼠标左键无效:TaoToken 统一 Key 通道下的 settings.json 排查骨架

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

阅读更多 →
2026 年 5 月前瞻:Hermes Agent 安全合规落地,用 TaoToken 统一 Key 打通悬镜灵境 AIDR 接入配置 2026/9/29 22:41:46

2026 年 5 月前瞻:Hermes Agent 安全合规落地,用 TaoToken 统一 Key 打通悬镜灵境 AIDR 接入配置

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

阅读更多 →
ArcEngine 查询、添加、删除要素的配置方法与验证:TaoToken 统一 Key 接入实践 2026/9/29 22:41:46

ArcEngine 查询、添加、删除要素的配置方法与验证:TaoToken 统一 Key 接入实践

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

阅读更多 →
Codex 配 TaoToken 接入本地 Qwen 与 llama:settings.json 骨架与 Ollama 对接踩坑实录 2026/9/29 22:41:46

Codex 配 TaoToken 接入本地 Qwen 与 llama:settings.json 骨架与 Ollama 对接踩坑实录

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

阅读更多 →
研发团队提效新范式:如何用 TaoToken 统一 Key 打造 7×24 小时组织级 Coding Agent? 2026/9/29 22:41:45

研发团队提效新范式:如何用 TaoToken 统一 Key 打造 7×24 小时组织级 Coding Agent?

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

阅读更多 →
异步加载与性能优化:从事件循环到前端与Android的实战 2026/9/29 22:41:37

异步加载与性能优化:从事件循环到前端与Android的实战

异步加载和性能优化,这两个词放在一起的时候,很多人第一反应是“不就是老生常谈吗”。但我在一线做了十多年,这两年又跨到 App 侧去优化启动性能,发现不少人对这两个词的认知还停留在“会用个 async/await、知道图片要懒加载”的层…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉