Skip to content

本篇导读

预计阅读时间:8 分钟。从本章开始解构 Agent 系统。本篇讲执行环境——Agent 的手和脚:它怎么读写你的文件、怎么执行命令、以及最重要的:权限边界在哪里。以 Zcode 为例讲解,但概念在所有 Agent 里相通。

第 1 章我们说过,Agent 和聊天框的根本区别是它能动手。从这一章开始,我们把这个「动手系统」拆开看个明白。本章起用 Zcode 做例子——注意,我们讲的是通用概念,不是 Zcode 的使用手册,你在任何 Agent 里都能找到对应物。

先看第一站:执行环境。它是 Agent 一切能力的基础。

工作目录:Agent 的「活动范围」

你在 Zcode 里打开一个文件夹再开始对话,这个文件夹就是本次会话的工作目录(working directory)。

类比一下:工作目录就是给 Agent 划定的「办公室」。它接到的任务、创建的文件,默认都在这间办公室里发生。你要让它整理 D 盘的照片,就把 D:\photos 作为工作目录打开;要让它改某个项目,就打开那个项目的文件夹。

这个设计很聪明:用「打开哪个文件夹」这个动作,天然圈定了 Agent 的活动范围,既给它明确的上下文,也限制了它乱碰别处的可能。

文件读写:Agent 的眼睛和手

在工作目录里,Agent 可以:

  • 读文件:看你的代码、文档、表格、配置。这是它了解任务现场的主要方式。
  • 写文件:新建文件、修改内容。让它「写个脚本」「改个配置」,落点都是这一步。
  • 搜索:在大量文件里找关键词、找文件名,不用你告诉它在哪。

值得强调的是,它读文件是一段一段看的,就像人翻书。所以文件组织得越清楚,它干活越利索——这也是为什么第 3.2 节的规则文件那么重要。

终端:Agent 的万能工具

如果说文件读写是「手」,那终端(就是命令行窗口)就是瑞士军刀。

在终端里,几乎能做计算机上的一切:移动和重命名文件、安装软件、运行脚本、压缩解压、查看网络状态……Agent 拿到终端,就意味着它能把「想法」变成真实的操作。

Windows 用户注意:终端里跑的通常是 PowerShell 这类 Windows 专属命令,和你在电影里看到的黑客命令不是一回事,也不用背——这些命令全部由 Agent 自己写自己跑,你只需要看懂它干了什么。这也正是 Agent 的价值:它替你掌握了这门手艺。

举个例子,你对它说「把文件夹里所有 2024 年的照片移到备份文件夹」,它在终端里实际执行的可能就是一条移动文件的命令。你不指挥它,它也不需要你懂。

权限:最重要的一道闸

读到这里你可能有点慌:它能读我文件、跑我命令,那安全吗?

这就是 Harness 的核心设计之一:权限机制。以 Zcode 为例,界面上有四个权限模式可以切换,从紧到松:

  1. 计划模式:最保守。Agent 只读、只想、只出方案,不动你任何文件——写文件、执行命令的请求一概不执行。适合先让它规划思路,你确认方案满意了,再切到其他模式动手。
  2. 变更前确认:默认推荐档。读文件不经过你手动点击同意,但改文件、执行命令会请求你手动确认。
  3. 自动编辑:放宽一档。文件的新建和修改不再逐次问你,Agent 可以连续动手;但执行终端命令仍需你确认。适合大量改代码、写文档的场景。
  4. 完全访问:全放开。写文件、跑命令都不再询问,Agent 全速干活。效率最高,风险也最大——建议只在可信任务、目录有备份或版本管理(如 Git)覆盖时使用。

你的每次批准都是在告诉它「这类事可以自己做」。用久了你会找到自己的平衡点:信得过的操作放行,拿不准的盯紧点。

小结与下一站

执行环境 = 工作目录(活动范围)+ 文件读写(手)+ 终端(瑞士军刀)+ 权限(安全闸)。这四样合起来,就是 Agent「能动手」的全部秘密。

但一个光能动手、不懂规矩的 Agent 很难用。下一节讲怎么给它立规矩——一个神奇的文件:AGENTS.md。

Powered by VIDDsys