ESSH 用于简化智能体执行远程 SSH 命令的流程。人类用户先通过 essh add 配置主机档案,智能体之后只需使用档案名称即可运行命令,无需重复输入 user@host、端口和密钥路径。
主要能力:列出可用档案(essh list --json,返回名称、用户、主机、端口、key_path 等字段);在已保存主机上执行命令(essh <name> <command>),例如 essh coral-fox "uname -a" 或 essh prod-web "tail -n 100 /var/log/app.log"。
安装检查:运行 essh --help;若未安装,使用 uv tool install "git+https://github.com/lirrensi/agent-sommelier"。
命令过滤:人类可为每个主机设置过滤规则,采用通配符匹配,动作有 allow(直接运行)、ask(需人类授权,非 TTY 模式下生成授权请求,人类运行 essh authorize <name> 后放行)、deny(立即拒绝,无法绕过)。规则按全局优先、再按主机从上到下匹配,最后一条匹配规则生效。可用 essh filter list global 查看全局规则,essh filter list <name> 查看主机规则。通配符规则与 opencode 权限系统一致,例如 rm * 可匹配裸 rm 与 rm -rf /。若命令被拦截且认为有误,可提示人类添加 --action allow 规则或调整模式。
适用场景:需要频繁在固定远程主机上执行运维或检查命令的智能体工作流。限制:档案需由人类预先配置;deny 规则不可绕过;ask 规则在非交互模式下需人类授权;资料未提供更多平台、收费或价格信息。