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

absolute-path-checker

実装のテスト、リファクタリング、ポータビリティ、ディレクトリ階層について議論する際に、絶対パスが実装コードに存在しないことを確認する

インストール方法を見る

含まれるファイル(1)

  • SKILL.md2.5 KB

SKILL.md(原文)

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

絶対パスチェッカー

目的

実装コード内に絶対パス(特にHOMEディレクトリを含むパス)が存在しないことを担保し、ポータビリティを確保する。

トリガー条件

以下のトピックについて議論・作業する際に自動的に実行:

  • テストの実装・修正
  • リファクタリング
  • ポータビリティの改善
  • ディレクトリ構造・階層の変更

実施手順

1. 絶対パスの検索

実装ファイル(.ts, .js)内で以下のパターンを検索:

# HOME ディレクトリベースの絶対パス
grep -r "/Users/" --include="*.ts" --include="*.js" .
grep -r "/home/" --include="*.ts" --include="*.js" .

# ルートからの絶対パス(設定ファイル以外)
grep -r '"/[a-z]' --include="*.ts" --include="*.js" .

2. 検出結果の判断

検出されたパスが以下のどれに該当するか判断:

種類対応
実装コード内のリテラル相対化が必要
テスト結果・ログ出力許容(ただし、テストの期待値には含めない)
設定ファイルのデフォルト値環境変数や相対パスに置換
ドキュメント・コメント内の例許容

3. 相対パスへの変換

優先順位

  1. 既存の変数を使用: プロジェクトで定義済みの変数があれば使う

    • 例: baseDir, projectRoot, Deno.cwd() など
  2. import.meta を使用 (Deno/ESM の場合):

    const __dirname = new URL(".", import.meta.url).pathname;
    const configPath = join(__dirname, "../config.json");
    
  3. 相対パスリテラル:

    // Before
    const path = "/Users/dev/project/data/file.txt";
    
    // After
    const path = "./data/file.txt";
    

4. テストの実行

修正後は必ずテストを実行して動作確認:

deno task test

注意事項

  • $HOME や ~ を含むパスも絶対パスと同様に扱う
  • 環境変数から取得したパス(Deno.env.get("HOME") など)は許容
  • パスの結合には join() や resolve() を使用し、文字列連結は避ける

レビュー

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

同じリポジトリのスキル

概要と使いどころ

Master backend architectures, REST API design, microservices, and server-side development across multiple languages. Use this as a central index to access specialized sub-skills.

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

MikeCheng1208/BattleTree22026年7月22日 更新

在每次回复中使用固定前缀并列出本次实际参考的指令/文件,便于校验是否遵循上下文与规则。

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

MikeCheng1208/BattleTree22026年7月22日 更新

Automate 21risk tasks via Rube MCP (Composio). Always search tools first for current schemas.

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

MikeCheng1208/BattleTree22026年7月22日 更新

Automate 2chat tasks via Rube MCP (Composio). Always search tools first for current schemas.

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

MikeCheng1208/BattleTree22026年7月22日 更新

Arquitecto de Soluciones Principal y Consultor Tecnológico de Andru.ia. Diagnostica y traza la hoja de ruta óptima para proyectos de IA en español.

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

MikeCheng1208/BattleTree22026年7月22日 更新

[00] META. Orchestrate skills into dynamic chains for complex tasks. Analyzes the task, discovers available skills, builds an optimal chain, explains why each skill is needed, and executes step-by-step with user confirmation. Use for any complex task requiring multiple thinking/research/analysis steps. Triggers on "plan this", "how to approach", "what's the strategy", "build a plan", or any multi-step problem requiring skill orchestration.

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

MikeCheng1208/BattleTree22026年7月22日 更新

MikeCheng1208 のスキルをすべて見る

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