Stakpak
让 DevOps 任务在你的机器上持续运行,并在需要时通知人工。
按维度查看评分与理由
证据显示:README 强调 Secret Substitution(LLM 不直接接触凭据)、Warden Guardrails(网络级策略阻止破坏性操作)、mTLS、隐私模式、可逆文件操作(自动备份)。配置支持 allowed_tools、auto_approve、max_turns 等,表明有权限控制和用户确认机制。数据流方面,文档说明了配置文件和通知路由,但未详细说明数据流向。敏感数据处理有专门机制,但未提供实现细节。依赖安全方面,Cargo.toml 列出了依赖,但未提供漏洞扫描或审计证据。外部影响方面,有 guardrails 和备份机制,但未说明具体策略。回滚方面,提到可逆文件操作和备份,但未说明系统级回滚。来源归属方面,发布者未验证,仓库有 Apache-2.0 许可证,但未提供贡献者或维护者信息。扣分原因:依赖安全缺乏证据,来源归属不明确。
证据显示:README 和 Cargo.toml 一致,版本号统一,工作区结构清晰。依赖可用性方面,列出了多个依赖,但未提供锁定文件或镜像信息。失败消息方面,文档提到 preflight checks 和 doctor 命令,但未提供具体错误处理示例。扣分原因:失败消息证据不足。
证据显示:README 描述了多种使用场景(DevOps、Kubernetes、CI/CD),支持多种安装方式(Homebrew、二进制、Docker),支持多种模型提供商(Anthropic、OpenAI、Gemini、自定义)。能力边界方面,有 allowed_tools 和 profile 配置,但未明确列出所有工具。触发精度方面,有 cron 调度和通知路由,但未说明触发条件。环境适配方面,支持 Linux、macOS、Windows,有 Docker 镜像,但未说明资源要求。扣分原因:能力边界和触发精度细节不足。
证据显示:README 结构清晰,有安装、使用、配置、安全等章节。安装说明详细,包括多种方式。命名方面,命令和配置项命名一致。示例和 FAQ 方面,有多个示例,但未提供 FAQ。已知限制方面,未明确列出。许可证为 Apache-2.0,有 LICENSE 文件。版本控制方面,有 CI 和发布流程,但未提供 CHANGELOG。维护责任方面,未明确说明。扣分原因:缺少已知限制、FAQ、CHANGELOG 和维护责任说明。
证据显示:输出可用性方面,有 TUI、MCP、ACP 等多种接口,输出格式未详细说明。边际价值方面,强调自动化 DevOps 任务,但未提供对比数据。成本效益方面,有免费选项(BYOK),但未提供性能或资源消耗数据。扣分原因:成本效益缺乏数据。
证据显示:README 中的声明(如安全特性)未提供实现细节或测试证据。跨来源验证方面,有 CI 和测试,但未提供独立验证。事实与推断分离方面,文档中有些声明可能基于推断,但未明确区分。扣分原因:声明缺乏可追溯性,跨来源验证不足。
- 发布者身份未验证,需谨慎对待来源。
- 依赖安全缺乏漏洞扫描或审计证据,建议检查依赖版本。
- 文档中的安全声明(如 Secret Substitution)未提供实现细节,需验证。
- 缺少已知限制和 FAQ,可能隐藏使用风险。
- 未提供 CHANGELOG,版本变更不透明。
这个 Agent 能做什么,适合哪些场景?
Stakpak 是一个面向 DevOps 的开源命令行代理,可在本机或远程主机上运行,并提供终端 TUI、24/7 Autopilot、MCP 服务与 ACP 接口。它可为 Terraform、Kubernetes、Dockerfile 和 GitHub Actions 建立本地索引与语义搜索,并执行命令、修改文件及跟踪后台任务。Autopilot 可按计划执行提示词任务,通过 Slack、Telegram 或 Discord 接收会话和发送通知;运行行为由 profile 配置,通知目标单独配置。它支持 Stakpak API key,也支持 Anthropic、OpenAI、Gemini 和自定义 OpenAI 兼容端点。适合希望把部署、排障和基础设施操作留在自有机器与现有 DevOps 工具链中的团队。
先运行 stakpak init 识别应用与技术栈,再通过 TUI 或配置的 profile 发起任务。代理可执行系统命令,流式展示 Docker 构建和部署等长任务进度,并管理端口转发或服务器等后台任务;文件修改声明为会自动备份以便恢复。stakpak up 会启动后台 Autopilot,按 autopilot.toml 中的 cron schedule 运行 prompt,并将结果发送到配置的 channel 和 target;也可由 Slack、Telegram 或 Discord 入站消息启动会话。stakpak mcp start 可暴露本地、远程或 combined 工具,stakpak mcp proxy 可加载 mcp.toml/mcp.json 中的上游 MCP 服务。它还提供 stakpak acp,以 ACP 方式接入配置好的 Zed 编辑器。
- 负责 Kubernetes 和 Terraform 的平台工程师,可先执行
stakpak init,再用本地索引和语义搜索定位基础设施配置。 - 需要持续检查部署状态的运维团队,可创建带
--cron和--profile monitoring的 Autopilot schedule,并把通知发送到 Slack#ops。 - 在小型远程 Linux 主机上维护应用的开发者,可在 Docker 就绪后运行
stakpak autopilot doctor与stakpak up,让代理在后台运行。 - 希望在编辑器中调用本地开发代理的 Zed 用户,可将
stakpak acp配置为 agent server 后创建 Stakpak 线程。 - 已有多个 MCP 工具服务的团队,可用
stakpak mcp add注册 stdio 或 HTTP 服务,并以stakpak mcp proxy统一代理连接。
这个 Agent 有哪些优点和局限?
- Autopilot 将 cron 调度、入站消息通道、通知路由和 profile 行为拆分配置,便于把监控、部署观察等任务交给不同运行配置。
- MCP 同时提供本地、远程和 combined 工具模式,并能通过
stakpak mcp proxy聚合多个 stdio 或 HTTP 上游 MCP 服务。 - README 明确列出动态密钥替换、默认 mTLS、隐私模式和可恢复的文件修改,针对 DevOps 场景中的凭据与变更风险设计。
- 除 Stakpak API key 外,还记录了 Anthropic、OpenAI、Gemini 及自定义 OpenAI 兼容端点的配置路径。
- 远程 VM 上的 Autopilot 依赖 Docker;文档建议 2GB 以上内存,并建议小型 Linux 主机配置 swap 和 linger。
- 远程 MCP 工具与 combined 模式需要 API key;不同模型或自定义端点需要手动维护
config.tomlprofile。 - README 将 Slack 工具标为 experimental,不能据此推断其适合所有生产协作流程。
- 可通过
--disable-mcp-mtls或--disable-secret-redaction降低保护,但文档明确不建议在生产环境这样做。
如何安装或部署这个 Agent?
安装 CLI:curl -sSL https://stakpak.dev/install.sh | sh。也可在 Linux 或 macOS 上执行 brew tap stakpak/stakpak 和 brew install stakpak,或拉取镜像 docker pull ghcr.io/stakpak/agent:latest。首次使用可运行 stakpak 并按交互流程创建 Stakpak API key;若使用自有模型凭据,可执行 stakpak auth login --provider anthropic --api-key $ANTHROPIC_API_KEY,或将 anthropic 替换为 openai、gemini。远程 VM 上运行 Autopilot 需要当前用户可访问 Docker;文档建议至少 2GB RAM,小型 Linux 主机建议启用 swap。
如何使用这个 Agent?
完成认证后,执行 stakpak init,然后运行 stakpak 打开 TUI。启动常驻运行时前可执行 stakpak autopilot doctor,再执行 stakpak up;查看状态和日志使用 stakpak autopilot status 与 stakpak autopilot logs,停止使用 stakpak down。使用 BYOK 或本地兼容端点时,在 ~/.stakpak/config.toml 定义 profile,随后执行如 stakpak --profile byok。要仅启动无需 API key 的本地 MCP 工具,使用 stakpak mcp start --tool-mode local。
这个 Agent 与同类方案有什么区别?
相较于将部署能力托管给 PaaS 的方式,Stakpak 的定位是运行在用户自己的机器上,提供类似 PaaS 的持续运维体验,同时避免该类托管平台锁定;是否满足具体 PaaS 的托管、扩缩容或服务能力,文档未说明。
常见问题
必须使用 Stakpak API key 吗?
Autopilot 如何保持运行并通知团队?
stakpak up 启动后台运行时;schedule 由 cron 和 profile 定义,通知通过配置的 Slack、Telegram 或 Discord channel/target 路由。远程 Linux 主机可能需要启用 linger,避免登出后用户服务停止。它会直接暴露我的密钥给模型吗?
--disable-secret-redaction,因为该选项会以明文打印密钥。能接入现有 MCP 工具和 Zed 吗?
stakpak mcp proxy 支持发现或指定 mcp.toml/mcp.json,并可配置 stdio 和 HTTP 上游 MCP 服务;Zed 可通过命令为 stakpak acp 的 agent server 配置接入。