{"owner":"apache","repo":"hertzbeat","hasSkills":true,"totalSkillsCount":2,"totalTokensCount":1281,"categories":["anthropic-skill"],"hasMcp":false,"mcpConfig":null,"found":["hertzbeat-ai/src/main/resources/skills/README_ZH.md","hertzbeat-ai/src/main/resources/skills/README.md"],"skills":{"hertzbeat-ai/src/main/resources/skills/README_ZH.md":"# AI SOP 引擎\n\nAI SOP（标准操作流程）引擎支持通过 YAML 配置定义和执行自动化工作流。\n\n## 功能特性\n\n- **YAML 声明式定义**：通过配置文件定义工作流\n- **多步骤类型**：`tool`（调用 HertzBeat 工具）、`llm`（AI 推理）\n- **统一输出**：使用 `SopResult` 统一结果结构\n- **国际化支持**：多语言输出（中文/英文）\n- **多种 API**：流式（SSE）、同步（JSON）、AI 友好（纯文本）\n\n## 快速开始\n\n### 1. 定义技能\n\n创建 `skills/my_skill.yml`：\n\n```yaml\nname: my_skill\ndescription: \"我的自定义技能\"\nversion: \"1.0\"\n\noutput:\n  type: report      # report/simple/data/action\n  format: markdown\n  language: zh      # zh/en\n\nsteps:\n  - id: get_data\n    type: tool\n    tool: query_monitors\n    args:\n      status: 9\n      \n  - id: analyze\n    type: llm\n    prompt: |\n      分析以下数据: ${get_data}\n```\n\n### 2. 执行\n\n```bash\n# 流式输出（SSE）\nPOST /api/ai/sop/execute/{skillName}\n\n# 同步返回（JSON）\nPOST /api/ai/sop/execute/{skillName}/sync\n\n# AI 格式（纯文本）\nPOST /api/ai/sop/execute/{skillName}/ai\n```\n\n## 输出类型\n\n| 类型 | 使用场景 |\n|------|---------|\n| `report` | 日常巡检、故障分析 |\n| `simple` | 重启服务、清理缓存 |\n| `data` | 查询资源、统计信息 |\n| `action` | 需要人工确认的操作 |\n\n## 架构\n\n```\nYAML 定义 → SkillRegistry → SopEngine → Executors → SopResult\n               ↓                ↓\n       SopToolCallback   ToolExecutor / LlmExecutor\n                                ↓\n                         ToolRegistry（自动发现 @Tool 方法）\n```\n\n所有执行入口都由 `SopEngine` 统一补齐默认参数并校验必填参数。技能注册为 Spring AI\n工具时，`SopToolCallback` 会根据参数定义生成 JSON Schema、解析模型传入的 JSON 对象，\n同步执行 SOP 并返回 `SopResult`；调用方不应在控制器或工具外层重复实现参数校验。\n\n## 添加新工具\n\n只需添加 `@Tool` 注解，无需修改其他代码：\n\n```java\n@Tool(name = \"myNewTool\", description = \"...\")\npublic String myNewTool(@ToolParam(...) Long param) {\n    // 实现逻辑\n}\n```\n\nToolRegistry 会在运行时自动发现所有 `@Tool` 方法。\n\n## 配置说明\n\n### output 配置\n\n| 字段 | 说明 | 可选值 |\n|-----|------|-------|\n| type | 输出类型 | report/simple/data/action |\n| format | 格式 | markdown/json/text |\n| language | 语言 | zh（中文）/en（英文） |\n| contentStep | 内容步骤 | 步骤 ID |\n","hertzbeat-ai/src/main/resources/skills/README.md":"# AI SOP Engine\n\nThe AI SOP (Standard Operating Procedure) Engine enables defining and executing automated workflows through YAML configuration.\n\n## Features\n\n- **YAML-based Definition**: Define workflows declaratively\n- **Multiple Step Types**: `tool` (call HertzBeat tools), `llm` (AI reasoning)\n- **Unified Output**: Consistent result structure with `SopResult`\n- **I18n Support**: Multi-language output (zh/en)\n- **Multiple APIs**: Streaming (SSE), Sync (JSON), AI-friendly (Text)\n\n## Quick Start\n\n### 1. Define a Skill\n\nCreate `skills/my_skill.yml`:\n\n```yaml\nname: my_skill\ndescription: \"My custom skill\"\nversion: \"1.0\"\n\noutput:\n  type: report      # report/simple/data/action\n  format: markdown\n  language: zh      # zh/en\n\nsteps:\n  - id: get_data\n    type: tool\n    tool: query_monitors\n    args:\n      status: 9\n      \n  - id: analyze\n    type: llm\n    prompt: |\n      Analyze: ${get_data}\n```\n\n### 2. Execute\n\n```bash\n# Streaming (SSE)\nPOST /api/ai/sop/execute/{skillName}\n\n# Sync (JSON)\nPOST /api/ai/sop/execute/{skillName}/sync\n\n# AI Format (Text)\nPOST /api/ai/sop/execute/{skillName}/ai\n```\n\n## Output Types\n\n| Type | Use Case |\n|------|----------|\n| `report` | Daily inspection, analysis |\n| `simple` | Restart, clear cache |\n| `data` | Query, statistics |\n| `action` | Pending confirmation |\n\n## Architecture\n\n```\nYAML Definition → SkillRegistry → SopEngine → Executors → SopResult\n                                      ↓\n                               ToolExecutor / LlmExecutor\n                                      ↓\n                               ToolRegistry (auto-discover @Tool methods)\n```\n\n## Adding New Tools\n\nJust add `@Tool` annotation to your method - no other code changes needed:\n\n```java\n@Tool(name = \"myNewTool\", description = \"...\")\npublic String myNewTool(@ToolParam(...) Long param) {\n    // implementation\n}\n```\n\nToolRegistry auto-discovers all `@Tool` methods at runtime.\n"},"files":{"hertzbeat-ai/src/main/resources/skills/README_ZH.md":"# AI SOP 引擎\n\nAI SOP（标准操作流程）引擎支持通过 YAML 配置定义和执行自动化工作流。\n\n## 功能特性\n\n- **YAML 声明式定义**：通过配置文件定义工作流\n- **多步骤类型**：`tool`（调用 HertzBeat 工具）、`llm`（AI 推理）\n- **统一输出**：使用 `SopResult` 统一结果结构\n- **国际化支持**：多语言输出（中文/英文）\n- **多种 API**：流式（SSE）、同步（JSON）、AI 友好（纯文本）\n\n## 快速开始\n\n### 1. 定义技能\n\n创建 `skills/my_skill.yml`：\n\n```yaml\nname: my_skill\ndescription: \"我的自定义技能\"\nversion: \"1.0\"\n\noutput:\n  type: report      # report/simple/data/action\n  format: markdown\n  language: zh      # zh/en\n\nsteps:\n  - id: get_data\n    type: tool\n    tool: query_monitors\n    args:\n      status: 9\n      \n  - id: analyze\n    type: llm\n    prompt: |\n      分析以下数据: ${get_data}\n```\n\n### 2. 执行\n\n```bash\n# 流式输出（SSE）\nPOST /api/ai/sop/execute/{skillName}\n\n# 同步返回（JSON）\nPOST /api/ai/sop/execute/{skillName}/sync\n\n# AI 格式（纯文本）\nPOST /api/ai/sop/execute/{skillName}/ai\n```\n\n## 输出类型\n\n| 类型 | 使用场景 |\n|------|---------|\n| `report` | 日常巡检、故障分析 |\n| `simple` | 重启服务、清理缓存 |\n| `data` | 查询资源、统计信息 |\n| `action` | 需要人工确认的操作 |\n\n## 架构\n\n```\nYAML 定义 → SkillRegistry → SopEngine → Executors → SopResult\n               ↓                ↓\n       SopToolCallback   ToolExecutor / LlmExecutor\n                                ↓\n                         ToolRegistry（自动发现 @Tool 方法）\n```\n\n所有执行入口都由 `SopEngine` 统一补齐默认参数并校验必填参数。技能注册为 Spring AI\n工具时，`SopToolCallback` 会根据参数定义生成 JSON Schema、解析模型传入的 JSON 对象，\n同步执行 SOP 并返回 `SopResult`；调用方不应在控制器或工具外层重复实现参数校验。\n\n## 添加新工具\n\n只需添加 `@Tool` 注解，无需修改其他代码：\n\n```java\n@Tool(name = \"myNewTool\", description = \"...\")\npublic String myNewTool(@ToolParam(...) Long param) {\n    // 实现逻辑\n}\n```\n\nToolRegistry 会在运行时自动发现所有 `@Tool` 方法。\n\n## 配置说明\n\n### output 配置\n\n| 字段 | 说明 | 可选值 |\n|-----|------|-------|\n| type | 输出类型 | report/simple/data/action |\n| format | 格式 | markdown/json/text |\n| language | 语言 | zh（中文）/en（英文） |\n| contentStep | 内容步骤 | 步骤 ID |\n","hertzbeat-ai/src/main/resources/skills/README.md":"# AI SOP Engine\n\nThe AI SOP (Standard Operating Procedure) Engine enables defining and executing automated workflows through YAML configuration.\n\n## Features\n\n- **YAML-based Definition**: Define workflows declaratively\n- **Multiple Step Types**: `tool` (call HertzBeat tools), `llm` (AI reasoning)\n- **Unified Output**: Consistent result structure with `SopResult`\n- **I18n Support**: Multi-language output (zh/en)\n- **Multiple APIs**: Streaming (SSE), Sync (JSON), AI-friendly (Text)\n\n## Quick Start\n\n### 1. Define a Skill\n\nCreate `skills/my_skill.yml`:\n\n```yaml\nname: my_skill\ndescription: \"My custom skill\"\nversion: \"1.0\"\n\noutput:\n  type: report      # report/simple/data/action\n  format: markdown\n  language: zh      # zh/en\n\nsteps:\n  - id: get_data\n    type: tool\n    tool: query_monitors\n    args:\n      status: 9\n      \n  - id: analyze\n    type: llm\n    prompt: |\n      Analyze: ${get_data}\n```\n\n### 2. Execute\n\n```bash\n# Streaming (SSE)\nPOST /api/ai/sop/execute/{skillName}\n\n# Sync (JSON)\nPOST /api/ai/sop/execute/{skillName}/sync\n\n# AI Format (Text)\nPOST /api/ai/sop/execute/{skillName}/ai\n```\n\n## Output Types\n\n| Type | Use Case |\n|------|----------|\n| `report` | Daily inspection, analysis |\n| `simple` | Restart, clear cache |\n| `data` | Query, statistics |\n| `action` | Pending confirmation |\n\n## Architecture\n\n```\nYAML Definition → SkillRegistry → SopEngine → Executors → SopResult\n                                      ↓\n                               ToolExecutor / LlmExecutor\n                                      ↓\n                               ToolRegistry (auto-discover @Tool methods)\n```\n\n## Adding New Tools\n\nJust add `@Tool` annotation to your method - no other code changes needed:\n\n```java\n@Tool(name = \"myNewTool\", description = \"...\")\npublic String myNewTool(@ToolParam(...) Long param) {\n    // implementation\n}\n```\n\nToolRegistry auto-discovers all `@Tool` methods at runtime.\n"},"items":[{"name":"README_ZH.md","path":"hertzbeat-ai/src/main/resources/skills/README_ZH.md","rawUrl":"https://raw.githubusercontent.com/apache/hertzbeat/HEAD/hertzbeat-ai/src/main/resources/skills/README_ZH.md","title":"Skills Skill","category":"anthropic-skill","format":"markdown","content":"# AI SOP 引擎\n\nAI SOP（标准操作流程）引擎支持通过 YAML 配置定义和执行自动化工作流。\n\n## 功能特性\n\n- **YAML 声明式定义**：通过配置文件定义工作流\n- **多步骤类型**：`tool`（调用 HertzBeat 工具）、`llm`（AI 推理）\n- **统一输出**：使用 `SopResult` 统一结果结构\n- **国际化支持**：多语言输出（中文/英文）\n- **多种 API**：流式（SSE）、同步（JSON）、AI 友好（纯文本）\n\n## 快速开始\n\n### 1. 定义技能\n\n创建 `skills/my_skill.yml`：\n\n```yaml\nname: my_skill\ndescription: \"我的自定义技能\"\nversion: \"1.0\"\n\noutput:\n  type: report      # report/simple/data/action\n  format: markdown\n  language: zh      # zh/en\n\nsteps:\n  - id: get_data\n    type: tool\n    tool: query_monitors\n    args:\n      status: 9\n      \n  - id: analyze\n    type: llm\n    prompt: |\n      分析以下数据: ${get_data}\n```\n\n### 2. 执行\n\n```bash\n# 流式输出（SSE）\nPOST /api/ai/sop/execute/{skillName}\n\n# 同步返回（JSON）\nPOST /api/ai/sop/execute/{skillName}/sync\n\n# AI 格式（纯文本）\nPOST /api/ai/sop/execute/{skillName}/ai\n```\n\n## 输出类型\n\n| 类型 | 使用场景 |\n|------|---------|\n| `report` | 日常巡检、故障分析 |\n| `simple` | 重启服务、清理缓存 |\n| `data` | 查询资源、统计信息 |\n| `action` | 需要人工确认的操作 |\n\n## 架构\n\n```\nYAML 定义 → SkillRegistry → SopEngine → Executors → SopResult\n               ↓                ↓\n       SopToolCallback   ToolExecutor / LlmExecutor\n                                ↓\n                         ToolRegistry（自动发现 @Tool 方法）\n```\n\n所有执行入口都由 `SopEngine` 统一补齐默认参数并校验必填参数。技能注册为 Spring AI\n工具时，`SopToolCallback` 会根据参数定义生成 JSON Schema、解析模型传入的 JSON 对象，\n同步执行 SOP 并返回 `SopResult`；调用方不应在控制器或工具外层重复实现参数校验。\n\n## 添加新工具\n\n只需添加 `@Tool` 注解，无需修改其他代码：\n\n```java\n@Tool(name = \"myNewTool\", description = \"...\")\npublic String myNewTool(@ToolParam(...) Long param) {\n    // 实现逻辑\n}\n```\n\nToolRegistry 会在运行时自动发现所有 `@Tool` 方法。\n\n## 配置说明\n\n### output 配置\n\n| 字段 | 说明 | 可选值 |\n|-----|------|-------|\n| type | 输出类型 | report/simple/data/action |\n| format | 格式 | markdown/json/text |\n| language | 语言 | zh（中文）/en（英文） |\n| contentStep | 内容步骤 | 步骤 ID |\n","isInternal":false,"tokens":801,"sizeBytes":2552},{"name":"README.md","path":"hertzbeat-ai/src/main/resources/skills/README.md","rawUrl":"https://raw.githubusercontent.com/apache/hertzbeat/HEAD/hertzbeat-ai/src/main/resources/skills/README.md","title":"Skills Skill","category":"anthropic-skill","format":"markdown","content":"# AI SOP Engine\n\nThe AI SOP (Standard Operating Procedure) Engine enables defining and executing automated workflows through YAML configuration.\n\n## Features\n\n- **YAML-based Definition**: Define workflows declaratively\n- **Multiple Step Types**: `tool` (call HertzBeat tools), `llm` (AI reasoning)\n- **Unified Output**: Consistent result structure with `SopResult`\n- **I18n Support**: Multi-language output (zh/en)\n- **Multiple APIs**: Streaming (SSE), Sync (JSON), AI-friendly (Text)\n\n## Quick Start\n\n### 1. Define a Skill\n\nCreate `skills/my_skill.yml`:\n\n```yaml\nname: my_skill\ndescription: \"My custom skill\"\nversion: \"1.0\"\n\noutput:\n  type: report      # report/simple/data/action\n  format: markdown\n  language: zh      # zh/en\n\nsteps:\n  - id: get_data\n    type: tool\n    tool: query_monitors\n    args:\n      status: 9\n      \n  - id: analyze\n    type: llm\n    prompt: |\n      Analyze: ${get_data}\n```\n\n### 2. Execute\n\n```bash\n# Streaming (SSE)\nPOST /api/ai/sop/execute/{skillName}\n\n# Sync (JSON)\nPOST /api/ai/sop/execute/{skillName}/sync\n\n# AI Format (Text)\nPOST /api/ai/sop/execute/{skillName}/ai\n```\n\n## Output Types\n\n| Type | Use Case |\n|------|----------|\n| `report` | Daily inspection, analysis |\n| `simple` | Restart, clear cache |\n| `data` | Query, statistics |\n| `action` | Pending confirmation |\n\n## Architecture\n\n```\nYAML Definition → SkillRegistry → SopEngine → Executors → SopResult\n                                      ↓\n                               ToolExecutor / LlmExecutor\n                                      ↓\n                               ToolRegistry (auto-discover @Tool methods)\n```\n\n## Adding New Tools\n\nJust add `@Tool` annotation to your method - no other code changes needed:\n\n```java\n@Tool(name = \"myNewTool\", description = \"...\")\npublic String myNewTool(@ToolParam(...) Long param) {\n    // implementation\n}\n```\n\nToolRegistry auto-discovers all `@Tool` methods at runtime.\n","isInternal":false,"tokens":480,"sizeBytes":1920}],"systemPromptSnippet":"<yakaai_skills repo=\"apache/hertzbeat\">\n<!-- File: hertzbeat-ai/src/main/resources/skills/README_ZH.md (Tokens: ~801 | Category: anthropic-skill) -->\n# AI SOP 引擎\n\nAI SOP（标准操作流程）引擎支持通过 YAML 配置定义和执行自动化工作流。\n\n## 功能特性\n\n- **YAML 声明式定义**：通过配置文件定义工作流\n- **多步骤类型**：`tool`（调用 HertzBeat 工具）、`llm`（AI 推理）\n- **统一输出**：使用 `SopResult` 统一结果结构\n- **国际化支持**：多语言输出（中文/英文）\n- **多种 API**：流式（SSE）、同步（JSON）、AI 友好（纯文本）\n\n## 快速开始\n\n### 1. 定义技能\n\n创建 `skills/my_skill.yml`：\n\n```yaml\nname: my_skill\ndescription: \"我的自定义技能\"\nversion: \"1.0\"\n\noutput:\n  type: report      # report/simple/data/action\n  format: markdown\n  language: zh      # zh/en\n\nsteps:\n  - id: get_data\n    type: tool\n    tool: query_monitors\n    args:\n      status: 9\n      \n  - id: analyze\n    type: llm\n    prompt: |\n      分析以下数据: ${get_data}\n```\n\n### 2. 执行\n\n```bash\n# 流式输出（SSE）\nPOST /api/ai/sop/execute/{skillName}\n\n# 同步返回（JSON）\nPOST /api/ai/sop/execute/{skillName}/sync\n\n# AI 格式（纯文本）\nPOST /api/ai/sop/execute/{skillName}/ai\n```\n\n## 输出类型\n\n| 类型 | 使用场景 |\n|------|---------|\n| `report` | 日常巡检、故障分析 |\n| `simple` | 重启服务、清理缓存 |\n| `data` | 查询资源、统计信息 |\n| `action` | 需要人工确认的操作 |\n\n## 架构\n\n```\nYAML 定义 → SkillRegistry → SopEngine → Executors → SopResult\n               ↓                ↓\n       SopToolCallback   ToolExecutor / LlmExecutor\n                                ↓\n                         ToolRegistry（自动发现 @Tool 方法）\n```\n\n所有执行入口都由 `SopEngine` 统一补齐默认参数并校验必填参数。技能注册为 Spring AI\n工具时，`SopToolCallback` 会根据参数定义生成 JSON Schema、解析模型传入的 JSON 对象，\n同步执行 SOP 并返回 `SopResult`；调用方不应在控制器或工具外层重复实现参数校验。\n\n## 添加新工具\n\n只需添加 `@Tool` 注解，无需修改其他代码：\n\n```java\n@Tool(name = \"myNewTool\", description = \"...\")\npublic String myNewTool(@ToolParam(...) Long param) {\n    // 实现逻辑\n}\n```\n\nToolRegistry 会在运行时自动发现所有 `@Tool` 方法。\n\n## 配置说明\n\n### output 配置\n\n| 字段 | 说明 | 可选值 |\n|-----|------|-------|\n| type | 输出类型 | report/simple/data/action |\n| format | 格式 | markdown/json/text |\n| language | 语言 | zh（中文）/en（英文） |\n| contentStep | 内容步骤 | 步骤 ID |\n\n<!-- File: hertzbeat-ai/src/main/resources/skills/README.md (Tokens: ~480 | Category: anthropic-skill) -->\n# AI SOP Engine\n\nThe AI SOP (Standard Operating Procedure) Engine enables defining and executing automated workflows through YAML configuration.\n\n## Features\n\n- **YAML-based Definition**: Define workflows declaratively\n- **Multiple Step Types**: `tool` (call HertzBeat tools), `llm` (AI reasoning)\n- **Unified Output**: Consistent result structure with `SopResult`\n- **I18n Support**: Multi-language output (zh/en)\n- **Multiple APIs**: Streaming (SSE), Sync (JSON), AI-friendly (Text)\n\n## Quick Start\n\n### 1. Define a Skill\n\nCreate `skills/my_skill.yml`:\n\n```yaml\nname: my_skill\ndescription: \"My custom skill\"\nversion: \"1.0\"\n\noutput:\n  type: report      # report/simple/data/action\n  format: markdown\n  language: zh      # zh/en\n\nsteps:\n  - id: get_data\n    type: tool\n    tool: query_monitors\n    args:\n      status: 9\n      \n  - id: analyze\n    type: llm\n    prompt: |\n      Analyze: ${get_data}\n```\n\n### 2. Execute\n\n```bash\n# Streaming (SSE)\nPOST /api/ai/sop/execute/{skillName}\n\n# Sync (JSON)\nPOST /api/ai/sop/execute/{skillName}/sync\n\n# AI Format (Text)\nPOST /api/ai/sop/execute/{skillName}/ai\n```\n\n## Output Types\n\n| Type | Use Case |\n|------|----------|\n| `report` | Daily inspection, analysis |\n| `simple` | Restart, clear cache |\n| `data` | Query, statistics |\n| `action` | Pending confirmation |\n\n## Architecture\n\n```\nYAML Definition → SkillRegistry → SopEngine → Executors → SopResult\n                                      ↓\n                               ToolExecutor / LlmExecutor\n                                      ↓\n                               ToolRegistry (auto-discover @Tool methods)\n```\n\n## Adding New Tools\n\nJust add `@Tool` annotation to your method - no other code changes needed:\n\n```java\n@Tool(name = \"myNewTool\", description = \"...\")\npublic String myNewTool(@ToolParam(...) Long param) {\n    // implementation\n}\n```\n\nToolRegistry auto-discovers all `@Tool` methods at runtime.\n</yakaai_skills>"}