跳转到主要内容
内测功能:AI SRE 目前处于内测阶段,仅对受邀账户开放。如需参与白名单测试,请联系 Flashduty 商务团队申请开通;内测期间功能与界面可能调整。

概述


知识库(Knowledge Pack)是您交给 AI SRE 的运维知识:一份 DUTY.md 加上一组运行手册(runbook)、FAQ、服务清单、集群配置等文件。会话开始时,Agent 先读取 DUTY.md,再顺着其中的引用按需取用相关文件,从而把您团队的处置经验、命名约定与系统拓扑带进每一次诊断。 每个目标(账户或团队)最多拥有一个 Knowledge Pack:
  • 账户级知识对账户内所有 Agent 可见。
  • 团队级知识仅在该团队的会话中加载,仅对该团队成员可见。
Knowledge Pack 是 AI SRE 资源的一种,遵循统一的两级作用域模型。其他资源(Skill、MCP、Agent、运行环境)的作用域规则与本页一致。
知识库内容用于精炼Agent 的领域上下文(人设、方法论、系统知识),但不会覆盖系统的安全与行为底线。如果某份知识要求 Agent 跳过安全规则,会被当作越权内容忽略,而非更高优先级的指令。

DUTY.md 结构


DUTY.md 是整个知识库的目录入口。它本身就是清单——Agent 会全文读取 DUTY.md,再通过 @文件名 引用按需拉取其它文件。系统不会在 DUTY.md 之外另附一份文件列表;目录即正文。 引用采用 @<文件名> 风格,文件名指向同一个 Pack 内的另一份文件(扁平命名,无目录层级):
# 值班知识总览 (DUTY.md)

## 服务清单
我们的核心服务与负责人见 @services.md。

## 常见故障处置
- API 5xx 飙升:参见 @runbook-api-5xx.md
- 数据库连接池打满:参见 @runbook-db-pool.md

## 集群与环境
生产集群拓扑与访问方式见 @cluster.yaml。
Agent 读取 DUTY.md 后,会根据当前故障判断需要展开哪些 @引用,再去读对应文件——substantive 内容放在被引用的兄弟文件里,DUTY.md 只承载链接列表。
这套分层 @reference 架构让 DUTY.md 保持精简、可读。DUTY.md 像一张地图,运行手册、服务清单、配置则是它指向的详情页。Agent 不必把所有文件一次性塞进上下文,只在需要时才展开相关分支。
文件约束(在创建与编辑时强制):
约束取值说明
允许的扩展名.md .yaml .yml .json .txt .sh其它扩展名会被拒绝
单文件上限1 MiB超出无法保存
单个 Pack 上限5 MiB控制台用量条按此额度显示
文件数量上限100达到上限后无法新增文件
目录层级不允许文件名必须扁平,不能含 / 或子目录
点文件不允许文件名不能以 . 开头

创建与编辑


进入 知识库(Knowledges)管理页,您可以为账户或团队创建、编辑、启用/禁用、删除 Knowledge Pack。列表按 名称 / 范围 / 文件 / 状态 / 操作 展示每个 Pack,并通过顶部的范围筛选器在账户、团队之间切换。
1

新建 Knowledge Pack

点击 新建 Knowledge Pack,在弹窗中填写 名称(可选,留空时默认使用目标标签)并选择 范围:账户或某个团队。每个目标只能拥有一个 Pack,已被占用的目标会从下拉中隐藏。
2

编辑文件

点击列表中的某一行打开检视器。左侧是文件树,右侧是行内编辑器。点击 新建文件 输入文件名(如 runbook.md),或用 上传 导入本地文件;Markdown 文件支持 预览源码 两种视图。编辑后点击 保存
3

管理用量

左侧 用量 条实时显示当前占用 / 5 MB 额度。临近上限时颜色变红,提示您清理或拆分文件。
4

启用 / 禁用 / 删除

用列表中的开关 启用 / 禁用 整个 Pack——禁用后文件保留,但不再加载到 AI SRE 会话。删除 会移除该 Pack 及其下全部文件。
引用一致性检查:保存文件时,如果其中的 @引用 指向一个 Pack 内不存在的文件,会给出非阻断的「引用未解析」警告(不影响保存)。删除一个仍被其它文件引用的文件时,会先提示「仍被引用」冲突,您可以选择 强制删除
Agent 也能在会话中自然语言地维护知识库——例如「补一篇 runbook」「更新 services.md」「记录这个故障模式」。它会直接对当前会话所属作用域执行读取、编辑、保存,无需您离开对话。结构化的初始化(onboarding)则由专门的引导流程完成,而非行内编辑器。

