首页 文章 精选 留言 我的

精选列表

搜索[CODING DevOps],共7256篇文章
优秀的个人博客,低调大师

如何打造一个睡觉后依然自己工作的 Coding Agent?

> **导语** 如果 AI 只能在你坐在电脑前时帮你补全代码,它本质上依然只是一个“高级代码副驾”。 真正颠覆生产力的,是另一种范式:**睡前给 Agent 一个 Goal,关掉电脑去睡觉;第二天早上醒来,验收一个已经完成自闭环交付的系统。** **01|范式转移:从“人机问答”走向“自主执行”** 过去我们使用 AI 编程,本质上是在做**高频回合制交互**: - “帮我写一个登录接口。”(AI 生成) - “加个验证码功能。”(AI 修改) - “报错了,修一下。”(AI 修复) - “再把前端页面连调一下。”(AI 继续修改) 这种模式下,**AI 永远在等待人类的下一条指令**。你不敲回车,它的生产力就停滞在原地。 传统的协作链路是:`人 → AI → 人 → AI → 人 → AI` 而真正的 Agent 协作模式正在演变为:`人 → Goal → Agent 自主循环` 你只需要定义终局标准,具体的拆解、编码、调试与迭代,全部交给 Agent 自行推进。 **02|什么是 Goal 模式?从“教它做事”到“要结果”** Goal(目标驱动)与传统 Prompt 最大的区别,不在于提示词的长短,而在于**控制权的让渡与抽象层级的提升**。 - **传统指令模式(关注过程)**:修改 `user.ts` 增加接口 → 修改 `router.ts` 增加路由 → 修改前端组件加按钮 → 运行测试。 - **Goal 模式(关注交付)**: > **Goal**:完成当前项目完整的用户管理体系。支持注册、登录、资料修改、RBAC 权限管理与后台面板;保持现有架构与 UI 风格;严禁破坏现有业务;自行运行完整测试并修复所有 Bug,直到达到生产就绪状态。 一句话总结核心差异: - **传统模式**:人类告诉 AI **怎么一步步做**。 - **Goal 模式**:人类告诉 AI **最终交付成什么样**。 **03|真正的核心:不是连续生成代码,而是“自愈闭环”** 所谓“让 AI 连续工作几天几夜”,绝不是让模型不间断地吐出几万行代码,而是构建一个**具备自我纠错能力的工程执行闭环**: ```javascript Goal(目标输入) ↓ Plan(任务拆解与规划) ↓ Execute(编写/修改代码) ↓ Test & Run(运行环境与自动化测试) ↓ Find Issues(捕获报错与异常边界) ↓ Self-Fix(定位根因、重新修改) ↓ Regression Test(回归测试通过) ↓ Next Task → Final Goal Completed(推进直至最终交付) ``` 真正的 Agent 不仅会写代码,更具备动态决策能力: - *刚才的改动为什么导致测试挂掉?* - *现有上下文里有没有可复用的公用模块?* - *当前任务是否已达到交付标准?下一步该做什么?* **当思考、编码、运行、报错、修正全部在 Agent 内部自闭环时,“人去睡觉,机器干活”才真正成为可能。** **04|为什么大型复杂任务必须依赖 Goal 模式?** 面对一个中大型系统(例如从零构建一套企业级 API 路由与分发中枢),背后往往交织着数十个子模块:鉴权、Key 管理、路由调度、计费统计、限流风控、日志链路、单元测试…… 如果依然采用“人肉驱动 Prompt”的方式,开发者会在几十轮琐碎的交互中精力耗尽。 而在 Goal 模式下,Agent 会自动将一个宏观目标解构为任务树: - 自动发现项目依赖并选择最优设计模式; - 逐步实现业务逻辑,发现断言失败自动回溯; - 遇到方案冲突自主评估并重构代码。 把人类从**微观编码执行者**中解放出来,让 AI 承担系统性的脏活累活。 **05|工程师角色的质变:从“写代码”到“工程总指挥”** 当 Agent 承担了大部分 CRUD、接口联调、UI 还原、Debug 和单元测试编写后,开发者的核心竞争力正在发生重构: - **过去比拼**:语法熟练度、API 记忆量、手写基础算法的速度。 - **未来比拼**: 1. **定义目标**:能否把模糊的业务需求,拆解为无歧义的交付标准? 1. **系统架构**:能否搭建高内聚、低耦合的基础底座,供 Agent 顺畅扩展? 1. **规则约束**:如何制定开发规范与测试基准,让 Agent 有据可依? 1. **最终验收**:精准审查边界安全、业务逻辑与性能指标。 **未来的超级个体,本质上是一个指挥着多 Agent 协同工作的“技术主管”。** **06|实战技巧:如何写出“能跑一整夜”的 Long-Running Goal?** 想让 Agent 稳定工作几小时甚至几天而不中断,Prompt 的设计有讲究: - **赋予自主推进权限**:明确声明“遇到编译错误、测试失败或运行时异常,优先自行分析日志并修复,无需等待人工指令”。 - **明确边界与降级策略**:普通代码逻辑自行决策,只有遇到破坏性架构变更或重大安全隐患时才暂停挂起。 - **设定可验证的完成标准**:必须以“所有单元测试通过 / Lint 无报错 / 构建成功”作为退出条件,而非“代码写完即停”。 **最适合长期自主运行的五类场景:** - **完整功能模块开发**:从数据层到表现层的全链路落地。 - **全工程重构迁移**:老旧技术栈升级或模块架构解耦。 - **历史 Bug 扫荡**:基于日志与 Issue 列表进行系统性排查与自愈。 - **测试用例补全**:为核心资产建立完整的测试覆盖网。 - **生产部署就绪**:规范格式化、补齐接口文档、优化构建体积。 **07|安全边界:无人值守不等于无序失控** 长时间让 Agent 在后台自主运行,必须建立**分级权限防护网**,坚守“低风险全自动,高风险需确认”的原则: |**权限状态**|**允许的操作(自动执行)**|**严格限制的操作(阻断/需确认)**| | --- | --- | --- | |**文件与代码**|修改项目源码、新建测试用例、重命名文件|直接删除未追踪的工程目录| |**环境与依赖**|安装项目 npm/pip 依赖、运行构建脚本|修改宿主机系统全局配置| |**测试与运行**|本地测试、热重载验证、本地日志捕获|直连生产数据库执行写操作| |**资产与凭证**|引用环境变量中的测试 Mock Key|暴露/外发真实生产 API Key 与敏感密钥| **写在最后** 过去软件开发受限于人类生理极限,我们常说:“今天太晚了,先做这些,明天再搞。” 而在 Agent 时代,这个习惯正在变成:**“今天先给它定好 Goal,明天早上看看它跑出了什么成果。”** 当一个 Agent 能够独立理解目标、规划步骤、编写实现、测试验证并持续修复缺陷,AI 就已经跨越了“打字助手”的阶段,真正演变为一位**24 小时待命、不眠不休的数字软件工程师**。 如何将你的需求提炼为一个精准的 Goal,并放手让 Agent 自主运转,将是每一位开发者拉开生产力差距的关键所在。

