IM.codes 是一个开源项目,自称“The IM for agents”,即面向智能体的即时通讯、记忆与审查层。它的核心目标是把基于终端的编程智能体延伸到实际干活的电脑上,并让多智能体、多人之间的上下文与审查连成一条线。项目说明中同时给出免责声明:这是一个仍在积极开发的个人开源项目,没有担保、没有 SLA,也不保证稳定性、安全性或向后兼容,使用风险自负。
一、受控节点与 AI 远程桌面 IM.codes 可以把受支持的电脑注册为“受限受控节点(Controlled Nodes)”,而不用把每台机器都变成完整的 IM.codes 源服务器。注册多台机器后,一个智能体或一个智能体团队可以直接操作这些机器完成工作:执行受范围约束的命令、移动单个文件,并通过类型化的 Computer Use 工具控制桌面应用。当人需要查看或接管时,受支持的 Windows 节点可以从浏览器或手机打开远程桌面,查看屏幕或直接接管。每个节点有独立凭据,与常规服务器/会话列表分离,所有者可以禁用或撤销其执行权限。下载链接会过期,但已下载的安装程序可以保留并重复用于注册多台机器。Windows 远程桌面支持 Control 与 View 模式、切换显示器和分辨率,并允许多个授权查看者或控制者协作;移动端提供触控导航和虚拟鼠标。远程桌面会自动选择最佳可用连接并在无法直连时降级;目前仅受支持的 Windows 节点提供远程桌面,macOS 和 Linux 受控节点仍可使用其他节点能力,远程桌面支持在规划中。
二、共享智能体上下文与记忆 IM.codes 持续把已完成的智能体工作转化为可复用记忆,并回注到未来会话。它只物化最终的 assistant.text 输出,排除流式增量、工具调用和中间噪声,解决的是“问题→解决方案”式记忆而非日志堆砌。记忆分为个人记忆(原始与处理后的记忆始终留在本地,处理后的摘要可选同步到用户级云池,跨设备共享)、企业共享上下文(团队可发布可复用记忆到工作区/项目范围,在 UI 中查看、查询和看统计;该部分仍在积极开发,尚未完全经过生产测试)。本地语义搜索和服务端 pgvector 召回使用多语言嵌入,可跨英语、中文、日语、韩语、西班牙语、俄语及混合语言仓库找到相关修复。相关过往工作会在每条消息和会话启动时自动注入,时间线卡片会显示召回内容、原因、相关度分数、召回次数和最后使用时间。共享上下文 UI 区分原始事件、处理后摘要、云记忆和企业记忆,并提供查询、预览、归档/恢复与处理配置控制。
三、受管 MCP 工具 IM.codes 向受支持的 SDK 服务商暴露由守护进程管理的 stdio MCP 服务器,让智能体获得一个运行时限定的工具面,用于记忆、智能体间消息和定时跟进,而无需原始认证令牌或临时 shell 命令。记忆召回工具包括 search_memory(在调用方绑定的记忆命名空间中搜索过往工作、项目历史、决策、偏好、缺陷、提交、部署和此前讨论的上下文)与 list_memory_summaries(无需查询即可获取近期紧凑摘要);结果包含紧凑引用和 projectionId,get_memory_sources 可在模型需要精确的先前指令、缺陷细节、提交/部署上下文或来源证据时,把相关命中展开为来源片段。记忆写入包括 save_observation(把有用事实、决策或实现说明存为用户私有记忆候选)和 save_preference(通过显式偏好路径存储稳定的用户偏好)。智能体消息工具 send_list_targets 列出当前项目的同级会话,send_message 通过同一受保护的 imcodes send 管道发送限定消息、可选文件路径引用、回复请求或广播。定时工具 cron_create、cron_list、cron_update、cron_delete 管理面向提醒、周期性检查、委托审查或计划团队跟进的未来结构化发送,支持目标/会话/项目字段以及可选过期和时区数据。工具调用在运行时绑定到当前 IM.codes 会话、项目、用户和服务器,智能体无法伪造命名空间、用户、服务器、令牌或路由字段;记忆、Send 和 Cron 均处于各自功能门控与 MCP 开关之后。共享上下文 UI 会报告每个受管服务商的 MCP 就绪状态、工具族门控状态、降级原因、更新时间以及最近经守护进程脱敏的工具调用。
四、监督式执行与自动审查 IM.codes 可以逐轮驱动受支持的智能体会话:由带有自定义指令的监督者在空闲边界评估每一轮已完成的工作,并决定自动继续、交还人工或触发审查循环,而不是每轮都由用户输入“继续”。Auto 模式可按会话配置为 off、supervised 或 supervised_audit。一轮结束后,IM.codes 可将其分类为 complete、continue 或 ask_human,并在同一会话内派发下一条继续提示。自动化采取故障关闭策略:在超时、输出无效或配置错误时把控制权交还用户,而不是静默猜测。在 supervised_audit 下,完成的轮次可自动进入审查管道,并在控制权返回前把返工简报发回同一会话。全局默认值可为新会话提供初始的监督者后端、模型和超时,新会话在启用时快照这些值,每个会话仍可单独覆盖后端/模型/超时和审查模式。自定义监督指令分两层:全局监督人格与会话级附加内容,默认按“全局、空行、会话”拼接;勾选会话的 Override global 可忽略全局值。与后端/模型/超时不同,全局值在每次派发时重新读取,因此编辑后对已启用会话立即生效。
五、OpenSpec 自动交付 针对基于 OpenSpec 的变更,Auto Deliver 把一个变更文件夹变成端到端的受监督交付运行:提案/规格审查、实现、验证、团队审查、自动模块评分、返工门限和可见的最终交接。它可从传输支持的编程会话中的 OpenSpec 变更一键启动,IM.codes 会解析所属会话、锁定 Team 通道以防冲突运行、读取 tasks.md 并在 UI 中保持运行投影。可选的提案/规格审查修复使用常规 Team 流程(默认 audit>review>plan),并读取权威 JSON 结果而不是依赖聊天摘要。守护进程把聚焦的实现提示发回同一会话,只处理该 OpenSpec 变更,跟踪已勾选/未勾选任务,并从项目清单中发现安全的验证命令候选。每次审查都会为 spec、tasks、implementation、tests 和 risk 生成结构化评分,证据和摘要显示在运行详情中。最终评分结论 PASS、REWORK 或 BLOCKED 决定运行可通过、在限额内返工还是需要人工决策。预设 fast、standard、strict 和 deep 可调节规格审查轮数、实现审查轮数、最大实现提示数和耗时限制。它是故障关闭且由人拥有的:在审查输出无效、时间/提示超限、人工干预、Team 状态不兼容或 tasks 不可读时要求人工输入;它不会执行 stage、commit 或 push,用户始终是最终发布负责人。
六、协作编码 可以把一个标签页、子会话或整个源服务器共享给其他用户。使用 viewer 进行只读审查,或使用 participant 让队友向被覆盖的会话发送提示。共享消息带有参与者标签,访问权限可从 UI 中降级或撤销。
七、Computer Use 与浏览器自动化 受支持的 SDK 智能体可通过类型化 Computer Use 工具控制桌面应用。跨平台桌面应用路径集成了由 Leo(iFurySt)开发的 Open Computer Use,采用 MIT 许可,该能力归功于该项目。浏览器自动化是 IM.codes 的独立功能,直接构建在 Chrome DevTools Protocol(CDP)之上:智能体可打开、检查、导航、点击、填写和求值页面,默认返回结构化文本,仅在请求时返回可选截图;受管浏览器暴露仅回环的 CDP 端点,本地 Python 或 Node 脚本可附加到同一活动实例,无需再启动一个浏览器。
八、远程终端与移动端 可从任意浏览器完整访问智能体会话终端,无需 SSH、VPN 或端口转发,可在原始终端模式(原生 CLI 体验)与解析过工具调用的结构化聊天视图之间切换。移动端提供 Watch 支持,包括快速会话监控、未读计数、推送通知和从手腕直接快速回复,支持 iPhone、iPad 和 Apple Watch,也提供 Web 应用。
九、适用场景与限制 适用场景主要是:离开工位后仍需持续跟进编程智能体会话;需要跨 Claude Code、Codex、Gemini CLI、GitHub Copilot、Cursor、OpenCode、OpenClaw、Qwen 等服务商统一记忆与工具面;需要对复杂任务进行多模型交叉审查;需要把智能体安全地延伸到多台受控电脑;以及需要把 OpenSpec 变更变成受监督的自动化交付流程。 限制与风险包括:项目明确声明不对稳定性、安全性和向后兼容作保证;企业共享上下文仍处于积极开发且尚未完全生产测试;远程桌面目前仅支持受支持的 Windows 节点,macOS 和 Linux 的远程桌面支持仍在规划中;受控节点的执行权限由所有者控制并可撤销;Auto Deliver 不执行 stage、commit、push,最终发布由用户负责。部分具体功能细节、收费方式与价格、明确的平台支持清单在现有资料中暂未提供。