本文へ移動
cccskills
無料GitHub で公開

trace-mcp

Use trace-mcp tools for code navigation, impact analysis, and framework-aware queries instead of Read/Grep/Glob/Bash. Activate whenever the agent needs to explore, understand, or modify a codebase that has trace-mcp indexed.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md6.2 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

trace-mcp — Code Intelligence Routing

trace-mcp is a framework-aware code intelligence MCP server. It exposes 182 tools that return semantic, structured results over a cross-language dependency graph. When trace-mcp is available, it is almost always cheaper and more accurate than native file tools.

When to Use

Activate this skill whenever you need to:

  • Find a function, class, method, route, component, or any symbol
  • Understand a file, module, or feature before editing
  • Determine what breaks if you change something
  • Trace a request flow, call graph, or data flow
  • Audit architecture, dead code, tests, or security

Do not use Read, Grep, Glob, or shell ls/find/cat/head/tail for exploring source code (.ts, .js, .py, .php, .go, .rb, .java, etc.). Use trace-mcp tools instead. Native tools stay allowed only for non-code files (.md, .json, .yaml, configs) or immediately before an Edit on a known file.

Start-of-Session Checklist

  1. get_project_map with summary_only=true — orient yourself to the project structure
  2. get_task_context with task: "<natural-language description>" — gather all relevant code in a single call instead of chaining search → get_symbol → Read

Decision Matrix

Tasktrace-mcp toolInstead of
Find a symbol by namesearchGrep
Understand a file before editingget_outlineRead (full file)
Read one symbol's sourceget_symbolRead (full file)
Multiple symbols + shared importsget_context_bundlechained get_symbol
What breaks if I change Xget_change_impactguessing
Who calls this / what does it callget_call_graphGrep
All usages of a symbolfind_usagesGrep
Implementations of an interfaceget_implementationsGrep / ls
Classes implementing Xsearch with implements filterGrep
Tests for a symbol or fileget_tests_forGlob + Grep
Project overviewget_project_map (summary_only)Bash ls/find
Context for a taskget_task_context / get_feature_contextreading many files
HTTP request flowget_request_flowreading route + controller files
DB model relationshipsget_model_contextreading model + migrations
Component treeget_component_treereading component files
Circular dependenciesget_circular_importsmanual tracing
Dead code / dead exportsget_dead_code (mode: "exports_only")Grep for unused
Project health / coverage gapsself_auditmanual inspection
Complexity / hotspotsget_complexity_report / get_risk_hotspotsguessing
List env keys / what config existsget_env_vars (keys + types/formats only, never values)os.environ dump, cat of a .env file

Environment Variables (Safe Path)

  • Task "list env keys / what config exists" → get_env_vars. It returns keys plus inferred types/formats only — never values, so it is safe for secrets.
  • get_env_vars { "pattern": "DB_" } filters by key prefix. get_env_vars { "file": ".env", "redacted": true } gives a line-by-line redacted per-file view (keys + type hints, no values, preserves order/comments; requires file).
  • Config file discovery goes via search / get_symbol / get_outline / get_task_context — never by importing a module to see what it touches.

FORBIDDEN — never use these for env/config discovery (values leak into model context):

  • never dump the environment: python -c "import os; print(os.environ)" or any os.environ / process.env printout
  • never import-diff the environment: before = dict(os.environ), import a module, then diff os.environ to see what it touched
  • never print(module.__file__) for file discovery
  • never cat or directly Read a .env file for discovery

Token-Efficiency Rules

  1. Batch independent queries. Use batch when you need 2+ independent tool calls:
    batch({ calls: [
      { tool: "get_outline", args: { path: "src/foo.ts" } },
      { tool: "get_outline", args: { path: "src/bar.ts" } },
      { tool: "search",      args: { query: "handleRequest", kind: "function" } }
    ]})
    
  2. Never read the same file twice. Use get_outline once, then get_symbol for specific pieces.
  3. Prefer get_context_bundle over chained get_symbol calls — it deduplicates shared imports.
  4. Read-before-Edit optimization. When you must Read a file to edit it:
    • Call get_outline first to find the line range of the target symbol.
    • Read only that range with offset + limit. Never read a 500-line file to edit 5 lines.
  5. Do not delegate code exploration to subagents. Agent subprocesses carry ~50k tokens of overhead before doing anything. Use trace-mcp tools in the main conversation instead.

After Editing a File

  • Call register_edit with the edited file_path to reindex just that file and invalidate caches. This is much lighter than a full reindex and keeps subsequent queries accurate.
  • If the response includes _duplication_warnings, review the referenced symbols — you may be duplicating existing logic.
  • Do not re-read the file to "verify" the edit. The Edit tool already confirmed success.

Before Creating New Symbols

  • Call check_duplication with { name, kind } to verify no similar symbol exists. Prevents reinventing existing logic.

Health Checks (Once Per Session)

  • audit_config — stale references in CLAUDE.md / settings
  • self_audit — dead exports, untested code, hotspots
  • get_tech_debt — per-module tech-debt grades
  • get_optimization_report — detects repeated reads, Bash grep usage, missed trace-mcp opportunities

Related Skills

  • trace-mcp-refactoring — safe refactoring workflow (risk assessment → rename → impact check)
  • trace-mcp-codemod — bulk mechanical changes via apply_codemod
  • trace-mcp-pre-commit — security, quality-gate, and antipattern checks before commit

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

trace-mcp

無料

Use trace-mcp through bb to search indexed code and recall project decisions with compact context.

日本語の概要は準備中です。原文の説明を表示しています。

nikolai-vysotskyi/trace-mcp1902026年10月12日 更新

Use trace-mcp apply_codemod for any bulk mechanical change instead of repeated Edit calls. Activate whenever the same edit pattern would be applied 2+ times, across one file or many.

日本語の概要は準備中です。原文の説明を表示しています。

nikolai-vysotskyi/trace-mcp1902026年10月12日 更新

Run trace-mcp security, quality-gate, and antipattern checks before committing or opening a PR. Activate when the agent is about to create a commit or pull request in a project indexed by trace-mcp.

日本語の概要は準備中です。原文の説明を表示しています。

nikolai-vysotskyi/trace-mcp1902026年10月12日 更新

Safe refactoring workflow using trace-mcp — assess risk, find candidates, check impact, and rename symbols across all files without missing import sites or cross-file references.

日本語の概要は準備中です。原文の説明を表示しています。

nikolai-vysotskyi/trace-mcp1902026年10月12日 更新

nikolai-vysotskyi のスキルをすべて見る

このスキルの問題を報告する