opencli 不只是把 prompt 发给模型,它还支持在本地工作区内执行受控工具调用。
当前内置工具包括:
read_filelist_dirsearch_filesrun_shelldelegate_agentdelegate_agents文件系统访问和 shell 执行都应受 workspaceRoot 约束,避免越界访问本地环境。
shell 命令不是无条件执行的。系统会根据 approvalMode 和 nonInteractiveApproval 判断是否允许执行。
即使审批策略允许,明显危险的命令也会被阻止,例如:
sudorm -rf /mkfsshutdownrebootshell 命令超过 shellTimeoutMs 会被终止,请求本身则受 requestTimeoutMs 控制。
所有工具执行过程都可以写入 auditLogPath,用于:
常用命令:
opencli audit list --limit 50
opencli audit tail --lines 20 --follow
opencli audit export --output /tmp/audit.json
本项目支持本地 agent-to-agent delegation,但其行为同样受配置约束:
a2aEnableda2aMaxDeptha2aMaxConcurrencyallowedToolKindsallowedTools这意味着 A2A 不是无限制的多层自主执行,而是一个在本地可控、可追踪的 delegation 机制。