Community写作与编辑github.com

LinLin00000000/aiops-vault-template

本地优先、面向AI Agent的AIOps Vault模板,使用Markdown/JSONL作为事实源,并附带轻量级配套技能。

aiops-vault-template 是什么?

该技能为AIOps Vault(运维操作知识库)提供了一套标准化的流程层。它本身不存储用户当前资产,而是通过定义清晰的源数据契约(README.md、resources.md、maintenance-log.jsonl等),指导AI Agent如何从本地Vault中读取和更新事实信息。技能内建了默认读取顺序、安全边界、维护工作流和回写规则,确保Agent在自动化运维时不会泄露密钥、修改历史或操作超出授权范围的资源。支持通过脚本层(aiops.py)进行低Token消耗的命令交互,并可在需要时同步通用改进到公共模板仓库,实现跨使用者受益。适用于Claude Code、Cursor、Codex等本地优先的AI Agent平台。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add LinLin00000000/aiops-vault-template

Installed? Explore more 写作与编辑 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

AIOps Vault 配套技能

本技能是一个流程层。它不包含用户当前的资产。当前事实存储在本地 AIOps Vault 中,通常位于 $AIOPS_ROOT 或 ~/ai-ops。

源数据契约

请按以下拆分使用:

  • README.md:稳定的本地规则、文件角色、安全边界以及项目特定的约定。
  • resources.md:当前应被信任的状态。
  • maintenance-log.jsonl:仅追加记录决策、维护、检查、事件和更正的历史。
  • secrets-location.md:仅包含密钥名称、存储位置、访问/轮换说明;绝不包含密钥值。
  • services/<service>/service-card.md:当中央资源文件过大时,用于存放各服务的运行手册和详细信息。
  • scripts/aiops.py:对 Vault 的低 Token 命令接口。

请勿从本技能推断当前基础设施。请直接读取 Vault 并在安全的情况下检查实时状态。

默认读取顺序

  1. 解析 Vault 路径:$AIOPS_ROOT(如果已设置),否则为 ~/ai-ops。
  2. 如果任务可能涉及文件、服务、暴露面、凭据或备份的变更,则首先读取本地 Vault 的 README.md。
  3. 在完整读取之前,先运行命令层:
    • python3 "$AIOPS_ROOT/scripts/aiops.py" index
    • python3 "$AIOPS_ROOT/scripts/aiops.py" resources --section "<section>"
    • python3 "$AIOPS_ROOT/scripts/aiops.py" service "<name>"
    • python3 "$AIOPS_ROOT/scripts/aiops.py" host "<name>"
    • python3 "$AIOPS_ROOT/scripts/aiops.py" log --tail 20 --summary
  4. 仅当切片输出不足以回答问题时,再读取完整的 resources.md、服务卡片或日志行。
  5. 仅当实时状态和 Vault 文档均无法回答问题时才使用会话历史。

安全边界

  • 请勿读取、打印、复制或存储密钥值。secrets-location.md 是元数据,并非密钥转储。
  • 请勿将密钥写入 resources.md、日志、服务卡片、提示词、问题评论、提交记录或聊天摘要。
  • 对于不可逆或高暴露操作,必须确认:删除、覆盖、轮换、恢复、打开公共端口、更改 DNS、迁移数据、禁用备份,以及触及第三方/朋友拥有的资源。
  • 资源池必须明确。除非用户明确授权,否则不得对第三方或朋友拥有的基础设施进行操作。
  • 优先选用最小暴露原则:管理路径应通过 localhost 配合反向代理或私有网络访问;公共 HTTPS 仅在预期且经过认证时使用。

维护工作流

  1. 对目标进行分类:主机、服务、域名/DNS、反向代理、数据/备份、密钥位置、自动化,或 Vault 本身。
  2. 确定资源池和权限边界。
  3. 通过 aiops.py 和服务卡片加载最少的当前上下文。
  4. 在必要时使用安全命令检查实时状态。
  5. 规划最小可逆操作,并标出高风险步骤。
  6. 以最小权限原则执行。
  7. 通过消费端的真实输出来验证:健康检查、日志、HTTP 请求、systemctl、docker ps、备份列表或等效方法。
  8. 更新对应的层:
    • 当前事实 -> resources.md 或服务卡片;
    • 重要历史记录 -> 追加一个 maintenance-log.jsonl 对象;
    • 密钥位置 -> secrets-location.md(不含值);
    • 服务本地详情 -> 服务的 README/卡片。
  9. 如果变更改进了可复用的 AIOps 工作流/工具,而不仅仅是私有本地事实,则将通用部分同步到模板仓库 ~/projects/aiops-vault-template,运行其测试/检查,然后提交并推送,以便下游 AIOS Kit 使用者受益。请勿将私有资源、日志或密钥复制到公共模板中。
  10. Vault 变更后运行 python3 "$AIOPS_ROOT/scripts/aiops.py" check。
  11. 报告变更的文件、命令、验证结果、已跳过/已阻止的项目以及后续事项。

回写规则

  • 当前状态应放在 resources.md 或服务卡片中,而不仅仅记录在历史日志中。
  • 历史记录应放在 maintenance-log.jsonl 中,每行一个合法的 JSON 对象。
  • 更正应使用新的 correction 或 supersede 条目;除非用户要求迁移,否则不要重写历史。
  • 避免将同一事实重复写入 README、resources、服务卡片和日志中。选择归属层。
  • 大量原始证据应放在 evidence/ 下或 Vault 外部,并以路径引用。

验证清单

在最终确定之前:

  • python3 "$AIOPS_ROOT/scripts/aiops.py" check 必须通过,或已说明失败原因。
  • JSONL 文件必须可解析。
  • 未添加明显的密钥值。
  • 当前状态的变更不仅仅体现在维护日志中。
  • 回复中的声明必须有 Vault 文件或实时命令输出作为支持。
  • 任何高风险操作均已确认,或明确作为建议步骤保留。

如果 Vault 不存在

如果没有 AIOps Vault 且用户需要,则安装模板仓库或创建最小目录结构:

ai-ops/
  README.md
  resources.md
  maintenance-log.jsonl
  maintenance-log.schema.md
  secrets-location.md        # 私有,被 Git 忽略
  secrets-location.example.md
  scripts/aiops.py

然后运行 python3 scripts/aiops.py check。

相关技能