Token导航 LogoToken导航TokenDH.com
研究检索敏感数据github未标认证来源可访问许可证需确认审计通过

devtu-docs-qualitydevtu 文档质量

Agent Skill

用于辅助文档、README、Markdown、说明文和内容稿件的整理与改写。它适合让 Agent 提炼结构、补齐章节、统一术语、检查链接或把零散材料整理成可读文档。使用时应保留项目已有事实、命令和路径,不要把未确认的信息写成确定结论;涉及对外文案时,还需要控制语气,避免过度营销或夸大能力。

总安装

1,038

周安装

42

GitHub Stars

1,330

下载量

326
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:devtu-docs-quality(devtu 文档质量)
来源仓库:https://github.com/mims-harvard/tooluniverse
仓库路径:skills/devtu-docs-quality
安装命令:
npx skills add https://github.com/mims-harvard/tooluniverse --skill devtu-docs-quality
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/mims-harvard/tooluniverse --skill devtu-docs-quality

简介

系统性提升 ToolUniverse 文档质量,结合自动化验证脚本。

  • 支持命令测试、链接校验与术语一致性检查。
  • 提供优先级修复建议与结构导航问题诊断功能。
  • 适用于发布前审查与重大重构后的文档完整性保障。
  • devtu-docs-quality 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Documentation Quality Assurance

Systematic documentation quality system combining automated validation scripts with ToolUniverse-specific structural audits.

When to Use

  • Pre-release documentation review
  • After major refactoring (commands, APIs, tool counts changed)
  • User reports confusing or outdated documentation
  • Circular navigation or structural problems suspected
  • Want to establish automated validation pipeline

Approach: Two-Phase Strategy

Phase A: Automated Validation (15-20 min)

  • Create validation scripts for systematic detection
  • Test commands, links, terminology consistency
  • Priority-based fixes (blockers → polish)

Phase B: ToolUniverse-Specific Audit (20-25 min)

  • Circular navigation checks
  • MCP configuration duplication
  • Tool count consistency
  • Auto-generated file conflicts

Phase A: Automated Validation

A1. Build Validation Script

Create scripts/validate_documentation.py:

#!/usr/bin/env python3
"""Documentation validator for ToolUniverse"""

import re
import glob
from pathlib import Path

DOCS_ROOT = Path("docs")

# ToolUniverse-specific patterns
DEPRECATED_PATTERNS = [
    (r"python -m tooluniverse\.server", "tooluniverse-server"),
    (r"600\+?\s+tools", "1000+ tools"),
    (r"750\+?\s+tools", "1000+ tools"),
]

def is_false_positive(match, content):
    """Smart context checking to avoid false positives"""
    start = max(0, match.start() - 100)
    end = min(len(content), match.end() + 100)
    context = content[start:end].lower()

    # Skip if discussing deprecation itself
    if any(kw in context for kw in ['deprecated', 'old version', 'migration']):
        return True

    # Skip technical values (ports, dimensions, etc.)
    if any(kw in context for kw in ['width', 'height', 'port', '":"']):
        return True

    return False

def validate_file(filepath):
    """Check one file for issues"""
    with open(filepath, 'r', encoding='utf-8') as f:
        content = f.read()

    issues = []

    # Check deprecated patterns
    for old_pattern, new_text in DEPRECATED_PATTERNS:
        matches = re.finditer(old_pattern, content)
        for match in matches:
            if is_false_positive(match, content):
                continue

            line_num = content[:match.start()].count('\n') + 1
            issues.append({
                'file': filepath,
                'line': line_num,
                'severity': 'HIGH',
                'found': match.group(),
                'suggestion': new_text
            })

    return issues

# Scan all docs
all_issues = []
for doc_file in glob.glob(str(DOCS_ROOT / "**/*.md"), recursive=True):
    all_issues.extend(validate_file(doc_file))

for doc_file in glob.glob(str(DOCS_ROOT / "**/*.rst"), recursive=True):
    all_issues.extend(validate_file(doc_file))

# Report
if all_issues:
    print(f"❌ Found {len(all_issues)} issues\n")
    for issue in all_issues:
        print(f"{issue['file']}:{issue['line']} [{issue['severity']}]")
        print(f"  Found: {issue['found']}")
        print(f"  Should be: {issue['suggestion']}\n")
    exit(1)
else:
    print("✅ Documentation validation passed")
    exit(0)

A2. Command Accuracy Check

Test that commands in docs actually work:

# Extract and test commands
grep -r "^\s*\$\s*" docs/ | while read line; do
    cmd=$(echo "$line" | sed 's/.*\$ //' | cut -d' ' -f1)
    if ! command -v "$cmd" &> /dev/null; then
        echo "❌ Command not found: $cmd in $line"
    fi
