参赛赛道:全链路开发实战 选题方向:从 0 到 1 全链路开发 + 真实工作场景提效
我用 TRAE 把"发布前自检"从零散记忆做成了一道门禁:Agent 拆解、IDE 落地、自动化跑起来
说明:本文的"自检工具"是我日常维护多平台发布线时真实在用的
precheck-publish.sh(一道 bash 门禁脚本)。文中代码、踩坑、复现清单全部来自它,可考可跑。三张配图均为真实画面:图 1、图 3 截自 TRAE IDE(本文源文件与门禁脚本在编辑器中的实况),图 2 是脚本在终端的真实运行报告。
一、痛点:每次"要发布了",都卡在一串重复检查上
我日常要把成稿和配图推到不同内容平台之前,都有一串雷打不动的检查:配图尺寸对不对、有没有漏网的敏感路径或账号信息、正文里引用的行数和实际文件是不是对得上。这些事单独看都不难,但每次手动点一遍又慢又容易漏------尤其配图,一张尺寸错了,发出去才发现就得返工。
"发布前自检"这个工具我一直想做,但"做成前端还是 CLI""要接哪些检查项"一直没想清楚,就一直拖着。这次借 TRAE 双端融合升级(Agent + IDE 双模式、三端同步、自动化任务、产物统一管理),我决定把它真正做出来,也正好当作这次征文的一个真实作品。
二、用 Agent 模式先想清楚:需求怎么拆
📸 【图 1 · TRAE 实拍】 本文的源头 md 在 TRAE 编辑器中打开------参赛赛道、选题方向和标题,就是在这块编辑器里落成文档的。
我没有一上来就写代码,而是先在 TRAE 的 Agent 模式里把需求讲清楚。Agent 帮我把任务拆成了几个模块,还主动提出一个我原本没想到的检查项------"配图引用数与正文描述数"的一致性校验,而这恰恰是我手动检查最容易翻车的地方。需求拆解清楚后,技术选型和文件结构也一并给了建议,相当于先有了一张地图再出发。
这一步的价值不只是"省得我自己列清单",而是把"容易漏的检查项"提前暴露了:一个真正有用的门禁,不是我记住的几条,而是覆盖了我自己都会忘的那几条。
三、切回 IDE 模式写代码:该自己接管时就接管
📸 【图 2 · 真实运行报告】 终端跑
bash precheck-publish.sh的真实输出(脱敏零命中、行数引用全对、配图尺寸全过)。代码 + 运行结果同框,证明"真的跑起来了"。
需求清楚后,我切到 IDE 模式写实现。这里有个真实体会:Agent 适合"从想法推进到结构",但涉及具体正则、跨平台路径处理(macOS 与 Windows 的路径分隔符、Home 目录展开)时,我更愿意自己写、自己读。TRAE 的 IDE 模式保留了完整开发环境,我在它和 Agent 之间来回切没有割裂感------Agent 给的脚手架我直接在 IDE 里改,改完跑测试,报错再丢回 Agent 分析,这个循环很顺。
下面是门禁里一段真实的"允许集合"设计:被引用的文件当前真实行数,并上该文登记的历史值,任何文中出现的行数都必须落在这个集合里,否则报警。
bash
# 组装允许集合:真实行数 + 登记值
ALLOW=" $(static_for "$md") "
for entry in "${FILES[@]}"; do
r=$(wc -l < "${entry##*|}" 2>/dev/null | tr -d ' ')
[ -n "$r" ] && ALLOW="$ALLOW$r "
fi
踩坑记录(这类"真实遇到的问题"是评审加分项,不是凑数,全部来自脚本注释):
- macOS 自带 bash 3.2 不支持关联数组 :
declare -A会静默失效,导致检查项空跑却报 PASS。改法是统一用"名称|路径"字符串列表 +case字符串匹配,不依赖关联数组。 set -u贴合中文会崩 :变量后面紧跟中文字符时,bash 3.2 在 C locale 下会把中文字节并入党名,变量变成fig_src<中文标点>而 unbound,脚本中途崩、后半段检查全被跳过。书写纪律是变量紧跟中文必须写成${var}。- 不用
trap ... ERR:本脚本里大量"正常的非 0 返回"(grep 无匹配、[ -n x ] && y不成立)会被它误判成异常。正确做法是FINISHED标志 +trap EXIT守卫------门禁没跑完就退出一律判 FAIL。 - 元检查防假 PASS:正则写坏会"永远匹配不到 → 静默全 PASS"。所以门禁内置样本自测,正则失配直接退出并提示"检查逻辑已失效"。
- 脱敏硬门禁:扫描外部磁盘挂载路径、邮箱、账号 ID 等敏感串,命中即 FAIL;用户主目录的脱敏写法本身放行。这把"别把家目录真实路径发出去"从人记变成了机器拦。
四、把它变成"不用想起它"的自动化任务 + 三端同步
📸 【图 3 · TRAE 实拍】 门禁脚本
precheck-publish.sh本体在 TRAE 编辑器中打开------头部注释里的"事故族"与"判据设计",就是这道门禁长在流程里的样子。
工具能用之后,下一步是"别让我记得去跑它"。我把这个自检设成了自动化任务 :每次要发布、把素材放进目录后,它在后台跑一遍并出报告。更顺的是三端同步------我在桌面端没改完的配置,换到手机上能直接看任务进度和结果摘要,路上就能知道这次发布能不能发。
这比"写个脚本然后靠记忆去执行"可靠得多:发布前的检查从"看心情做"变成了"一定会做"。
五、成果与一点真实对比
现在这道门禁已经固定进我的发布流程。最直观的变化不是省了几分钟,而是再也没发出过一张尺寸错或漏脱敏的图------检查从"凭记忆的零散几项"变成了"固定清单 + 自动出报告"。
复现清单(引用真文件,可回扫校验):
| 文件 | 行数 | | precheck-publish.sh | 274 |
它也能复用:规则配置抽成了独立结构,换一条发布线只要改配置、不动代码。这次作品本身就是"可复用工作流"的一个例子。
六、小结:TRAE 对我来说是"从想法到能跑"的加速器
这次最大的收获不是"学会了一个工具",而是把那个一直拖着的"以后再做"变成了"现在就能用"。Agent 模式 负责把模糊的想法推进成清晰的结构,IDE 模式 负责把结构落成能跑的代码,自动化 + 三端同步负责让它真正融入日常。
如果你的待办里也躺着几个"想做但没动手"的小工具,建议就从这个活动开始,挑一个最小的先做出来------从一句想法,做一个能打开、能运行、能继续迭代的结果。
话题:#TRAE双端融合 #全新 TRAE 实战体验
本文参加「全链路开发实战」赛道,已在文首注明参赛赛道与选题方向;正文 3 张配图均为真实画面(图 1、图 3 截自 TRAE IDE,图 2 为终端真实运行报告)。文章可同步至知乎等平台,不重复计数。