mcpField
T
tldr-deep

tldr-deep

github.com/parcadei開発3.9k484 回インストール39 週間前に更新
リポジトリ

tldr-deep について

tldr-deep は、関数のデバッグや詳細な理解に使う開発者向けのコード分析スキルです。構造、呼び出しグラフ、制御フロー、データフロー、依存関係を5層で調べます。

主な機能

  1. 015層の関数分析
  2. 02AST構造の確認
  3. 03呼び出しグラフの調査
  4. 04制御フローとデータフローの分析
  5. 05依存関係のスライス
  6. 06Python APIからの利用

活用シーン

  1. 01複雑な関数の実行経路の追跡
  2. 02リファクタリング前の依存確認
  3. 03複雑なコードのレビュー
  4. 04複雑度の高い箇所の発見

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/parcadei/continuous-claude-v3 --skill tldr-deep

インストール後、Claude Code で/tldr-deepを入力して読み込まれたか確認します。

詳細

TLDR ディープ分析

特定の関数を5層すべてで分析します。デバッグやコードを深く理解する場合に使用します。

トリガー

  • /tldr-deep <function_name>
  • 「関数 X を詳しく分析して」
  • 「Y の仕組みを深く理解したい」
  • 複雑な関数のデバッグ

レイヤー

レイヤー目的コマンド
L1: AST構造tldr extract <file>
L2: Call Graphナビゲーションtldr context <func> --depth 2
L3: CFG複雑さtldr cfg <file> <func>
L4: DFGデータフローtldr dfg <file> <func>
L5: Slice依存関係tldr slice <file> <func> <line>

実行

関数名を指定して、すべてのレイヤーを実行します。

# First find the file
tldr search "def <function_name>" .

# Then run each layer
tldr extract <found_file>              # L1: Full file structure
tldr context <function_name> --project . --depth 2  # L2: Call graph
tldr cfg <found_file> <function_name>  # L3: Control flow
tldr dfg <found_file> <function_name>  # L4: Data flow
tldr slice <found_file> <function_name> <target_line>  # L5: Slice

出力形式

## Deep Analysis: {function_name}

### L1: Structure (AST)
File: {file_path}
Signature: {signature}
Docstring: {docstring}

### L2: Call Graph
Calls: {list of functions this calls}
Called by: {list of functions that call this}

### L3: Control Flow (CFG)
Blocks: {N}
Cyclomatic Complexity: {M}
[Hot if M > 10]
Branches:
  - if: line X
  - for: line Y
  - ...

### L4: Data Flow (DFG)
Variables defined:
  - {var1} @ line X
  - {var2} @ line Y
Variables used:
  - {var1} @ lines [A, B, C]
  - {var2} @ lines [D, E]

### L5: Program Slice (affecting line {target})
Lines in slice: {N}
Key dependencies:
  - line X → line Y (data)
  - line A → line B (control)

---
Total: ~{tokens} tokens (95% savings vs raw file)

使用する場面

  1. デバッグ - 関数内のすべての経路を理解する必要がある場合
  2. リファクタリング - 何が何に依存しているかを把握する必要がある場合
  3. コードレビュー - 複雑な関数を分析する場合
  4. パフォーマンス - ホットスポットを見つける場合(サイクロマティック複雑度が高い箇所)

プログラム API

from tldr.api import (
    extract_file,
    get_relevant_context,
    get_cfg_context,
    get_dfg_context,
    get_slice
)

# All layers for one function
file_info = extract_file("src/processor.py")
context = get_relevant_context("src/", "process_data", depth=2)
cfg = get_cfg_context("src/processor.py", "process_data")
dfg = get_dfg_context("src/processor.py", "process_data")
slice_lines = get_slice("src/processor.py", "process_data", target_line=42)

コメント