Agent CLI
如何使用 CLI 管理 Agent 项目
Agent CLI
city CLI 是 Agent SDK 的便利包装器。它从 CLI 全局 DB 读取 Agent 配置,将模型、plugin 和启动参数传给 Agent SDK 构造函数,然后处理启动、停止和重启等生命周期命令。
项目初始化
city agent create不传路径时,可以选择当前目录或通过系统原生窗口选择其他文件夹;也可以显式传入相对路径或绝对路径,例如 city agent create .、city agent create ./my-project。
这会生成:
.agents/skills/.downcity/.env- CLI 全局 DB 中的 Agent 配置
项目目录结构
my-project/
├── .env
├── .agents/skills/
├── .downcity/ # 仅运行数据
└── 你的业务代码关键命令
city agent start— 在当前项目启动 Agentcity agent stop— 停止运行中的 Agentcity agent restart— 重启 Agentcity agent status— 检查 Agent 是否正在运行city agent logs— 查看运行时日志
Chat TUI 安全策略
在 Agent 管理器中进入 Chat 后,使用 /security 打开当前 Session 的安全策略选择器:
Default— 对应 Session 的ask模式;每次 unrestricted Shell 操作都需要明确审批。Always Allow— 对应always-allow模式;当前 Session 后续的 unrestricted Shell 操作会自动批准。
当前策略展示在 Chat Header 中。策略只影响当前 Session 的后续 Shell 请求;已经等待审批的请求仍需单独处理。Always Allow 不会绕过危险命令拒绝、Workspace 边界或其他运行时安全检查。
CLI 做了什么
- 从 CLI 全局 DB 读取 Agent 配置
- 通过已连接的 Federation AIService 解析
execution.modelId - 将解析后的配置传给
new Agent(...) - 启动 Agent 进程
- 维护守护进程状态,以便后续检查、停止或重启
CLI vs SDK
CLI 用于日常项目管理。SDK 用于将 Agent 能力嵌入自己的应用。两者使用相同的执行核心。
继续阅读: