• 请不要在回答技术问题时复制粘贴 AI 生成的内容
383394544
V2EX  ›  程序员

Agentic Engineering 的一些心得

  •  
  •   383394544 · 10h 48m ago · 482 views

    3 个月前从 Antigravity 入坑 agentic 开发,后来转 claude code + codex ,一点踩过的坑和心得分享。

    核心原则

    • 约束优先:剪枝,永远遵守 design → spec → plan → impl 的流程,要求提得越清楚,spec 越详细,后续越不容易上梁不正。
    • 代码为王:源码是给 agent 最好的说明书,不要迷信 JSON 、HTML 那些"代码可视化",agent 读代码比你强多了,为了让人类懂而把代码压缩成人类可读格式反而会误导 agent 。
    • 仓库管理:Git Repo 就是最好的记忆+上下文库,commit + PR 的设计不但有利于人类团队干活,也能很好地组织 agents 团队。想同步 memory 也是在 repo 根目录建一个 .memory/ 再加上 post-hook 就搞定的事,根本不需要额外的记忆管理。
    • 菜就多练:语言选择( Python, TS, Golang, Rust )、架构选择( Vue 、Flutter )、部署流( Docker 、K8S )、设计规范、迭代原则、工作流(需求 → schema → 接口约定 → 后端 → 前端 → E2E MVP )、网络排障、命令行指令、外语阅读能力这些“判断”并不能被 AI 取代(但可以让 AI 教你),老老实实学习,不要迷信那些減少信息熵的花拳绣腿

    踩过的一些坑、一些建议

    • 权威文档只要存一份,並且写记忆和 agent 说要去哪读。一开始我建了文档 repo ,里面把 spec 、plan 、milestone 、schema 、api 全放进去,后来发现字段定义东一块西一块:有的在文档库,有的在代码,有的在项目 repo 自己的 docs/。后来我约定:文档库只放项目全局的 overall spec 和给人类看的东西(例如我让 agent 给我整理 rust 名词对照表,方便我读懂 agent 写 rust 时做了啥」、spec 放项目自己的 docs/superpowers/、schema 定义只认 migration/*.sql ,接口定义只认代码。

    • cli 之间可以互相呼叫,例如 claude code 主驾可以 call gh 来管 PR 和 merge ,codex 来审代码,supabase db query --linked 来查改数据库,fly 看服务器 log 等。

    • claude code 有时会不小心创造接口,除了写记忆让它记得复用接口以外,也要自己多留心眼,尤其是项目变大了,有些逻辑要用前端中间件查、有些逻辑要用后端接口时,cc 不一定能猜得准你的意图。

    • 除了 superpowers 和 gstack 等 skill 之外,如果不确定自己的需求怎么实现,可以先和网页 LLM (例如 ChatGPT 、Grok )讨论,让它生成 prompt 丢给 cc 跑 brainstorming ,会比直接大白话咏唱强。

    zbinlin
        1
    zbinlin  
       7h 44m ago
    我是先设计架构,让它输出到 arch/
    然后开一个 session 进行 feature 开发,
    每进行一个 feature ,先让它读架构,输出到 specs 里,
    然后再开一个 session 开始 task plan ,让它读 spec ,输出 tasks 里,
    最后再开一个 session ,开始读 task 进行开发,开发完后让它总结到 results 里。

    这样做的好处是,每个 session 的 context 都尽可能小,每个 feature 都有文档记录。

    现在的问题是,这些操作比较繁琐,还不能自动化起来
    383394544
        2
    383394544  
    OP
       4h 46m ago
    @zbinlin 你这个工作流太长了,每次都会丢一点精度。让 "每个 session 的 context 都尽可能小" 不是好处,是坏处。现在的 Opus 4.7 上下文窗口很大,完全可以 handle 。
    383394544
        3
    383394544  
    OP
       4h 43m ago
    @zbinlin "每个 feature 都有文档记录" 没意义啊,那些东西你又不看、agent 也不需要,单纯制造中间商抽成而己。如果你真的想记录,用 pr 纪录和 issue 追踪就好了。我现在 cross repo 的问题都让 agent 把问题发到另一个 repo 的 issue 上,让另一个 repo 对着 issue 和自己的代码(有必要时看源 repo 的代码)改。
    c0xt30a
        4
    c0xt30a  
       3h 21m ago
    @383394544 我这边使用经验跟 OP 不一样:即使是 max 推理能力下,过了 200K 之后 claude 能力会退化的非常严重,丢三落四。所以拆开多个 session ,然后定义每个 session 的边界之后,一个一个来才能达到最好的效果。我的感觉是 1M 的 ctx 更多是噱头,实用性不是非常高。
    c0xt30a
        5
    c0xt30a  
       3h 17m ago
    claude 有一个 codex 没有的问题,逐个 session 开发的时候,前边的 session 经常性的会偷取后边 session 的任务,所以一定要在 prompt 里严格禁止。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   903 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 20:02 · PVG 04:02 · LAX 13:02 · JFK 16:02
    ♥ Do have faith in what you're doing.