hertzbeat Agent Skills & AI Rules

GitHub

An AI-powered next-generation open source real-time observability system.

7,346 stars Java Java 1 file · ~33,152 tokens #agent#ai#alerting#database#grafana#linux#llm#logs
RAW Rules
2 Discovered Rules • ~1,281 Estimated Tokens
Loading skill content...

Skills Skill

hertzbeat-ai/src/main/resources/skills/README_ZH.md anthropic-skill ~801 tokens
Raw
# AI SOP 引擎

AI SOP(标准操作流程)引擎支持通过 YAML 配置定义和执行自动化工作流。

## 功能特性

- **YAML 声明式定义**:通过配置文件定义工作流
- **多步骤类型**:`tool`(调用 HertzBeat 工具)、`llm`(AI 推理)
- **统一输出**:使用 `SopResult` 统一结果结构
- **国际化支持**:多语言输出(中文/英文)
- **多种 API**:流式(SSE)、同步(JSON)、AI 友好(纯文本)

## 快速开始

### 1. 定义技能

创建 `skills/my_skill.yml`:

```yaml
name: my_skill
description: "我的自定义技能"
version: "1.0"

output:
  type: report      # report/simple/data/action
  format: markdown
  language: zh      # zh/en

steps:
  - id: get_data
    type: tool
    tool: query_monitors
    args:
      status: 9
      
  - id: analyze
    type: llm
    prompt: |
      分析以下数据: ${get_data}
```

### 2. 执行

```bash
# 流式输出(SSE)
POST /api/ai/sop/execute/{skillName}

# 同步返回(JSON)
POST /api/ai/sop/execute/{skillName}/sync

# AI 格式(纯文本)
POST /api/ai/sop/execute/{skillName}/ai
```

## 输出类型

| 类型 | 使用场景 |
|------|---------|
| `report` | 日常巡检、故障分析 |
| `simple` | 重启服务、清理缓存 |
| `data` | 查询资源、统计信息 |
| `action` | 需要人工确认的操作 |

## 架构

```
YAML 定义 → SkillRegistry → SopEngine → Executors → SopResult
               ↓                ↓
       SopToolCallback   ToolExecutor / LlmExecutor
                                ↓
                         ToolRegistry(自动发现 @Tool 方法)
```

所有执行入口都由 `SopEngine` 统一补齐默认参数并校验必填参数。技能注册为 Spring AI
工具时,`SopToolCallback` 会根据参数定义生成 JSON Schema、解析模型传入的 JSON 对象,
同步执行 SOP 并返回 `SopResult`;调用方不应在控制器或工具外层重复实现参数校验。

## 添加新工具

只需添加 `@Tool` 注解,无需修改其他代码:

```java
@Tool(name = "myNewTool", description = "...")
public String myNewTool(@ToolParam(...) Long param) {
    // 实现逻辑
}
```

ToolRegistry 会在运行时自动发现所有 `@Tool` 方法。

## 配置说明

### output 配置

| 字段 | 说明 | 可选值 |
|-----|------|-------|
| type | 输出类型 | report/simple/data/action |
| format | 格式 | markdown/json/text |
| language | 语言 | zh(中文)/en(英文) |
| contentStep | 内容步骤 | 步骤 ID |