Help us improve
Share bugs, ideas, or general feedback.
From docs-guardian
Detects project programming language (Rust, Go, Python, TypeScript/JavaScript, etc.) and documentation framework (MkDocs, VitePress, Docusaurus, etc.) from filesystem markers like Cargo.toml, pyproject.toml, mkdocs.yml. Outputs JSON with confidence, doc root, markers.
npx claudepluginhub xiaolai/claude-plugin-marketplace --plugin docs-guardianHow this skill is triggered — by the user, by Claude, or both
Slash command
/docs-guardian:detectionThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Scan the project root for these marker files. First match wins; if multiple match, use the one with the highest priority.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Provides a checklist for code reviews covering functionality, security, performance, maintainability, tests, and quality. Use for pull requests, audits, team standards, and developer training.
Share bugs, ideas, or general feedback.
Scan the project root for these marker files. First match wins; if multiple match, use the one with the highest priority.
| Priority | Marker File | Language |
|---|---|---|
| 1 | Cargo.toml | Rust |
| 2 | go.mod | Go |
| 3 | pyproject.toml, setup.py, setup.cfg, Pipfile | Python |
| 4 | tsconfig.json | TypeScript |
| 5 | package.json (without tsconfig) | JavaScript |
| 6 | *.csproj, *.sln | C# |
| 7 | pom.xml, build.gradle, build.gradle.kts | Java/Kotlin |
| 8 | None of the above | Generic |
When config.language is not "auto", skip detection and use the configured value.
Scan for documentation framework config files. First match wins.
| Priority | Marker File | Framework | Doc Root |
|---|---|---|---|
| 1 | mkdocs.yml or mkdocs.yaml | MkDocs | docs/ (or per mkdocs.yml docs_dir) |
| 2 | .vitepress/config.ts or .vitepress/config.js or .vitepress/config.mts | VitePress | directory containing .vitepress/ |
| 3 | docusaurus.config.js or docusaurus.config.ts | Docusaurus | docs/ (or per config docsDir) |
| 4 | conf.py (with extensions containing sphinx) | Sphinx | source/ or directory containing conf.py |
| 5 | docs/ directory exists with .md files | Plain Markdown | docs/ |
| 6 | README.md only | Plain Markdown | project root |
When config.framework is not "auto", skip detection and use the configured value.
Return a JSON object:
{
"language": "typescript",
"languageConfidence": "high",
"framework": "vitepress",
"frameworkConfidence": "high",
"docRoot": "docs/",
"markers": ["tsconfig.json", ".vitepress/config.ts"]
}
Confidence levels:
high: marker file found and unambiguousmedium: marker found but could be misidentified (e.g., JS project with stale tsconfig)low: fallback / guessing