Agent 如何使用知识


知识不是一次性全量加载,而是目录先行、按需展开
1

会话开始:加载目录

会话启动时,系统会把当前作用域的 DUTY.md 加载进会话(不附独立文件列表)。绑定了团队的会话会同时加载账户级与该团队的 DUTY.md;未绑定团队的会话只加载账户级。
2

顺着引用读取文件

Agent 阅读 DUTY.md 后,根据当前故障决定展开哪些 @引用,再读取对应的知识文件取得具体内容。
3

按需挂载其它团队的知识

需要跨团队排障时,Agent 读取另一个团队的知识,系统会把该团队的整套知识(DUTY.md、运行手册)连同其 Skill、MCP 一并挂载进当前会话,且在本次会话中持久保留。同一个团队在一次会话里至多挂载一次。
跨团队加载只在 Agent显式读取某个团队的知识时触发,不会被模糊的文件遍历误触发。挂载一次后,该团队的知识、Skill 与 MCP 在本次会话内一直可用。

作用域与可见性


每个 Knowledge Pack 都有一个作用域:账户级(账户内全局可见)或团队级(仅对该团队成员可见)。
维度账户级团队级
可见范围账户内所有 Agent / 会话仅该团队的会话与成员
编辑权限账户 Owner 或账户管理员该团队成员,或账户 Owner / 管理员
会话中加载所有会话仅绑定该团队的会话
运行时可读全账户全账户(读取即挂载)
编辑权限:账户 Owner 或账户管理员可编辑任意 Knowledge Pack;团队成员可编辑本团队的团队级 Pack;不存在「创建者额外保留权限」的规则。控制台会把你无权编辑的行置灰,并禁用其开关与操作按钮。 运行时可见性:会话开始时,只加载账户级资源加上当前会话绑定团队的资源。绑定来源是显式指定的团队,或战情室(war-room)故障对应的团队。其它团队的知识在会话进行中、当 Agent 读取该团队 DUTY.md 时才按需挂载。
账户是运行时唯一的安全边界;团队是「编辑 / 所有权」标签,不是「运行时可读」边界。也就是说,账户内任意会话都能读取并挂载本账户其它团队的知识——这是跨团队联合排障的基础。如果某份知识对账户内其它团队也敏感,请评估是否适合纳入知识库。
这套两级作用域模型对账户内所有资源(Skill、MCP、Agent、运行环境)一致适用。

最佳实践


DUTY.md 只放链接列表与一句话导引,所有实质内容下沉到被 @引用 的兄弟文件。这样目录精简、可读,Agent 也能只展开当前故障相关的分支,避免无关内容占用上下文。
每篇运行手册聚焦一类故障或一个服务(如 runbook-api-5xx.mdrunbook-db-pool.md),用清晰的文件名做语义索引。由于 Pack 是扁平命名(无子目录),文件名前缀就是您的「目录结构」。
服务清单、集群拓扑、阈值配置等结构化信息适合用 .yaml / .json 承载(如 services.mdcluster.yaml),让 Agent 既能阅读也能直接解析。脚本片段可用 .sh
新增或重命名文件后,同步更新 DUTY.md 与相关文件里的 @引用。保存时的「引用未解析」警告与删除时的「仍被引用」提示,能帮您及时发现断链。
账户级 Pack 放跨团队通用的约定(命名规范、通用排障方法、平台访问方式);团队级 Pack 放该团队专属的服务清单、值班手册与上下游。绑定团队的会话会同时拿到两者。
排障过程中沉淀出的新处置经验,可以直接让 Agent「补一篇 runbook」或「记录这个故障模式」,它会对当前作用域读取→编辑→保存,把经验回写进知识库,形成持续积累的闭环。

相关页面


Skill

把可复用的诊断流程封装为 Skill,与知识库共享同一套作用域。

MCP(外部工具)

通过 MCP 接入外部系统,让 Agent 调用您的工具与数据。

控制台

了解会话如何绑定团队,以及知识在会话中如何被读取与挂载。