PROACTIVELY query the code graph database to understand relationships and impact of changes...
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/.