Skip to content

Releases: databufflabs/databuff-diag

Release list

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 06 Jul 03:13

databuff-diag — 用对话排查服务器与容器问题

databuff-diag 是一款面向运维 / SRE 的现场环境诊断工具:在浏览器里用自然语言描述现象,AI 会自动在本机或通过 SSH 执行检查命令(dockersystemctlkubectl、日志查看等),把结果汇总成可读结论,必要时生成诊断报告。

适合这些场景:

  • 容器不健康、服务起不来、端口不通
  • 需要快速摸清一台(或多台)机器上的运行状态
  • 不想在终端里一条条敲命令,希望有人帮你「边查边解释」

核心能力

对话式排障

  • Web 界面,打开浏览器即可开始对话
  • 用普通话描述问题,AI 自动规划检查步骤并执行
  • 对话中展示工具调用摘要,过程透明、不「空回复」
  • 不完整回复自动追问,减少「接下来将…」类半截回答

大模型接入

  • 支持 OpenAI 兼容 API(DeepSeek、通义等主流厂商)
  • 设置页一键测试连接、保存并启用
  • 支持 LLM 原生 function calling(read / write / edit / bash / ssh),与 tool JSON 双轨兼容
  • 支持自定义响应解析器,适配企业内网大模型网关
  • 「启用 Tools」开关(默认开启):关闭后不携带 tools / tool_choice,兼容不支持原生 function calling 的网关
  • 网关 messages 格式自动适配(合并 system、末尾补 user、tool 结果转 user)
  • 嵌套 JSON 响应中可正确解析 tool_calls

本机与远程排查

  • 本机直接执行 shell 命令
  • 可配置多台远程主机(SSH),统一在一个界面排查
  • 密码由系统注入,对话中无需手写密码

安全与可控

  • 危险命令审批:写操作、高风险命令需人工批准
  • 策略引擎区分只读 / 写操作;[test 等测试命令归类为只读
  • 目录树等代码块内容不会误识别为待执行命令
  • 只读复合命令(如 cd && if [ -f … ]; then head …)不会被误判为写操作

会话与报告

  • 每个对话有独立会话工作区,可沉淀诊断报告与脚本
  • 支持诊断报告导出
  • 会话数据统一存放在 sessions/<id>/ 目录

部署与运行

  • 一条命令启动:./databuff-diag serve
  • 默认后台运行(--daemon),关闭终端后服务仍继续;可用 --foreground 前台运行
  • 启动时输出可点击的访问地址;绑定 0.0.0.0 时自动显示局域网 IP
  • 正常运行不打印 HTTP 访问日志,仅 5xx 错误写入日志
  • 发布包解压后统一进入 databuff-diag 子目录

跨平台

  • macOS(Apple Silicon / Intel)、Linux(x86_64 / ARM64)、Windows 10/11
  • Linux 静态链接(CGO_ENABLED=0),CentOS 7 / RHEL 8 等旧 glibc 环境可直接运行

快速开始

# 下载解压后
./databuff-diag serve