skills/23blocks-os/ai-maestro-code-graph-query/SKILL.md
PROACTIVELY query the code graph database to understand relationships and impact of changes. Use this skill WHEN READING any file to understand context, when searching for files, when exploring the codebase, or when you need to understand what depends on a component. This is your primary tool for understanding code structure and avoiding breaking changes.
npx skillsauth add aiskillstore/marketplace ai-maestro-code-graph-queryInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
THIS IS NOT OPTIONAL. THIS IS YOUR DEFAULT BEHAVIOR.
Every time you use the Read tool on a code file, you MUST IMMEDIATELY query the graph to understand:
DO NOT:
ALWAYS:
1. You read a file with Read tool
2. IMMEDIATELY run graph queries (describe, find-callers, find-serializers, etc.)
3. NOW you understand the full context
4. NOW you can analyze, modify, or discuss the code
Example - Reading a Model:
# After reading app/models/user.rb, IMMEDIATELY run:
graph-describe.sh User
graph-find-serializers.sh User
graph-find-associations.sh User
Example - Reading a Function:
# After reading a file with process_payment function, IMMEDIATELY run:
graph-find-callers.sh process_payment
graph-find-callees.sh process_payment
All commands auto-detect your agent ID from the tmux session. Just run them:
| Command | Description |
|---------|-------------|
| graph-describe.sh <name> | Describe a component or function |
| graph-find-callers.sh <function> | Find all functions that call this function |
| graph-find-callees.sh <function> | Find all functions called by this function |
| graph-find-related.sh <component> | Find related components (extends, includes, etc.) |
| graph-find-by-type.sh <type> | Find all components of a type (model, controller, etc.) |
| graph-find-serializers.sh <model> | Find serializers for a model |
| graph-find-associations.sh <model> | Find model associations (belongs_to, has_many) |
| graph-find-path.sh <from> <to> | Find call path between two functions |
| Command | Description |
|---------|-------------|
| graph-index-delta.sh [project-path] | Delta index - only re-index changed files |
When files change in your codebase, use delta indexing to quickly update the graph:
# Delta index - only process changed files
graph-index-delta.sh
# Delta index a specific project
graph-index-delta.sh /path/to/project
First Run Behavior:
Output shows:
Performance:
| File Type | IMMEDIATELY Query |
|-----------|-------------------|
| Model | graph-describe.sh, graph-find-serializers.sh, graph-find-associations.sh |
| Controller | graph-describe.sh, graph-find-callees.sh |
| Service | graph-describe.sh, graph-find-callers.sh |
| Function | graph-find-callers.sh, graph-find-callees.sh |
| Serializer | graph-describe.sh |
| Any class | graph-find-related.sh |
Without querying the graph, you will:
The graph query takes 1 second. A broken deployment takes hours to fix.
Use with graph-find-by-type.sh:
model - Database modelsserializer - JSON serializerscontroller - API controllersservice - Service objectsjob - Background jobsconcern - Shared modulescomponent - React/Vue componentshook - React hooksScript not found:
which graph-describe.shls -la ~/.local/bin/graph-*.sh~/.local/bin/ which should be in your PATH./install-graph-tools.shAPI connection fails:
curl http://localhost:23000/api/agentsGraph is unavailable:
If commands are not found:
./install-graph-tools.sh
This installs scripts to ~/.local/bin/.
development
Apple Human Interface Guidelines for content display components. Use this skill when the user asks about charts component, collection view, image view, web view, color well, image well, activity view, lockup, data visualization, content display, displaying images, rendering web content, color pickers, or presenting collections of items in Apple apps. Also use when the user says how should I display charts, what's the best way to show images, should I use a web view, how do I build a grid of items, what component shows media, or how do I present a share sheet. Cross-references: hig-foundations for color/typography/accessibility, hig-patterns for data visualization patterns, hig-components-layout for structural containers, hig-platforms for platform-specific component behavior.
tools
Automate HelpDesk tasks via Rube MCP (Composio): list tickets, manage views, use canned responses, and configure custom fields. Always search tools first for current schemas.
testing
Expert Haskell engineer specializing in advanced type systems, pure functional design, and high-reliability software. Use PROACTIVELY for type-level programming, concurrency, and architecture guidance.
tools
GraphQL gives clients exactly the data they need - no more, no less. One endpoint, typed schema, introspection. But the flexibility that makes it powerful also makes it dangerous. Without proper controls, clients can craft queries that bring down your server. This skill covers schema design, resolvers, DataLoader for N+1 prevention, federation for microservices, and client integration with Apollo/urql. Key insight: GraphQL is a contract. The schema is the API documentation. Design it carefully.