ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

jcode Self-Dev模式:会修改自己源代码的AI编程Agent有多疯狂

jcode Self-Dev模式:会修改自己源代码的AI编程Agent有多疯狂 jcode Self-Dev模式会修改自己源代码的AI编程Agent有多疯狂【免费下载链接】jcodeThe most RAM efficient harness项目地址: https://gitcode.com/GitHub_Trending/jcod/jcode你见过会改自己代码的AI编程Agent吗jcode 的 Self-Dev 模式就是这样一个存在只要你对 jcode 说一句进入 self dev 模式这个用 Rust 编写的 AI 编程助手就会克隆自己的源码仓库、修改自己的代码、编译自己的二进制然后无缝热重启自己并继续之前的任务——全程自动不需要你敲一条构建命令。这不是玩具功能。围绕 Self-Devjcode 搭建了完整的基础设施构建队列、版本回滚、上下文恢复、多会话共存。下面带你拆解它到底有多疯狂。什么是 Self-Dev 模式一句话讲清 普通 AI 编程工具帮你写别的项目Self-Dev 模式让 Agent 把jcode 自己当成开发对象告诉你的 jcode Agent 进入 Self-Dev 模式它就会开始修改自己的源代码。jcode 针对迭代自身做了专门优化允许它编辑、构建、测试自己的源码然后重载自己的二进制在你的可能是很多个会话中继续工作全自动完成。 —— 摘自 README.md官方将其定义为一种全新的可定制性范式——不再局限于插件或扩展能做的事而是让 Agent 直接改造工具本身。架构上Self-Dev 不是一台独立的重型守护进程而是共享服务器上的会话级能力session capability设计文档见 docs/plans/UNIFIED_SELFDEV_SERVER_PLAN.md。快速上手2步进入Self-Dev模式 第1步克隆源码Agent自动完成如果你本地没有 jcode 的源码检出self-dev会自动克隆到~/.jcode/source/jcode逻辑在 src/cli/selfdev.rs 的resolve_or_clone_repo_dir()中。第2步启动会话# 直接构建并启动 self-dev 会话 jcode self-dev --build # 或恢复之前的 self-dev 会话 jcode self-dev --resume session-id启动入口 run_self_dev() 会完成一系列事情创建或恢复一个标记为self-dev的 canary 会话、执行增量构建、将新二进制发布到启动器然后连上共享服务器拉起 TUI。整个过程由 scripts/dev_cargo.sh 和专用selfdevcargo profile 加速。核心工作流改代码 → 构建 → 重载 → 继续干活 Self-Dev 的疯狂藏在循环里。Agent 获得了一个专属的selfdev工具实现位于 crates/jcode-app-core/src/tool/selfdev/mod.rs支持以下动作动作作用selfdev build加入协调式构建队列避免多个Agent同时编译互相踩脚selfdev build-reload一步完成构建热重载构建失败则不重载selfdev reload重启服务并加载新二进制selfdev cancel-build取消排队中的构建请求selfdev status查看当前构建与会话状态Agent 的自我改造守则被固化在系统提示词中源码见 crates/jcode-base/src/prompt/selfdev_mode.txt核心要求包括优先用协调式selfdev build直接本地构建只作为兜底重载后自动继续不等待用户输入——这是Agent 自己改完自己接着干活的关键UI 改动要用debug_socket测试器做可视化验证重载前后的上下文如何衔接答案在 crates/jcode-app-core/src/tool/selfdev/reload.rs每次重载前会保存ReloadContext正在做什么任务、旧版本号、新版本号、会话ID重启后服务端直接向 Agent 注入一条指令重载成功旧版本 → 新版本。立即从中断处继续不要问用户接下来做什么。也就是说用户只会感觉 Agent 停顿了几秒构建然后它带着完整记忆继续改代码。安全感从哪来Canary会话 失败回滚 ️自己改自己翻车了怎么办jcode 做了两层防护Canary 隔离Self-Dev 会话被单独标记为 canary见 src/cli/selfdev.rs只有该会话能用 selfdev 工具和专属提示词普通会话不受影响。失败自动回滚如果新二进制启动失败恢复流程会调用rollback_pending_activation_for_session()把会话切回上一个可用构建src/cli/selfdev.rs并在日志中给出重载状态摘要。这套行为还有专门的回归测试覆盖例如 src/cli/selfdev_tests.rs以及构建脚本约定写在 AGENTS.md 中保证开发者与 Agent 遵循同一套工作流。值得一提的是会自我改造不等于可以乱来。README.md 官方建议Self-Dev 模式请使用前沿大模型如 GPT 5.5 级别因为 jcode 代码库不简单较弱的模型容易做出微妙的破坏性改动。为自我迭代而生的工程化优化 ⚙️能让 Agent 频繁改自己并快速验证前提是构建足够快。jcode 为此做了大量工程投入编译隔离重构按领域拆分 crate缩小根 crate 的重编译面让常见修改后的selfdev build更快规划见 docs/COMPILE_TIME_ISOLATION_REFACTOR.md边界约束每个类型 crate 都有明确的归属与验证命令矩阵见 docs/CRATE_OWNERSHIP_BOUNDARIES.md基准脚本scripts/bench_selfdev_checkpoints.sh 与 scripts/bench_compile.sh 持续度量增量编译耗时目标是把增量构建压到 5–20 秒多会话友好由于空闲内存占用极低同机器对比仅 30 MB 级Agent 可以一边自我改造一边维持多个会话并行参考 docs/images/swarm.png 的共享服务器模型总结这是Agent进化的自指时刻 jcode 的 Self-Dev 模式做了一件很有想象力的事把 AI 编程 Agent 的改代码能力指回了工具自身。它的完整闭环是——自然语言指令 → 修改自己的源码 → 排队构建 → 热重载自己 → 带着记忆继续任务对新手来说它是观察 AI Agent 工程化能力的绝佳样本对重度用户来说它是让工具按你的习惯长的终极定制方式。相关文档推荐阅读Self-Dev 架构设计docs/plans/UNIFIED_SELFDEV_SERVER_PLAN.md自我开发提示词crates/jcode-base/src/prompt/selfdev_mode.txt构建与运行约定AGENTS.md会改自己源代码的 AI可能正是下一个十年人机协作的起点。【免费下载链接】jcodeThe most RAM efficient harness项目地址: https://gitcode.com/GitHub_Trending/jcod/jcode创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表