优秀的个人博客,低调大师

阿里发布面向真实软件工程的 Agentic Coding 平台:Qoder

阿里巴巴旗下团队推出Qoder,这是一款面向真实软件工程的Agentic编码平台,现提供免费公测,支持Windows与macOS。平台深度接入Claude、GPT、Gemini等最新大模型,并通过自动路由为不同任务匹配最优模型,无需用户手动切换。 Qoder 围绕上下文工程能力 内置代码检索引擎,可检索10万个代码文件; 率先支持Repo Wiki,将代码工程的隐性知识显性化,方便开发者和 AI 理解; 集成长短期记忆系统,可基于会话历史总结项目经验和个人偏好,并将信息存储为一个“笔记”,实现自我学习和进化,最终让AI执行结果更符合用户预期和偏好。 例如,用户在开发过程中有“完成任务后要生成单元测试”、“完成任务后提供详细报告”等要求,Qoder 会理解用户习惯并形成记忆,在后续执行任务时自动完成这些工作。 如需体验Qoder,用户可在Qoder官网免费下载体验 https://qoder.com。

优秀的个人博客,低调大师

🔥※【mybatis-mp】1024 coding 好用的 ORM 框架:1.7.2 正式发布!

官网 :https://mybatis-mp.cn 更新: 1:代码生成器 修复默认值缺少 " 问题 2:代码生成器兼容 表/列备注 带有换行符问题 为什么推荐 mybatis-mp ?: mybatis-mp 是一款超级强大的 ORM 框架 1:可多表 join(不再只能单表了) 2:良好 resultMap 结果映射能力(不怕映射错误了) 3:良好的扩展能力:orm+sql 模板 (让 ORM 框架不再死板,扩展性极强) 4:就算 xml 也不用再增加什么插件了,自带 xml 分页 5:强大的各种数据库适配,可在一套代码中 实现多个数据库适配;真正的 ORM hibernate 都做不到 6:极简的 api 设计,让开发者 不再迷糊 7:还很多很多独特优良的设计,只有前往体验,才能感受了;不相信可以试试!!! 1.单表 +@Fetch 注解 + fetchFilter 方法 @Data @ResultEntity(SysUser.class) public class SysUserVo { private Integer id; private String userName; private String password; private Integer roleId; private LocalDateTime create_time; @Fetch(source = SysUser.class, property = "roleId", target = SysRole.class, targetProperty = "id") private List<SysRoleVo> sysRoles; } List<SysUserVO> list = QueryChain.of(sysUserMapper) .from(SysUser.class) .fetchFilter(SysUserVO::getRoles,where->where.eq(SysRole::getStatus,1)) .returnType(SysUserVO.class) .list(); fetchFilter 方法是对 @Fetch 注解的增强,没有特殊要求一般,可忽略 2. 单表查询 SysUser sysUser = QueryChain.of(sysUserMapper) .eq(SysUser::getId, 1) .eq(SysUser::getUserName,'admin') .get(); 3.VO 映射 @Data @ResultEntity(SysUser.class) public class SysUserVo { private Integer id; private String userName; //字段名字不一样时 @ResultEntityField(property = "password") private String pwd; } SysUserVO sysUserVO = QueryChain.of(sysUserMapper) .eq(SysUser::getId, 1) .eq(SysUser::getUserName,'admin') .returnType(SysUserVO.class) .list(); 4. join 查询 @Data @ResultEntity(SysUser.class) public class SysUserVo { private Integer id; private String userName; //字段名字不一样时 @ResultEntityField(property = "password") private String pwd; //映射一个对象 1对1 @NestedResultEntity(target = SysRole.class) prviate SysRole sysRole; //映射多个对象 1对多 @NestedResultEntity(target = SysRole.class) prviate List<SysRole> sysRoles; } List<SysUserRoleVO> list = QueryChain.of(sysUserMapper) .from(SysUser.class) .join(SysUser.class, SysRole.class) .returnType(SysUserRoleVO.class) .list(); 还有很多很多超级方便有趣的写法,欢迎大家来使用https://mybatis-mp.cn 例如: 1 . 多表 join A 内嵌 B B 内嵌 C 都可以 2 . 不使用 join 使用 @Fetch 注解 + fetchFilter 方法实现 将 A JOIN B 变成 query A + query B 3 . 使用 @Paging 注解 实现你的 xml 自动分页 4 . 使用 SQL 模板,让你 ORM 更简单更容易扩展,再也不怕被框架限制了

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册