done

A3. Link Integrity Check

For RST docs:

def check_rst_links(docs_root):
    """Validate :doc: references"""
    pattern = r':doc:`([^`]+)`'

    for rst_file in glob.glob(f"{docs_root}/**/*.rst", recursive=True):
        with open(rst_file) as f:
            content = f.read()

        matches = re.finditer(pattern, content)
        for match in matches:
            ref = match.group(1)

            # Check if target exists
            possible = [f"{ref}.rst", f"{ref}.md", f"{ref}/index.rst"]
            if not any(Path(docs_root, p).exists() for p in possible):
                print(f"❌ Broken link in {rst_file}: {ref}")

A4. Terminology Consistency

Track variations and standardize:

# Define standard terms
TERMINOLOGY = {
    'api_endpoint': ['endpoint', 'url', 'route', 'path'],
    'tool_count': ['tools', 'resources', 'integrations'],
}

def check_terminology(content):
    """Find inconsistent terminology"""
    for standard, variations in TERMINOLOGY.items():
        counts = {v: content.lower().count(v) for v in variations}
        if len([c for c in counts.values() if c > 0]) > 2:
            return f"Inconsistent terminology: {counts}"
    return None

Phase B: ToolUniverse-Specific Audit

B1. Circular Navigation Check

Issue: Documentation pages that reference each other in loops.

Check manually:

