Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
terrylica avatar

Ascii Diagram Validator

  • 193 installs
  • 62 repo stars
  • Updated August 3, 2026
  • terrylica/cc-skills

Use ascii-diagram-validator for development tasks

About

ascii-diagram-validator: A skill for development. This provides functionality for development workflows.

  • ascii-diagram-validator

Ascii Diagram Validator by the numbers

  • 193 all-time installs (skills.sh)
  • +2 installs in the week ending Aug 5, 2026 (Skillselion tracking)
  • Ranked #2,094 of 4,347 Backend & APIs skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/terrylica/cc-skills --skill ascii-diagram-validator

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs193
repo stars62
Last updatedAugust 3, 2026
Repositoryterrylica/cc-skills

What it does

Use ascii-diagram-validator for development tasks

Files

SKILL.mdMarkdownGitHub ↗

ASCII Diagram Validator

Validate and fix alignment issues in ASCII box-drawing diagrams commonly used in architecture documentation, README files, and code comments.

Self-Evolving Skill: This skill improves through use. If instructions are wrong, parameters drifted, or a workaround was needed — fix this file immediately, don't defer. Only update for real, reproducible issues.

Overview

ASCII diagrams using box-drawing characters (─│┌┐└┘├┤┬┴┼ and double-line variants ═║╔╗╚╝╠╣╦╩╬) require precise column alignment. This skill provides:

1. Validation script - Detects misaligned characters with file:line:column locations 2. Actionable fixes - Specific suggestions for correcting each issue 3. Multi-file support - Validate individual files or entire directories

When to Use This Skill

Invoke when:

  • Creating or editing ASCII architecture diagrams in markdown
  • Reviewing documentation with box-drawing diagrams
  • Fixing "diagram looks wrong" complaints
  • Before committing docs/ARCHITECTURE.md or similar files
  • When user mentions "ASCII alignment", "diagram alignment", or "box drawing"

Supported Characters

Single-Line Box Drawing

Corners: ┌ ┐ └ ┘
Lines:   ─ │
T-joins: ├ ┤ ┬ ┴
Cross:   ┼

Double-Line Box Drawing

Corners: ╔ ╗ ╚ ╝
Lines:   ═ ║
T-joins: ╠ ╣ ╦ ╩
Cross:   ╬

Mixed (Double-Single)

╞ ╟ ╤ ╧ ╪ ╫

Quick Start

Validate a Single File

/usr/bin/env bash << 'PREFLIGHT_EOF'
uv run ${CLAUDE_PLUGIN_ROOT}/skills/ascii-diagram-validator/scripts/check_ascii_alignment.py docs/ARCHITECTURE.md
PREFLIGHT_EOF

Validate Multiple Files

/usr/bin/env bash << 'PREFLIGHT_EOF_2'
uv run ${CLAUDE_PLUGIN_ROOT}/skills/ascii-diagram-validator/scripts/check_ascii_alignment.py docs/*.md
PREFLIGHT_EOF_2

Validate Directory

/usr/bin/env bash << 'PREFLIGHT_EOF_3'
uv run ${CLAUDE_PLUGIN_ROOT}/skills/ascii-diagram-validator/scripts/check_ascii_alignment.py docs/
PREFLIGHT_EOF_3

Output Format

The script outputs issues in a compiler-like format for easy navigation:

docs/ARCHITECTURE.md:45:12: error: vertical connector '│' at column 12 has no matching character above
  → Suggestion: Add '│', '├', '┤', '┬', or '┼' at line 44, column 12

docs/ARCHITECTURE.md:67:8: warning: horizontal line '─' at column 8 has no terminator
  → Suggestion: Add '┐', '┘', '┤', '┴', or '┼' to close the line

Severity Levels

LevelDescription
errorBroken connections, misaligned verticals
warningUnterminated lines, potential issues
infoStyle suggestions (optional cleanup)

Validation Rules

The script checks for:

1. Vertical Alignment - Vertical connectors (│║) must align with characters above/below 2. Corner Connections - Corners (┌┐└┘╔╗╚╝) must connect properly to adjacent lines 3. Junction Validity - T-joins and crosses must have correct incoming/outgoing connections 4. Line Continuity - Horizontal lines (─═) should terminate at valid endpoints 5. Box Closure - Boxes should be properly closed (no dangling edges)

Exit Codes

CodeMeaning
0No issues found
1Errors detected
2Warnings only (errors ignored with --warn-only)

Integration with Claude Code

When Claude Code creates or edits ASCII diagrams:

1. Run the validator script on the file 2. Review any errors in the output 3. Apply suggested fixes 4. Re-run until clean

Example Workflow

/usr/bin/env bash << 'PREFLIGHT_EOF_4'
# After editing docs/ARCHITECTURE.md
uv run ${CLAUDE_PLUGIN_ROOT}/skills/ascii-diagram-validator/scripts/check_ascii_alignment.py docs/ARCHITECTURE.md

# If errors found, Claude Code can read the output and fix:
# docs/ARCHITECTURE.md:45:12: error: vertical connector '│' at column 12 has no matching character above
# → Edit line 44, column 12 to add the missing connector
PREFLIGHT_EOF_4

Limitations

  • Detects structural alignment issues, not aesthetic spacing
  • Requires consistent use of box-drawing characters (no mixed ASCII like +---+)
  • Tab characters may cause false positives (convert to spaces first)
  • Unicode normalization not performed (use pre-composed characters)

Bundled Scripts

ScriptPurpose
scripts/check_ascii_alignment.pyMain validation script

Related

---

Troubleshooting

IssueCauseSolution
Script not foundPlugin not installedVerify plugin installed with claude plugin list
False positives with tabsTab characters misalignConvert tabs to spaces before validation
Mixed ASCII not detectedUsing +---+ styleScript only validates Unicode box-drawing chars
Column numbers offUnicode width calculationUse pre-composed characters, avoid combining marks
No issues but looks wrongAesthetic spacing not checkedValidator checks structure, not visual spacing
Exit code 2 unexpectedwarnings only modeUse --warn-only flag to treat warnings as success
Can't find validation errorComplex nested diagramCheck line numbers in output, validate section only
Unicode chars not renderingTerminal font missing glyphsUse font with full Unicode box-drawing support

Post-Execution Reflection

After this skill completes, check before closing:

1. Did the command succeed? — If not, fix the instruction or error table that caused the failure. 2. Did parameters or output change? — If the underlying tool's interface drifted, update Usage examples and Parameters table to match. 3. Was a workaround needed? — If you had to improvise (different flags, extra steps), update this SKILL.md so the next invocation doesn't need the same workaround.

Only update if the issue is real and reproducible — not speculative.

Related skills

Backend & APIsbackendintegrations

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.