---
name: solo-audit-056d4d535e5f
description: Health check knowledge base for broken links, missing frontmatter, tag inconsistencies, and coverage gaps. Use when user says "audit KB", "check frontmatter", "find broken links", "tag cleanup", or "knowledge base quality". Do NOT use for SEO audits (use /seo-audit) or code reviews.
license: MIT
metadata:
  author: fortunto2
  version: "1.4.1"
  openclaw:
    emoji: "🩺"
allowed-tools: Read, Grep, Bash, Glob, mcp__solograph__kb_search
argument-hint: "[optional: focus area like 'tags' or 'frontmatter']"
---

# /audit

Audit the knowledge base for quality issues: missing frontmatter, broken links, tag inconsistencies, orphaned files, and coverage gaps. Works on any markdown-heavy project.

## Steps

1. **Parse focus area** from `$ARGUMENTS` (optional). If provided, focus on that area (e.g., "tags", "frontmatter", "links"). If empty, run full audit.

2. **Find all markdown files:** Use Glob to find all .md files, excluding common non-content directories: `.venv/`, `node_modules/`, `.git/`, `archive/`, `.archive_old/`.

3. **Frontmatter audit:** First, scan a sample of existing files (first 10-20) to detect the frontmatter schema in use (which fields exist, what values are common for `type` and `status`). Then for each markdown file, check:
   - Has YAML frontmatter (starts with `---` and has closing `---`)
   - Core fields present: `title`, `tags` (and any other fields consistently used across the KB)
   - `type` and `status` values (if used) are consistent with the detected schema
   - `tags` is a non-empty list
   Track files missing frontmatter and files with incomplete/invalid frontmatter.

4. **Link check:** Look for broken internal links:
   - Grep for markdown links `\[.*\]\(.*\.md\)` and verify each target file exists
   - If a link-checking script exists in the project (e.g., `scripts/check_links.py`), run it as well

5. **Tag consistency audit:** Use Grep to find all `tags:` sections across .md files. Look for:
   - Near-duplicate tags (e.g., "ai" vs "AI" vs "artificial-intelligence")
   - Tags used only once (potential typos)
   - Very common tags that might be too broad
   List all unique tags with counts.

6. **Orphaned files:** Check which files are NOT referenced in any other file's `related:` field. Files that exist but are never cross-referenced may be orphaned.

7. **Content quality:** Find documents that appear to be ideas or opportunities (based on detected `type` field or directory location) and check:
   - Documents still in `draft` status for more than 30 days
   - Documents missing key metadata fields that other similar documents have
   - Documents with very little content (< 100 words, excluding frontmatter)

8. **Coverage gaps:** Check each directory for content:
   - Flag any empty or near-empty directories
   - Look for directories with only 1-2 files (may need more content)

9. **Output report:**
   ```
   ## KB Audit Report

   **Date:** [today]

   ### Summary
   - Total .md files: X
   - With frontmatter: X (X%)
   - Without frontmatter: X

   ### Frontmatter Issues
   | File | Issue |
   |------|-------|
   | path | Missing field: type |

   ### Broken Links
   [list of broken references]

   ### Tag Analysis
   - Total unique tags: X
   - Single-use tags: [list]
   - Potential duplicates: [list]

   ### Orphaned Files
   [files not referenced anywhere]

   ### Content Quality
   - Stale drafts (> 30 days): [list]
   - Missing metadata: [list]
   - Low-content files: [list]

   ### Coverage
   [directory analysis]

   ### Recommendations
   1. [specific action]
   2. [specific action]
   3. [specific action]
   ```

## Common Issues

### No markdown files found
**Cause:** Running in wrong directory or all files excluded.
**Fix:** Ensure you're in the knowledge base root. Check exclude patterns in step 2.

### Too many single-use tags
**Cause:** Inconsistent tagging across documents.
**Fix:** Pick canonical tags from the most-used list. Run audit again after cleanup.

### Frontmatter validation errors
**Cause:** YAML syntax issues (missing quotes, wrong indentation).
**Fix:** Ensure `---` delimiters are present. Use `type:` and `status:` values consistent with your KB's detected schema.


---
Source attribution: fortunto2
Original project: https://github.com/meghal86/stacksignal/blob/54afe4b75ed2eb8f0feabb2f5b57dfa4bcbb3c44/.agents/skills/solo-audit/SKILL.md
License: MIT
License information: https://opensource.org/license/mit
Original upstream instructions; downloaded from Mega AI Hub.

## Upstream license notice

MIT License

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.



# Mega AI Hub resource metadata

Creator / publisher: fortunto2
Original project: https://github.com/meghal86/stacksignal/blob/54afe4b75ed2eb8f0feabb2f5b57dfa4bcbb3c44/.agents/skills/solo-audit/SKILL.md
Attribution basis: Source repository record

Fields of work: Marketing, Product Management
Roles: Content Marketer, Marketing Analyst, Product Manager
Specialties: Specialty not specified
Tools: Mcp__Solograph__Kb_Search
Country applicability: Country not specified
Classification basis: Source category, role and specialization labels
Instruction SHA-256: d09d7cb712f21eedeb75178e93f6e21516d96598bc476bcdab5f73603b10bed6
