Duende文档管理技能Skill docs-ops

本技能用于自动化管理Duende生态系统(包括IdentityServer、BFF、Access Token Management、IdentityModel和OidcClient)的文档生命周期。它提供多种动作,如抓取文档源、验证索引完整性、刷新索引、重建索引和清除缓存,以简化文档维护和搜索功能。关键词:Duende, 文档自动化, 索引管理, 缓存清除, 验证流程。

DevOps 0 次安装 0 次浏览 更新于 3/11/2026

name: docs-ops description: “管理Duende文档生命周期。动作: 抓取、验证、刷新、重建索引、清除缓存。” argument-hint: <action> (scrape|validate|refresh|rebuild-index|clear-cache) [options] allowed-tools: Read, Write, Bash, Glob, Grep

Duende文档操作

通过一个单一整合的技能管理Duende文档生命周期。涵盖IdentityServer、BFF、Access Token Management、IdentityModel和OidcClient文档。

参数路由

动作 描述
scrape 从llms-full.txt抓取文档,然后刷新和验证
validate 验证索引完整性和检测漂移(只读)
refresh 从文件系统刷新索引,无需抓取
rebuild-index 清除并立即重建搜索索引
clear-cache 清除搜索缓存(在下次搜索时惰性重建)

解析$ARGUMENTS以确定动作。第一个令牌是动作关键字。剩余令牌作为选项传递给动作处理器。


动作: 抓取

从Duende llms-full.txt源抓取所有文档。这获取所有IdentityServer、BFF、Access Token Management、IdentityModel和OidcClient文档。

步骤

  1. 运行抓取脚本:
python "${CLAUDE_PLUGIN_ROOT}/skills/duende-docs/scripts/core/scrape_docs.py"
  1. 抓取完成后,重建索引:
python "${CLAUDE_PLUGIN_ROOT}/skills/duende-docs/scripts/management/rebuild_index.py"
  1. 验证索引:
python "${CLAUDE_PLUGIN_ROOT}/skills/duende-docs/scripts/management/manage_index.py" verify

报告每个步骤的结果。


动作: 验证

对文档索引运行验证检查,不进行任何修改。

步骤

  1. 运行索引验证:
python "${CLAUDE_PLUGIN_ROOT}/skills/duende-docs/scripts/management/manage_index.py" verify
  1. 运行完整验证并摘要:
python "${CLAUDE_PLUGIN_ROOT}/skills/duende-docs/scripts/maintenance/validate_index.py"
  1. 报告文档计数:
python "${CLAUDE_PLUGIN_ROOT}/skills/duende-docs/scripts/management/manage_index.py" count

报告每个验证步骤的结果,突出任何发现的问题。


动作: 刷新

刷新本地索引,无需重新从Web抓取。当手动修改文档文件或需要重建索引时使用。

步骤

  1. 从文件系统重建索引:
python "${CLAUDE_PLUGIN_ROOT}/skills/duende-docs/scripts/management/rebuild_index.py"
  1. 验证索引完整性:
python "${CLAUDE_PLUGIN_ROOT}/skills/duende-docs/scripts/management/manage_index.py" verify
  1. 报告文档计数:
python "${CLAUDE_PLUGIN_ROOT}/skills/duende-docs/scripts/management/manage_index.py" count

报告每个步骤的结果。


动作: 重建索引

清除并立即重建duende-docs搜索索引。这比clear-cache + 等待下次搜索更快,因为它立即触发重建。

何时使用

  • 手动编辑index.yaml或文档文件后
  • 当搜索结果看起来陈旧或不正确时
  • git pull包含文档更改后
  • 当需要立即搜索工作时

与清除缓存的区别

动作 行为 搜索可用性
clear-cache 仅清除缓存 在下次搜索时重建(惰性)
rebuild-index 清除 + 重建 立即(急)

选项

  • 无选项: 显示计划并请求确认
  • –force: 跳过确认并立即重建

指令

此动作清除Duende文档搜索缓存并立即重建索引。

检查当前状态

首先,检查当前缓存状态。报告缓存是否存在、是否有效以及上次构建时间。

请求确认

除非用户传递--force,否则显示重建计划以及当前缓存状态,并在继续前请求确认。解释重建需要几秒钟,在重建期间搜索将不可用。

清除并重建

一旦确认(或如果传递--force):

  1. 使用clear_cache.py脚本清除缓存
  2. 使用rebuild_index.py脚本重建索引
  3. 使用manage_index.py verify验证重建成功

报告结果

报告新索引统计,包括文档计数和构建时间。确认搜索现在可用。

## 索引已重建

成功重建Duende文档搜索索引。

**新索引统计:**
- 文档: X
- 构建时间: Xms

**搜索现在可用。**

错误处理

  • 插件未安装: 报告"duende-ecosystem插件未找到。"
  • 重建失败: 报告脚本错误
  • 权限被拒绝: 报告并提供修复步骤

动作: 清除缓存

清除duende-docs搜索缓存(倒排索引)。这强制索引在下次文档搜索时重建。

何时使用

  • 手动编辑index.yaml或文档文件后
  • 当搜索结果看起来陈旧或不正确时
  • git pull包含文档更改后
  • 为释放磁盘空间

选项

  • 无选项: 显示将要清除的内容并请求确认
  • –force: 跳过确认并立即清除

步骤1: 解析选项

检查--force标志是否存在。

force_mode = "--force" in arguments (case-insensitive)

步骤2: 定位缓存目录

duende-docs缓存位于:

${CLAUDE_PLUGIN_ROOT}/skills/duende-docs/.cache/

或通过安装路径:

~/.claude/plugins/cache/<marketplace>/duende-ecosystem/<version>/skills/duende-docs/.cache/

步骤3: 检查缓存状态

列出缓存文件:

文件 用途
inverted_index.json 搜索索引
cache_version.json 基于哈希的有效性跟踪

如果缓存目录不存在或为空,报告:“缓存已清除。无需操作。”

步骤4: 确认(除非 --force)

如果非force_mode,呈现缓存清除计划:

## 缓存清除计划

**目标:** Duende文档搜索索引

| 文件 | 大小 |
|------|------|
| inverted_index.json | X.X MB |
| cache_version.json | 512 字节 |

**总计:** X.X MB

> **注意:** 搜索索引将在下次文档搜索时自动重建。
> 要立即重建,请在清除后使用`rebuild-index`动作。

**继续?** 回复"yes"以继续,或使用`--force`跳过此确认。

步骤5: 清除缓存

使用clear_cache.py脚本清除:

python "${CLAUDE_PLUGIN_ROOT}/skills/duende-docs/scripts/maintenance/clear_cache.py"

步骤6: 报告成功

## 缓存已清除

成功清除Duende文档搜索缓存。

**已清除:**
- inverted_index.json
- cache_version.json

**后续步骤:**
- 搜索索引将在下次搜索时自动重建
- 或使用`rebuild-index`动作立即重建

错误处理

  • 缓存未找到: 报告"缓存已清除或插件未安装。"
  • 权限被拒绝: 报告"权限被拒绝。尝试使用提升的权限运行。"
  • 插件未安装: 报告"duende-ecosystem插件未找到。"