Skip to content
Development
Skill

/ascii-dependency-graph

Render an ASCII dependency graph from a JSON structure.

From plugin
rohingosling-claude-skills
73 skills
Install
$ npx -y skills add rohingosling/claude-skills --skill ascii-dependency-graph --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/ascii-dependency-graph

Context preview

The summary Claude sees to decide when to auto-load this skill.

Render an ASCII dependency graph from a JSON structure.

SKILL.md

ascii-dependency-graph.SKILL.md
name: ascii-dependency-graph
description: Render an ASCII dependency graph from a JSON structure.
disable-model-invocation: false

Render an ASCII dependency graph using the Python script at `${CLAUDE_SKILL_DIR}/scripts/render_ascii_dependency_graph.py`.

Instructions

1. Construct a JSON object describing the dependency tree. Each node has:

  • `"name"`: the module/dependency name (required)
  • `"right"`: a single node connected horizontally to the right (optional)
  • `"bottom"`: an array of child nodes connected vertically below (optional)
  • Use `{"ellipsis": true}` in a `bottom` array to insert a `· · ·` continuation marker.

2. Write the JSON to a temporary file in the current project's working directory (e.g. `dep_graph.json`).

3. Run (use `python3` on macOS/Linux, `python` on Windows):

   python3 "${CLAUDE_SKILL_DIR}/scripts/render_ascii_dependency_graph.py" --file dep_graph.json

4. Copy the output into the target markdown file inside a fenced code block.

5. Delete the temporary JSON file.

Example JSON

{
    "name": "App",
    "right": {
        "name": "LibA",
        "right": { "name": "LibC" }
    },
    "bottom": [
        { "name": "LibB" },
        {
            "name": "LibD",
            "right": { "name": "LibC" }
        }
    ]
}

Box width rule

Each box has odd character width = RoundUpToNearestOdd( len(name) + 4 ). This ensures the `┬` connector exits exactly from the centre of the bottom border.

User argument

$ARGUMENTS

Read more
Ships withrohingosling-claude-skills

Claude Code plugin marketplace. A curated collection of my publicly-shared Agent Skills, each packaged as an installable plugin.

Get the whole plugin
Stats
7
Stars
0
Forks
Maintained
Maintenance
Python
Language
MIT
License
2mo ago
Last commit
3mo ago
Created

Repo: rohingosling/claude-skills