# Find cross-references
grep -r ":doc:\`" docs/*.rst | grep -E "(quickstart|getting_started|installation)"

Checklist:

  • Is there a clear "Start Here" on docs/index.rst?
  • Does navigation follow linear path: index → quickstart → getting_started → guides?
  • No "you should have completed X first" statements that create dependency loops?

Common patterns to fix:

  • quickstart.rst → "See getting_started"
  • getting_started.rst → "Complete quickstart first"

B2. Duplicate Content Check

Common duplicates in ToolUniverse:

  1. Multiple FAQs: docs/faq.rst and docs/help/faq.rst
  2. Getting started: docs/installation.rst, docs/quickstart.rst, docs/getting_started.rst
  3. MCP configuration: All files in docs/guide/building_ai_scientists/

Detection:

# Find MCP config duplication
rg "MCP.*configuration" docs/ -l | wc -l
rg "pip install tooluniverse" docs/ -l | wc -l

Action: Consolidate or clearly differentiate

B3. Tool Count Consistency

Standard: Use "1000+ tools" consistently.

Detection:

# Find all tool count mentions
rg "[0-9]+\+?\s+(tools|resources|integrations)" docs/ --no-filename | sort -u

Check:

  • Are different numbers used (600, 750, 1195)?
  • Is "1000+ tools" used consistently?
  • Exact counts avoided in favor of "1000+"?

B4. Auto-Generated File Headers

Auto-generated directories:

  • docs/tools/*_tools.rst (from generate_config_index.py)
  • docs/api/*.rst (from sphinx-apidoc)

Required header:

.. AUTO-GENERATED - DO NOT EDIT MANUALLY
.. Generated by: docs/generate_config_index.py
.. Last updated: 2024-02-05
..
.. To modify, edit source files and regenerate.

Check:

head -5 docs/tools/*_tools.rst | grep "AUTO-GENERATED"

B5. CLI Tools Documentation

Check pyproject.toml for all CLIs:

grep -A 20 "\[project.scripts\]" pyproject.toml

Common undocumented:

  • tooluniverse-expert-feedback
  • tooluniverse-expert-feedback-web
  • generate-mcp-tools

Action: Ensure all in docs/reference/cli_tools.rst

B6. Environment Variables

Discovery:

# Find all env vars in code
rg "os\.getenv|os\.environ" src/tooluniverse/ -o | sort -u
rg "TOOLUNIVERSE_[A-Z_]+" src/tooluniverse/ -o | sort -u

Categories to document:

  • Cache: TOOLUNIVERSE_CACHE_*
  • Logging: TOOLUNIVERSE_LOG_*
  • LLM: TOOLUNIVERSE_LLM_*
  • API keys: *_API_KEY

Check:

  • Does docs/reference/environment_variables.rst exist?
  • Are variables categorized?
  • Each has: default, description, example?
  • Is there .env.template at project root?

B7. ToolUniverse-Specific Jargon

Terms to define on first use:

  • Tool Specification
  • EFO ID
  • MCP, SMCP
  • Compact Mode
  • Tool Finder
  • AI Scientist

Check:

  • Is there docs/glossary.rst?
  • Terms defined inline with :term: references?
  • Glossary linked from main index?

B8. CI/CD Documentation Regeneration

Required in .github/workflows/deploy-docs.yml:

- name: Regenerate tool documentation
  run: |
    cd docs
    python generate_config_index.py
    python generate_remote_tools_docs.py
    python generate_tool_reference.py

Check:

  • CI/CD regenerates docs before build?
  • Regeneration happens BEFORE Sphinx build?
  • docs/api/ excluded from cache?

Priority Framework

Issue Severity

SeverityDefinitionExamplesTimeline
CRITICALBlocks releaseBroken builds, dangerous instructionsImmediate
HIGHBlocks usersWrong commands, broken setupSame day
MEDIUMCauses confusionInconsistent terminology, unclear examplesSame week
LOWReduces qualityLong files, minor formattingFuture task

Fix Order

  1. Run automated validation → Fix HIGH issues
  2. Check circular navigation → Fix CRITICAL loops
  3. Verify tool counts → Standardize to "1000+"
  4. Check auto-generated headers → Add missing
  5. Validate CLI docs → Document all from pyproject.toml
  6. Check env vars → Create reference page
  7. Review jargon → Create/update glossary
  8. Verify CI/CD → Add regeneration steps

Validation Checklist

Before considering docs "done":

Accuracy

  • Automated validation passes
  • All commands tested
  • Version numbers current
  • Counts match reality

Structure (ToolUniverse-specific)

  • No circular navigation
  • Clear "Start Here" entry point
  • Linear learning path
  • Max 2-3 level hierarchy

Consistency

  • "1000+ tools" everywhere
  • Same terminology throughout
  • Auto-generated files have headers
  • All CLIs documented

Completeness

  • All features documented
  • All CLIs in pyproject.toml covered
  • All env vars documented
  • Glossary includes all jargon

Output: Audit Report

# Documentation Quality Report

**Date**: [date]
**Scope**: Automated validation + ToolUniverse audit

## Executive Summary
- Files scanned: X
- Issues found: Y (Critical: A, High: B, Medium: C, Low: D)

## Critical Issues
1. **[Issue]** - Location: file:line
   - Problem: [description]
   - Fix: [action]
   - Effort: [time]

## Automated Validation Results
- Deprecated commands: X instances
- Inconsistent counts: Y instances
- Broken links: Z instances

## ToolUniverse-Specific Findings
- Circular navigation: [yes/no]
- Tool count variations: [list]
- Missing CLI docs: [list]
- Auto-generated headers: X missing

## Recommendations
1. Immediate (today): [list]
2. This week: [list]
3. Next sprint: [list]

## Validation Command
Run `python scripts/validate_documentation.py` to verify fixes

CI/CD Integration

Add to .github/workflows/validate-docs.yml:

name: Validate Documentation
on: [pull_request]
jobs:
  validate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Install dependencies
        run: pip install -r requirements.txt
      - name: Run validation
        run: python scripts/validate_documentation.py
      - name: Check auto-generated headers
        run: |
          for f in docs/tools/*_tools.rst; do
            if ! head -1 "$f" | grep -q "AUTO-GENERATED"; then
              echo "Missing header: $f"
              exit 1
            fi
          done

Common Issues Quick Reference

IssueDetectionFix
Deprecated commandrg "old-cmd" docs/Replace with new-cmd
Wrong tool countrg "[0-9]+ tools" docs/Change to "1000+ tools"
Circular navManual traceRemove back-references
Missing headerhead -1 file.rstAdd AUTO-GENERATED header
Undocumented CLICheck pyproject.tomlAdd to cli_tools.rst
Missing env varrg "os.getenv" src/Add to env vars reference

Best Practices

  1. Automate first - Build validation before manual audit
  2. Context matters - Smart pattern matching avoids false positives
  3. Fix systematically - Batch similar issues together
  4. Validate continuously - Add to CI/CD pipeline
  5. ToolUniverse-specific last - Automated checks catch most issues

Success Criteria

Documentation quality achieved when:

  • ✅ Automated validation reports 0 HIGH issues
  • ✅ No circular navigation
  • ✅ "1000+ tools" used consistently
  • ✅ All auto-generated files have headers
  • ✅ All CLIs from pyproject.toml documented
  • ✅ All env vars have reference page
  • ✅ Glossary covers all technical terms
  • ✅ CI/CD validates on every PR

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

35.35%
按下载量换算115

Claude

31.1%
按下载量换算101

Cursor

19.89%
按下载量换算65

Gemini CLI

8.28%
按下载量换算27

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills