Local graph memory for AI coding agents, giving MCP-compatible tools precise codebase context before they edit.
Drift inferred · capture-to-capture
tool count over time
tools
-
analyze_changed_subgraph
Summarize changed-file risk, impacted nodes, tests, architecture smells, and docs from a bounded graph neighborhood
-
analyze_feature_implementation_path
Map a feature request or docs/features file to implementation status, touched areas, tests, docs, missing graph evidence, and risk
-
answer_change_context_challenge
Validate the user's one or two selected answers, halt on mistakes, explain them, and allow retry
-
build_minimal_context
Bounded context pack with callers, callees, impact, tests, gaps, likely files, token estimate, and model guidance
-
check_graph_freshness
Report graph confidence from indexed file, line, and timestamp metadata
-
classify_keywords
Classify derived keywords as domain/technical/tooling/common/noise and persist usefulness scores
-
clear_code_graph
Clear all indexed code graph nodes while preserving docs
-
clear_project_knowledge
Clear one project's indexed graph and docs before rebuilding
-
execute_context_workflow
Execute an approved read-only context workflow and return per-step results
-
find_config_definitions
Find where a canonical config key is defined or overridden
-
find_config_usage
Find which code reads or binds a canonical config key
-
find_connection
Shortest path between two code elements
-
find_coverage_gaps
Production code not called by tests
-
find_duplicate_candidates
Review likely duplicate methods/classes with refactor-risk signals
-
find_frontend_cascade_conflicts
Report likely CSS/SCSS override conflicts from indexed specificity and source-order metadata
-
find_graph_drift
Detect stale graph data before relying on exact implementation targets
-
find_impact
Backward blast-radius analysis
-
find_implementation_patterns
Find reusable implementation shapes such as entry -> service -> repository -> tests
-
find_implementation_surface
Rank likely files and symbols to edit for a feature goal
-
find_related_knowledge
Find lexically related code and docs through shared keywords
-
find_similar_nodes
Find duplicate code patterns (requires embeddings enabled)
-
find_smell_paths
Show shortest forbidden architectural dependency paths
-
find_stale_knowledge
Detect stale docs, weak mentions, orphaned external concepts, and orphaned code references
-
find_test_shield
Map direct test protection, indirect shields, and unshielded change-path nodes
-
find_tool_dependency_impact
Show which CodeMeridian tools, reports, evaluators, docs, and regression suites depend on a tool or shared contract
-
find_unreferenced
Dead-code candidates
-
get_architectural_overview
Project map by namespace/module
-
get_change_context
Retrieve opt-in human-cognitive-seed context with current hash/orphan status
-
get_context_for_editing
Compact callers/callees/interfaces context for a node
-
hybrid_search
Find semantically similar code near a node or subsystem boundary
-
knowledge_decay
Alias of find_stale_knowledge for graph-native stale-knowledge review
-
plan_context_workflow
Plan the right sequence of CodeMeridian tools for an agent task
-
query_codebase
Natural-language search over code structure
-
rebuild_keyword_graph
Rebuild derived Keyword nodes and HAS_KEYWORD edges from indexed graph text
-
record_change_context
Preserve one bounded attributed human-cognitive-seed decision or constraint against an exact code node
-
record_change_context_challenge_note
Save an optional user-written note after the challenge is solved
-
replace_surface
Group dependency replacement work into safe and risky clusters before a library migration
-
resolve_exact_symbol
Resolve symbol/file/line hints to canonical node IDs before editing
-
search_documentation
Search indexed README/ADR/documentation content
-
start_change_context_challenge
Open an MCP App with 3-4 LLM-authored code choices grounded in an exact node and its change context
-
suggest_extractions
Rank tightly connected groups that look like good extraction candidates
analyzed commit 1b38f4f · analyzer v33 · 4h ago
skills & prompt files 8
- agent-rules Driftya-code-meridian-1b38f4f/.github/copilot-instructions.md
- agent-rules Driftya-code-meridian-1b38f4f/AGENTS.md
- agent-rules Driftya-code-meridian-1b38f4f/CLAUDE.md
- skill Driftya-code-meridian-1b38f4f/docs/agent-capabilities/skills/codemeridian-context/SKILL.md
- skill Driftya-code-meridian-1b38f4f/docs/agent-capabilities/skills/codemeridian-frontend/SKILL.md
- skill Driftya-code-meridian-1b38f4f/docs/agent-capabilities/skills/codemeridian-refactor/SKILL.md
- skill Driftya-code-meridian-1b38f4f/docs/agent-capabilities/skills/codemeridian-test-planning/SKILL.md
- skill Driftya-code-meridian-1b38f4f/docs/agent-capabilities/skills/human-cognitive-seed/SKILL.md
code files: 608
filesystem 31
- fs (weak) Driftya-code-meridian-1b38f4f/tests/mcp-apps.test.mjs :2
import { readFile } from 'node:fs/promises'; - fs Driftya-code-meridian-1b38f4f/tools/HtmlCssIndexer/dist/walker/css.js :1
import fs from 'node:fs'; - fs Driftya-code-meridian-1b38f4f/tools/HtmlCssIndexer/dist/walker/markup.js :1
import fs from 'node:fs'; - fs Driftya-code-meridian-1b38f4f/tools/HtmlCssIndexer/src/walker/css.ts :1
import fs from 'node:fs'; - fs Driftya-code-meridian-1b38f4f/tools/HtmlCssIndexer/src/walker/markup.ts :1
import fs from 'node:fs'; - fs (weak) Driftya-code-meridian-1b38f4f/tools/HtmlCssIndexer/tests/html-css-indexer-application.test.ts :1
import fs from 'node:fs'; - fs (weak) Driftya-code-meridian-1b38f4f/tools/HtmlCssIndexer/tests/program.test.ts :1
import fs from 'node:fs'; - fs (weak) Driftya-code-meridian-1b38f4f/tools/HtmlCssIndexer/tests/walker.test.ts :1
import fs from 'node:fs'; - fs Driftya-code-meridian-1b38f4f/tools/IndexerShared/dist/batch-file.js :1
import fs from 'node:fs'; - fs Driftya-code-meridian-1b38f4f/tools/IndexerShared/dist/load-environment.js :1
import fs from 'node:fs'; - fs Driftya-code-meridian-1b38f4f/tools/IndexerShared/src/batch-file.ts :1
import fs from 'node:fs'; - fs Driftya-code-meridian-1b38f4f/tools/IndexerShared/src/load-environment.ts :1
import fs from 'node:fs'; - fs (weak) Driftya-code-meridian-1b38f4f/tools/IndexerShared/tests/batch-file.test.ts :1
import fs from 'node:fs'; - fs Driftya-code-meridian-1b38f4f/tools/TsIndexer/dist/analysis/type-script-boundaries.js :1
import fs from 'node:fs'; - fs Driftya-code-meridian-1b38f4f/tools/TsIndexer/dist/diagnostics/type-script-diagnostics.js :1
import fs from 'node:fs'; - fs Driftya-code-meridian-1b38f4f/tools/TsIndexer/dist/services/project-discovery.js :1
import fs from 'node:fs'; - fs Driftya-code-meridian-1b38f4f/tools/TsIndexer/dist/walker.js :1
import fs from 'node:fs'; - fs (weak) Driftya-code-meridian-1b38f4f/tools/TsIndexer/dist/walker/configuration.test.js :1
import fs from 'node:fs'; - fs Driftya-code-meridian-1b38f4f/tools/TsIndexer/dist/walker/database-tracing-options.js :1
import fs from 'node:fs'; - fs Driftya-code-meridian-1b38f4f/tools/TsIndexer/src/analysis/type-script-boundaries.ts :1
import fs from 'node:fs'; - fs Driftya-code-meridian-1b38f4f/tools/TsIndexer/src/diagnostics/type-script-diagnostics.ts :1
import fs from 'node:fs'; - fs Driftya-code-meridian-1b38f4f/tools/TsIndexer/src/services/project-discovery.ts :1
import fs from 'node:fs'; - fs Driftya-code-meridian-1b38f4f/tools/TsIndexer/src/walker.ts :1
import fs from 'node:fs'; - fs (weak) Driftya-code-meridian-1b38f4f/tools/TsIndexer/src/walker/configuration.test.ts :1
import fs from 'node:fs'; - fs Driftya-code-meridian-1b38f4f/tools/TsIndexer/src/walker/database-tracing-options.ts :1
import fs from 'node:fs'; - fs (weak) Driftya-code-meridian-1b38f4f/tools/TsIndexer/tests/program.test.ts :1
import fs from 'node:fs'; - fs (weak) Driftya-code-meridian-1b38f4f/tools/TsIndexer/tests/project-discovery.test.ts :1
import fs from 'node:fs'; - fs (weak) Driftya-code-meridian-1b38f4f/tools/TsIndexer/tests/type-script-boundaries.test.ts :1
import fs from 'node:fs'; - fs (weak) Driftya-code-meridian-1b38f4f/tools/TsIndexer/tests/type-script-indexer-application.test.ts :1
import fs from 'node:fs'; - fs (weak) Driftya-code-meridian-1b38f4f/tools/TsIndexer/tests/type-script-indexer-catalog-application.test.ts :1
import fs from 'node:fs'; - fs (weak) Driftya-code-meridian-1b38f4f/tools/TsIndexer/tests/walker-test-helpers.ts :1
import fs from 'node:fs';
shell / exec 2
- shell Driftya-code-meridian-1b38f4f/tools/TsIndexer/dist/diagnostics/type-script-diagnostics.js :3
import { spawn } from 'node:child_process'; - shell Driftya-code-meridian-1b38f4f/tools/TsIndexer/src/diagnostics/type-script-diagnostics.ts :3
import { spawn } from 'node:child_process';
network 3
- net Driftya-code-meridian-1b38f4f/tools/IndexerShared/dist/client.js :26
const res = await fetch(`${this.baseUrl}/api/v1/embeddings`, { - net Driftya-code-meridian-1b38f4f/tools/IndexerShared/src/client.ts :51
const res = await fetch(`${this.baseUrl}/api/v1/embeddings`, { - net (weak) Driftya-code-meridian-1b38f4f/tools/TsIndexer/tests/walker.routes.test.ts :15
return fetch(routes.orders, { method: 'POST' });
secrets 1
- secrets (weak) Driftya-code-meridian-1b38f4f/tools/TsIndexer/tests/type-script-indexer-application.test.ts :328
project.writeFile('src/config/AppConfig.ts', 'export const value = process.env.API_KEY ?? "";\n');
database 2
- db (weak) Driftya-code-meridian-1b38f4f/tools/TsIndexer/tests/type-script-indexer-application.test.ts :261
"import { PrismaClient } from '@prisma/client';", - db (weak) Driftya-code-meridian-1b38f4f/tools/TsIndexer/tests/walker.database-tracing.test.ts :32
`import { PrismaClient } from '@prisma/client';
declared dependencies 6
- jsdom@30.0.1
- Microsoft.Extensions.Configuration@10.*
- Microsoft.Extensions.Configuration.Binder@10.*
- Microsoft.Extensions.Logging.Abstractions@10.*
- Microsoft.Extensions.DependencyInjection.Abstractions@10.*
- Microsoft.Extensions.Http@10.*