Files
gh-witt3rd-claude-plugins-p…/commands/graph-moc.md
2025-11-30 09:06:41 +08:00

5.6 KiB

description
description
Display information about a Map of Content (MOC) file

Graph MOC (Map of Content)

Display information about a specific MOC (Map of Content) file, which serves as a thematic navigation hub.

0. Locate AZKG Repository

Check for AZKG_REPO_PATH environment variable:

  • Use bash conditional: if [ -z "$AZKG_REPO_PATH" ]; then REPO_PATH=$(pwd); else REPO_PATH="$AZKG_REPO_PATH"; fi
  • If AZKG_REPO_PATH is set: Use that path as the repository root
  • If AZKG_REPO_PATH is not set: Use current working directory (pwd)
  • Store result as REPO_PATH for all subsequent file operations

All file operations must use REPO_PATH:

  • Read: Read(REPO_PATH/filename.md) or Read("$REPO_PATH/filename.md")
  • Write: Write(REPO_PATH/filename.md) or Write("$REPO_PATH/filename.md")
  • Edit: Edit(REPO_PATH/filename.md) or Edit("$REPO_PATH/filename.md")
  • Grep: Grep(pattern, path=REPO_PATH) or with explicit path
  • Glob: Glob(pattern, path=REPO_PATH) or with explicit path

Example usage:

# Check environment variable
if [ -z "$AZKG_REPO_PATH" ]; then
  REPO_PATH=$(pwd)
else
  REPO_PATH="$AZKG_REPO_PATH"
fi

# Then use REPO_PATH for all operations
Read("$REPO_PATH/agents.md")

Concrete examples:

  • If AZKG_REPO_PATH="/c/Users/dothompson/OneDrive/src/witt3rd/donald-azkg" → Read("/c/Users/dothompson/OneDrive/src/witt3rd/donald-azkg/agents.md")
  • If AZKG_REPO_PATH is not set and pwd is /c/Users/dothompson/OneDrive/src/witt3rd/donald-azkg → Read("agents.md") or use full path from pwd

Task

Show:

  • MOC name and theme
  • Total notes linked in this MOC
  • List of all notes with their brief descriptions
  • Section organization within the MOC

Input

User provides the MOC name (e.g., "agents", "mcp", "python", "rust")

Common MOCs:

  • agents_moc.md - AI agents and agentic systems
  • mcp_moc.md - Model Context Protocol
  • python_moc.md - Python development
  • rust_moc.md - Rust programming
  • typescript_moc.md - TypeScript and React
  • windows_moc.md - Windows development
  • writing_moc.md - Writing and communication
  • csharp_moc.md - C# development

Execution Steps

1. Normalize MOC Name

Ensure filename has _moc.md suffix:

  • Input: "agents" → "agents_moc.md"
  • Input: "agents_moc" → "agents_moc.md"
  • Input: "agents_moc.md" → "agents_moc.md"

2. Verify MOC Exists

Use Glob to check if MOC file exists:

Glob "agents_moc.md"

If not found, list available MOCs and suggest closest match.

3. Read MOC Content

Use Read tool to get full MOC content.

4. Parse MOC Structure

Extract:

  • Title (H1 heading)
  • Sections (H2 headings)
  • Wikilinks in each section
  • Brief descriptions next to each wikilink

Example MOC structure:

# Agents - Map of Content

## Core Concepts
- [[agents]] - AI agents powered by LLMs
- [[semantic_routing]] - Intelligent model selection

## Coding Assistants
- [[claude_code]] - Agentic AI coding assistant
- [[claude_code_agents]] - Subagent system

5. Count Notes

Count total wikilinks across all sections.

Output Format

MOC: agents_moc.md
============================================================

Theme: AI agents and agentic systems
Total notes: 15

## Sections and Notes:

### Core Concepts (5 notes)
- [[agents]] - AI agents powered by LLMs for autonomous action
- [[semantic_routing]] - Intelligent model selection based on query
- [[react_agent_pattern]] - Design pattern for agent UIs
- [[llm_self_talk_optimization]] - Token-efficient agent communication
- [[agentic_development_context]] - Comprehensive development ecosystems

### Coding Assistants (5 notes)
- [[claude_code]] - Anthropic's agentic AI coding assistant
- [[claude_code_agents]] - Subagent system for parallel tasks
- [[claude_code_plugins]] - Extensibility via slash commands
- [[claude_code_hooks]] - Lifecycle event system
- [[zettelkasten_claude_plugin]] - Knowledge graph plugin

### Integration & APIs (2 notes)
- [[agent_mcp_apis]] - MCP APIs for agent tool integration
- [[adding_mcp_to_claude_code]] - Adding custom agents

### Related Topics (3 notes)
- [[mcp_overview]] - Protocol for agent tool integration
- [[react_framework]] - UI framework for agents

============================================================

💡 Next steps:
• Use `/graph-note [filename]` to explore any note in this MOC
• Use `/create-note` to add new notes to this domain
• Use `/search-notes #agents` to find all agent-tagged notes

Use Cases

  • Explore a domain: See all notes in a specific theme
  • Find related notes: Discover notes you didn't know existed
  • Assess coverage: Check if a topic area is well-covered
  • Navigate efficiently: Jump to specific concepts in a domain
  • Plan additions: Identify gaps where new notes are needed

Tools Used

  • Glob - Verify MOC file exists, list all MOCs
  • Read - Get full MOC content
  • Parse logic - Extract sections, wikilinks, descriptions

Present Results

After displaying MOC information:

  • Assess coverage (comprehensive vs sparse)
  • Comment on organization (clear sections vs needs structure)
  • Suggest if MOC is getting too large (might need splitting)
  • Identify potential notes to add based on theme
  • Note any wikilinks that point to non-existent notes

If MOC Not Found

MOC not found: unknown_moc.md

Available MOCs:
- agents_moc.md - AI agents and agentic systems
- mcp_moc.md - Model Context Protocol
- python_moc.md - Python development
- rust_moc.md - Rust programming
- typescript_moc.md - TypeScript and React
- windows_moc.md - Windows development
- writing_moc.md - Writing and communication
- csharp_moc.md - C# development

Did you mean one of these?