mcpField
E
ebman

ebman

本地服务
poly.io云与基础设施1今天更新

关于 ebman

ebman 是面向 AWS Elastic Beanstalk 运维人员的键盘驱动终端界面,整合环境排查、操作和审计及安全控制,并提供 MCP 服务供客户端查询环境及请求经确认的写入操作。

主要功能

  1. 01实时环境列表与深入查看
  2. 02健康排查、事件和日志检查
  3. 03部署、配置、队列与实例操作
  4. 04多账户和多区域查询
  5. 05安全控制与操作审计日志

适用场景

  1. 01排查不健康的 Elastic Beanstalk 环境
  2. 02比较环境设置和部署版本
  3. 03管理 Worker 队列与部署
  4. 04让 MCP 客户端查看环境并请求受控操作

MCP 相关

`ebman mcp serve` 将环境数据和诊断信息作为 MCP 工具提供。写入操作可采用先生成计划、再确认的两阶段流程;`--allow-writes` 可启用部分或全部写入,`--read-only` 则会禁用写入。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库
安装包
cargoebman0.47.1

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

ebman

crates.io downloads CI license homebrew by Polymorphism

一款 k9s 风格的 AWS Elastic Beanstalk TUI。 排查异常环境、流式查看日志、编辑选项设置、部署新版本——一切只需键盘操作。如果你用过 k9s 管理 Kubernetes,就能沿用熟悉的操作习惯:用 : 输入命令,用 / 筛选,用 Enter 深入查看,用 ? 获取上下文相关帮助。

安装 · 快速入门 · 排查工作流 · 亮点 · 为什么选择 ebman? · 文档

ebman 演示 — 筛选 → :why → 深入查看 Detail/Instances → 内嵌 SSM 会话

使用随二进制文件提供的合成舰队模式 ebman --demo 录制。代码变更后,可运行 vhs demo.tape 重新生成 gif。

安装

Homebrew(macOS / Linux):

brew install tombaldwin/tap/ebman

Cargo:

cargo install ebman

预编译二进制文件: 从 GitHub Releases 页面下载适用于你平台的 tarball,验证旁边的 *.sha256,解压后将 ebman 放入 PATH。

已在 Rust 1.94.1+ 上测试(AWS SDK 的最低版本要求)。支持 macOS(Apple Silicon + Intel)和 Linux x86_64。AWS SDK 使用标准凭证链(AWS_PROFILE / AWS_REGION 环境变量、~/.aws/credentials、实例角色等)。

如需更美观的字形集(Powerline 药丸链、Nerd Font 标签页图标),请参阅 docs/fonts.md。默认的 icons = "unicode" 在任何终端中都能正常使用。

快速入门

ebman                                  # launch the TUI
ebman --read-only                      # disable all write surfaces (audit-friendly)
ebman --demo                           # synthetic fleet (no AWS calls) — for screenshots / VHS
ebman --version
ebman --help

启动后,按 ? 查看各上下文对应的按键映射(Detail、DLQ、Action menu 和 Saved-configs overlay 均有各自的帮助信息)。

排查工作流

凌晨 3 点,生产环境变红了。在终端中:

  1. ebman — 启动;prod-api 在表格中显示为红色
  2. /prod-api ↵ — 跳转到该环境
  3. ! — 打开 :why:在同一个覆盖层中查看近期事件 / 警报 / 实例健康状态 / 最近部署
  4. :diff prod-api staging-api — 确认 staging 仍在运行之前的版本
  5. :rollback — 重新部署最后一个已知正常的版本标签,并提供 5 秒撤销窗口
  6. 操作和结果会记录到 ~/.cache/ebman/audit.log

五次按键即可完成排查,一条命令即可修复。作为替代方案,AWS 控制台至少需要加载五个页面、打开两个标签页,而且完全没有审计记录。

专为每天排查 EB 环境、不想在 AWS 控制台之间来回切换的运维人员打造——也省去每次环境变红时都要运行 eb deploy ; aws elasticbeanstalk describe-events --max-items 50 | jq ... 这样的 Shell 管道命令。

