# pi-ops **Repository Path**: shanyou/pi-ops ## Basic Information - **Project Name**: pi-ops - **Description**: pi agent 的packages 实现运维相关内容,如资产管理等操作 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-12 - **Last Updated**: 2026-06-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # pi-ops pi Agent 运维管理包 — 资产 CRUD、远程探测、审计拦截、告警通知,作为 pi package 集成到 pi 智能体中。 ## 安装 在 pi 项目的 `.pi/settings.json` 中引用: ```json { "packages": ["../pi-ops"] } ``` 或通过 `pi install`: ```bash pi install ./path/to/pi-ops ``` 启动 pi 后,技能和扩展自动加载。 ## 加载的内容 启动 pi 后,以下内容自动生效: **技能** — agent 根据用户意图自动匹配: | 技能 | 触发条件 | 提供能力 | |------|---------|---------| | `asset-management` | 提到"资产""服务器""查询""创建""schema""导入" | 15 种资产类型的完整生命周期管理、Excel 导入 | | `asset-discovery` | 提到"探测""扫描""巡检""资产发现" | 六步探测法、脚本模板、Ansible playbook | | `cve-analyzer` | 提到"CVE""漏洞""安全分析" | CVE 分析流程、影响评估 | | `ansible-patterns` | 提到"Ansible""playbook""inventory" | Ansible 编写规范与最佳实践 | | `ops-conventions` | 提到"目录规范""SOP""脚本放哪" | 运维文件组织、脚本命名规范 | **扩展** — agent 启动时自动注册的事件钩子: | 扩展 | 事件 | 作用 | |------|------|------| | `ops-agent-prompt` | `before_agent_start` | 将 system prompt 替换为运维专用提示,保留 tools、guidelines、context files | | `ops-audit` | `tool_call`、`tool_result` | 危险命令弹窗确认、受保护路径拦截、全量操作审计记录 | | `ops-alert` | `tool_execution_end`、`session_start` | 工具执行失败告警、会话启动通知 | **工具** — 扩展注册的自定义工具,agent 可按需调用用于资产 CRUD、校验、同步、导入等操作。 ## 资产类型 支持 15 种 IT 资产类型:server、database、middleware、domain、certificate、load_balancer、cdn、firewall、vpn、kubernetes、storage、backup、monitoring、network、application,以及 vuln(漏洞)和 issue(问题)。 所有资产以 Markdown(YAML frontmatter)存储,通过校验和同步机制写入 SQLite。 ## 运维工作流示例 ### 资产查询 ``` 用户: 查所有生产数据库 Agent 加载 asset-management 技能 → 调用工具查询 → 返回结构化结果 ``` ### 资产创建 ``` 用户: 新建一台 Web 服务器,IP 10.0.1.10 Agent 加载 asset-management 技能 → 创建 .md 骨架 → 填入信息 → 校验 → 同步入库 ``` ### 资产探测 ``` 用户: 扫描 10.0.1.0/24 的 Nginx Agent 加载 asset-discovery 技能 → 按六步法设计探测 → SSH 执行 → 逐个入库 ``` ### 危险操作拦截 ``` 用户: 重启 prod-db-01 的 MySQL ops-audit 扩展在 tool_call 阶段拦截 → 弹窗确认 → 用户确认后执行 → tool_result 记录审计日志 ``` ### 定时巡检 ``` 外部调度器触发 pi --prompt "执行生产巡检" Agent → 查所有 production 资产 → 健康检查 → 生成巡检报告 ``` ## 权限控制 | 级别 | 示例 | 处理方式 | |------|------|---------| | READ | `ls`、`grep`、`cat` | 直接执行 | | WRITE | 编辑资产 .md | 执行,自动审计 | | DANGEROUS | `ssh`、`systemctl restart` | UI 确认弹窗 | | CRITICAL | `DROP DATABASE`、`rm -rf` | 强拦截 + 确认 | | BLOCK | 写 `/etc/passwd`、`~/.ssh/` | 直接拦截 | ## 目录结构 ``` pi-ops/ ├── extensions/ # pi 扩展(审计、告警、System Prompt) ├── skills/ # 运维技能(资产管理、探测、CVE 分析等) ├── prompts/ # System Prompt 模板 ├── schemas/ # JSON Schema(资产、漏洞、问题) ├── lib/ # 工具实现 ├── docs/ # 设计文档与规格说明 └── package.json ``` ## 依赖 - `@earendil-works/pi-coding-agent` (peer) - SQLite(通过 better-sqlite3) - Node.js >= 22