AIアシスタントとの連携
codeknitには、AIコーディングアシスタントが効果的に利用する方法を教える、すぐに使えるスキルが同梱されています。これらのスキルにより、アシスタントは手動でのプロンプトなしでコード構造の抽出、重複の検出、および構造分析を実行できます。
スキルの概要
Section titled “スキルの概要”codeknitは2つのスキルを提供します:
codeknit-parse:アシスタントにコード構造(関数、クラス、メソッド、変数)と関係性(呼び出し、継承、包含)を.sktファイルに抽出する方法を教えます。codeknit-fingerprint:ファジーハッシュを使用して重複および近似重複コードを検出する方法をアシスタントに教えます。
各スキルには、アシスタントが使用方法、フラグ、出力フォーマット、およびワークフローを理解するためにオンデマンドで読み込むドキュメントが含まれています。
インストール
Section titled “インストール”スキルディレクトリをアシスタントのスキルフォルダにコピーします。
Kiroの場合:
cp -r skills/codeknit-parse ~/.kiro/skills/codeknit-parsecp -r skills/codeknit-fingerprint ~/.kiro/skills/codeknit-fingerprintClaude Codeの場合:
cp -r skills/codeknit-parse ~/.claude/skills/codeknit-parsecp -r skills/codeknit-fingerprint ~/.claude/skills/codeknit-fingerprintインストール後、アシスタントは自動的にcodeknitコマンドの呼び出し方法、適切なフラグの選択、および.skt出力の解釈方法を理解します。
各スキルが教える内容
Section titled “各スキルが教える内容”codeknit-parse
Section titled “codeknit-parse”codeknit-parseスキルは、アシスタントに以下を教えます:
- さまざまなシナリオに適したフラグで
codeknit parseを実行する - 適切な出力モードを選択する:
directory-flat(デフォルト)ほとんどのプロジェクトに適しているinline単一ファイルまたは小規模な入力に適しているdirectory-treeソース構造をミラーリングする
.skt出力ファイルを読み取り、解釈する([symbols]、[edges]、およびオプションの[dict]セクションを含む)- 構造データをリファクタリング、依存関係マッピング、およびコードレビューに使用する
codeknit graph analyzeを実行して、より深いコード品質の洞察を得る(循環依存、ハブシンボル、god classesなど)
codeknit-fingerprint
Section titled “codeknit-fingerprint”codeknit-fingerprintスキルは、アシスタントに以下を教えます:
- 重複検出、DRY監査、およびリファクタリングの特定のために
codeknit fingerprintを使用する - 適切な類似度範囲を選択する(
--min-similarity、--max-similarity) [duplicates]セクションを読み取り、近似重複コードを特定する- フィンガープリントは意味的な意図ではなく、構造的な形状を測定することを理解する
- 必要に応じてOllama埋め込みと
--rerankを使用して誤検出を減らす
ワークフローの例
Section titled “ワークフローの例”- アシスタントにコードベースの構造を分析するよう依頼する
- アシスタントが
codeknit parse ./srcを実行し、結果の.sktファイルを読み取る - アシスタントが構造的な質問に答える:依存関係、呼び出しチェーン、デッドコード
- より深い洞察のために、
codeknit graph analyze ./srcを実行し、レポートを解釈する
[symbols]## src/service.goS1 type/struct L5-L8 AuthService {}S2 callable/method L10-L15 Authenticate(token: string) {receiver=*AuthService}
[edges]S1 --contains--> S2- アシスタントに重複コードを見つけるよう依頼する
- アシスタントが
codeknit fingerprint ./srcを実行する - アシスタントが出力の
[duplicates]セクションを読み取る - アシスタントがフラグ付けされたペアを調査し、統合を提案する
[duplicates]S1, S2: 87% 類似度S3, S4: 76% 類似度- 構造的な質問には、生のソースではなく
.sktファイルを読み取る — これらはコンパクトで信頼性の高い形式で抽出された構造を含んでいる codeknit graph analyzeを使用して、循環依存、ハブシンボル、および深い継承チェーンなどのコード品質の問題を発見する- 大規模なリファクタリングの前に
codeknit fingerprintを実行して、統合すべきコピー&ペーストされたコードを特定する .sktフォーマットはトークン効率が良く設計されており、LLMのコンテキストウィンドウに最適である- 大規模なコードベースを処理する際には、
--minifyを使用してトークン使用量をさらに削減する