亮点

  • 实时环境表格,支持排序、筛选、按应用分组、健康状态迷你图、严重程度色调和鼠标操作。
  • 按环境深入查看——提供 Health / Events / Instances / Metrics / Queue / Logs / Config / App 标签页。
  • 自定义指标——App 标签页显示环境的 CloudWatch 指标、RDS / ElastiCache 行,以及 config.toml 中 app.ENV.* 的主要日志错误;如果没有配置,则显示发现的内容;按 e 可通过表单编辑配置,无需重启。
  • 红色环境排查——:why 打开单屏诊断视图:近期事件、告警、实例健康状况和最近部署;Worker 环境还会显示 DLQ 概览。
  • 事件模式——:incident START "headline" 会冻结整个集群的部署、固定显示带计时器的页眉横幅,并记录审计日志;ebman freeze 会声明一个不归任何会话所有的冻结状态,并持续冻结,直到执行 ebman thaw;:event-tail 会在单个浮层中串流显示所有环境的 EB 事件;ebman audit replay <line-id> 会重新执行经过审计的操作,供事件后审查。
  • 如实呈现健康状况——存在状态为 ALARM 的告警、有消息的 DLQ 或平台过时的环境会直接显示在对应行上,而不是藏在标签页后。
  • 取证——:diff env-A env-B 查看选项设置差异,:lineage 查看部署时间线,:alarm-history NAME 查看 CW 状态转换,:config-diff-local 对比本地 EB CLI 保存的配置。
  • 日常写入操作——环境变量、标签、部署(标签 / 本地 zip / S3,支持 --preview)、保存的配置、CW 告警 CRUD、ALB 方案、实例类型、容量、部署策略,以及通用的 :set-option 备用入口。
  • Worker / SQS——DLQ 查看器支持重新发送、输入名称确认后清空、批量删除、预览和持续查看。
  • SSM——:ssh i-abc 打开嵌入式会话;:ssm-run "<cmd>" 会在该环境的所有实例上执行 Shell 命令。
  • 多账户 / 多区域——:region all 并行查询(每次读取和写入都会使用对应行所属的区域;NAME@REGION 可在两个同名环境中选定其一),:account NAME 通过 sts:AssumeRole 切换账户,:find-env / :org-health 会遍历所有 ~/.aws 配置文件和已配置账户。
  • 批量操作——按 space 进行多选,然后使用 :batch-* 并行分发操作,并显示审计记录和待处理状态行。
  • 安全与审计——--read-only 标志、输入名称确认、按环境 / 账户设置的只读锁定,以及位于 ~/.cache/ebman/audit.log 的完整审计日志。
  • 无头运行 / 可脚本化——--control-socket PATH、ebman envs --json、ebman action rebuild --env NAME、ebman ctl screen / state / cmd <:cmd>。
  • 面向 Agent 原生支持(MCP)——ebman mcp serve 会将读取功能(环境、Worker 队列、why 排查信息包、近期日志、lint、漂移、选项设置、事件、版本、成本)作为 MCP 工具公开,因此 Claude Code 或任何 MCP 客户端都能原生查询你的整个集群,无需调用 Shell 命令再重新解析结果。支持两阶段写入——deploy / restart / rebuild / terminate / set_option / dlq_resend / dlq_delete / dlq_purge(工具会先返回计划,再由 confirm_action 执行分发)——前提是你的客户端能够向你提问:每次确认都会弹出对话框,说明要执行的操作、该操作会排除的事项,以及将使用的身份;只有确认获批后才会执行分发。(ebman 无法判断你是否在客户端替自己作答——请参阅 docs/safety-and-privacy.md——因此在无头或脚本化客户端上,建议使用 --read-only 或范围更窄的 --allow-writes。)无法向你提问的客户端需要使用 --allow-writes,或使用 --allow-writes=dlq_resend,dlq_delete 仅授予部分写入权限;--read-only 则会在该服务上直接拒绝写入。所有操作都会遵守与 TUI 相同的安全锁定、只读设置和跨进程事件冻结,并审计每次分发和拒绝。

为什么选择 ebman?

你可能已经在使用以下其中一种工具:

工具擅长之处在日常 EB 排查中的不足
AWS Console易于上手,界面功能齐全。页面加载慢,状态最终一致,排查一个环境要打开 5 个标签页。偶尔处理运维还行,但凌晨 3 点用起来很痛苦。
eb CLI单个项目的部署流程(eb deploy、eb logs)。无法查看多个环境,没有实时下钻、环境间差异对比或 SQS DLQ 工作流。
aws elasticbeanstalk可直接访问原始 API,支持脚本化操作。你得自己用 --query / jq 管道搭建工作流。没有实时更新,也没有排查视图。
k9s + EKS本工具借鉴的模式。Elastic Beanstalk 没有类似工具。

ebman 是面向 EB 的 k9s:以键盘操作为主、优先支持下钻,专为每天排查红色环境的运维人员打造,让你在一个屏幕上查看“哪里出了问题”和“发生了哪些变化”。在更广泛的 Rust TUI / k9s 风格工具中,最接近的同类产品是 e1s(面向 ECS 的 k9s);ebman 的写入功能更全面,并增加了多账户扇出、审计日志、按环境设置的安全锁,以及内嵌的 SSM 会话面板。

文档

  • 按键 — 普通模式、详情视图标签页、DLQ 查看器。
  • 命令参考 — 按用途分组的所有 :command(导航、单环境、写入、多账户、批量操作)。
  • 配置 — ~/.config/ebman/config.toml、插件命令、项目本地固定配置。
  • 字体 — 安装 Nerd Font 以使用 Powerline 字形集。
  • 无头接口 — 脚本 / CI 使用的 --control-socket + ebman ctl;CLI 子命令;Shell 补全(ebman completions);以及供 Claude Code 和其他 Agent 使用的 ebman mcp serve MCP 服务(读取工具 + 需确认的两阶段写入)——运行 ebman mcp setup 获取准确的注册命令。
  • 安全、隐私与本地存储内容 — 只读模式、审计日志、错误报告脱敏。
  • 架构 — 模块关系图、按键操作如何转化为 AWS 调用,以及编译器不会强制执行的不变量。
  • 开发 — 构建 / 测试 / clippy 和分发说明。
  • 参与贡献 — 环境设置、PR 前检查清单,以及便于接受的更改应具备的特点。

许可证

采用 MIT 或 Apache-2.0 双重许可。请参阅 LICENSE-MIT 和 LICENSE-APACHE。


由 Polymorphism 构建并开源——企业软件、云与 AI。了解更多信息,请访问 ebman 产品页面。

MCP Registry 名称:mcp-name: io.github.tombaldwin/ebman

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。