Communityライティング&編集github.com

plelevier/gcyphrq

JSONグラフファイルに対して自然言語でCypherクエリを実行できるCLIツールおよびライブラリ(Graphologyベースのインメモリグラフを利用)

gcyphrq とは?

gcyphrqスキルは、AIコーディングエージェントが自然言語のプロンプトを使ってJSONグラフファイルに対してCypherクエリを実行できるようにするツールです。一度インストールすれば、「API Gatewayに依存しているサービスは何か?」といった質問をするだけで、構造化されたJSON結果が得られます。このスキルは、Cypherクエリの自動生成、クエリ実行、結果の可読性向上、複数クエリチェーンによる複雑な分析(影響範囲、パストレース、次数分析など)をエージェントに教えます。Pi、Claude Code、OpenCodeなど主要なAIコーディングエージェントに対応しており、gcyphrq CLIの`--install-skill`コマンドで簡単にインストールできます。また、サービス依存関係、レプリケーショントポロジ、監視カバレッジなど、インフラに関する一般的な質問に答えるためのクエリパターンライブラリも同梱されています。

対応✓Claude Code~Codex CLI~Cursor✓OpenCode
npx skills add plelevier/gcyphrq

Installed? Explore more ライティング&編集 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

スキルガイド

gcyphrq スキルを使用すると、AIコーディングエージェントは自然言語のプロンプトを使ってJSONグラフファイルに対してCypherクエリを実行できるようになります。一度インストールすれば、「API Gatewayに依存しているサービスは何か?」 といった質問をするだけで、構造化されたJSON結果が得られます。

スキルの機能

スキルをインストールすると、AIエージェントは以下のことができるようになります:

  • 自然言語をCypherクエリに自動翻訳
  • gcyphrq CLIを使用してJSONグラフファイルに対してクエリを実行
  • 結果を解釈し、読みやすい形式で提示
  • 複数のクエリを連鎖させて複雑な分析を実行(影響範囲、パストレース、次数分析など)

このスキルには、インフラに関する一般的な質問(サービス依存関係、レプリケーショントポロジ、監視カバレッジなど)に対応するための厳選されたクエリパターンライブラリが含まれています。

インストール

CLIを使用する(推奨)

最も簡単な方法は、組み込みのインストールコマンドを使用することです。インストールされているエージェント(pi、Claude Code、OpenCode)を自動検出し、スキルを自動的にインストールします。

# グローバルインストール(エージェント設定ディレクトリにシンボリックリンクを作成)
gcyphrq --install-skill global

# ローカルインストール(カレントディレクトリにコピー)
gcyphrq --install-skill local

--install-skill コマンドは:

  • システムにインストールされているエージェントを検出
  • スキルコンテンツのシンボリックリンク(グローバル)またはコピー(ローカル)を作成
  • Claude CodeおよびOpenCode用の CLAUDE.md / AGENTS.md 参照ファイルを生成
  • 冪等性あり — 複数回実行しても安全

インストール後:

  • Pi はスキルを自動認識します。/skill:gcyphrq で呼び出すか、目的を自然言語で記述してください。
  • Claude Code はグラフ関連の質問をすると、スキルを自動認識します。
  • OpenCode はプロンプトがスキルの説明(グラフクエリ、インフラトポロジ、サービス依存関係など)に一致するとスキルを読み込みます。

手動インストール

インストールコマンドがお使いの環境で動作しない場合は、手動でスキルディレクトリを配置することもできます。

# Pi
mkdir -p ~/.pi/agent/skills/gcyphrq
curl -sL https://raw.githubusercontent.com/plelevier/gcyphrq/main/skills/gcyphrq/SKILL.md \
  -o ~/.pi/agent/skills/gcyphrq/SKILL.md

# Claude Code
mkdir -p ~/.claude/skills/gcyphrq
curl -sL https://raw.githubusercontent.com/plelevier/gcyphrq/main/skills/gcyphrq/SKILL.md \
  -o ~/.claude/skills/gcyphrq/SKILL.md

# OpenCode
mkdir -p ~/.opencode/skills/gcyphrq
curl -sL https://raw.githubusercontent.com/plelevier/gcyphrq/main/skills/gcyphrq/SKILL.md \
  -o ~/.opencode/skills/gcyphrq/SKILL.md

references/ ディレクトリ(queries.md と example-graph.json を含む)を SKILL.md と同じ階層の references/ サブディレクトリにダウンロードすると、追加のクエリパターンと自己完結型のテストグラフを利用できます。

その他のエージェント

カスタムインストラクションやシステムプロンプトをサポートする任意のAIコーディングエージェントの場合:

  1. CLIをインストール: npm install -g gcyphrq
  2. SKILL.mdをコピー: https://raw.githubusercontent.com/plelevier/gcyphrq/main/skills/gcyphrq/SKILL.md からエージェントのカスタムインストラクションにコピー
  3. 参照ファイルをコピー: https://raw.githubusercontent.com/plelevier/gcyphrq/main/skills/gcyphrq/references/ から(queries.md と example-graph.json を含む)を SKILL.md と並ぶ references/ サブディレクトリにコピー
  4. グラフファイルを指定: スキル例の <graph.json> を実際のグラフファイルへのパスに置き換えてください

前提条件

  • gcyphrq CLI がインストールされ、PATHが通っていること — インストール手順は はじめに を参照
  • クエリ対象のJSONグラフファイル(同梱の references/example-graph.json をテスト用に使用できます)

プロンプト例

スキルをインストールすると、自然言語のプロンプトを使用できるようになります。以下はスキルが解決すべき例です。

サービス依存関係

プロンプト: 「API Gatewayはどのサービスに依存していますか?」

スキルはこれを、API Gatewayノードからの出力接続を追跡するCypherクエリに変換します。

プロンプト: 「PostgreSQLに接続されているすべてのサービスを表示して。」

PostgreSQL PrimaryデータベースにTCP接続を持つすべてのサービスを返します。

影響範囲分析

プロンプト: 「Kafkaがダウンした場合、何が壊れますか?」

Kafka Clusterから2ホップ以内に到達可能なすべてのノードを追跡し、影響範囲を表示します。

プロンプト: 「API Gatewayが故障した場合の影響範囲は?」

API Gatewayが利用不可になった場合に影響を受ける、下流のすべてのサービスとインフラをマッピングします。

パストレース

プロンプト: 「CDNからデータベースへのパスを表示して。」

CDNとデータベースノード間の接続パスを見つけ、中間サービスを表示します。

プロンプト: 「API Gatewayからユーザーデータベースへのリクエストの流れは?」

認証、RPCサービス、データベース接続を経由するリクエストパスを追跡します。

インフラトポロジ

プロンプト: 「メッセージキューはどのように接続されていますか?」

すべてのメッセージキューインフラと、そのプロデューサー/コンシューマー関係を一覧表示します。

プロンプト: 「データベースのレプリケーション設定は?」

プライマリ-レプリカ関係とレプリケーションエッジタイプを表示します。

次数分析

プロンプト: 「最も多くの出力接続を持つサービスは?」

全サービスの出力次数を計算し、最も接続数の多いサービスを返します。

プロンプト: 「出力接続数が2より多いサービスを見つけて。」

集計とWHEREを使用して、出力接続数がしきい値を超えるサービスをフィルタリングします。

監視カバレッジ

プロンプト: 「どのサービスが監視されていますか?」

監視インフラ(Prometheus、Grafanaなど)に接続されているすべてのサービスを見つけます。

プロンプト: 「監視されていないサービスはどれですか?」

OPTIONAL MATCHを使用して、監視接続のないサービスを見つけます。

外部依存関係

プロンプト: 「外部APIを呼び出しているサービスは?」

RPCサービスを1~3ホップ追跡し、外部API依存関係を見つけます。

プロンプト: 「すべての外部連携を一覧表示して。」

Externalラベルを持つすべてのノードと、その上流の呼び出し元を返します。

高度なフィルタリング

プロンプト: 「RPCまたはWorkerサービスをすべて表示して。」

WHEREとORを使用して複数のタイプにマッチングします。

プロンプト: 「バッチジョブではないサービスを見つけて。」

WHEREとNOTを使用してタイプを除外します。

プロンプト: 「us-east-1にあり、名前に'Service'を含むサービスを一覧表示して。」

WHEREとANDを使用して条件を結合します。

ページネーション

プロンプト: 「サービスの2ページ目を表示して、1ページあたり10件、アルファベット順で。」

ORDER BY、SKIP、LIMITを使用してサービス結果をページネーションします。

グラフの変更

プロンプト: 「'Datadog'という新しい監視サービスを追加して。」

CREATEを使用してグラフに新しいノードを追加します。

プロンプト: 「API Gatewayのステータスを'deprecated'に設定して。」

SETを使用してノードのプロパティを更新します。

プロンプト: 「Aliceから'Person'ラベルを削除して。」

REMOVEを使用してラベルを削除するか、ノードからプロパティを削除します(ノードとそのリレーションシップは保持)。

スキルリファレンス

スキルファイル(SKILL.md)には以下が含まれます:

  • CLIの使い方 — コマンド構文、オプション、標準入力パイプ、クエリの連鎖
  • グラフファイル形式 — ノードとエッジの構造
  • サポートされているCypher機能 — ステータス付きの全機能マトリックス
  • クエリパターン — 同梱の references/example-graph.json を使用した構築済みクエリ
  • 出力形式 — グラフ形式(デフォルト)と行形式、連鎖の例
  • 制限事項 — 既知の制約(サブクエリなし、APOCなしなど)

トラブルシューティング

問題解決策
gcyphrq: command not foundnpm install -g gcyphrq を実行
エージェントがスキルを検出しないSKILL.md がプラットフォームの正しいスキルディレクトリにあるか確認
クエリが空の結果を返すノードラベルとプロパティ名がグラフファイルと正確に一致しているか確認

次のステップ

  • [はじめに]({{ '/getting-started/' | relative_url }}) — gcyphrqをインストールして最初のクエリを実行
  • [クエリガイド]({{ '/query-guide/' | relative_url }}) — 完全なCypher構文リファレンス
  • [例]({{ '/examples/' | relative_url }}) — サンプル出力付きの30の実行可能クエリ
  • [ライブラリAPI]({{ '/library-api/' | relative_url }}) — Node.js / TypeScriptでgcyphrqをプログラム的に使用

関連スキル