サービスの 3 階層目まで潜り込んで、何がそれを呼び出しているのかを突き止めようとしている。
ファイルツリーはコードがどこにあるかは示してくれますが、何がそれに依存しているかは示してくれません。コードをエージェントが書き、手元にあるのが 1,000 行の diff だけとなれば、なおさら困難です。Panolayer は依存関係をマッピングするため、フォルダ単位ではなく、何が何を呼び出しているかに沿って、システムを視覚的に移動できます。
できること
02 / アーキテクチャ
必要な部分まで掘り下げる
サービスをクリックするとそのモジュールが、モジュールをクリックするとその関数が表示されます。ダイアグラム、カラム、パスの各ビューは同じ構造を 3 通りに表示するため、今見ているコードに最も読みやすいビューに切り替えられます。
04 / アーキテクチャ
変更がどこまで及ぶかを確認
getPrice() をセント単位からドル単位に切り替えるようエージェントに依頼する前に、何がそれを呼び出しているかを確認しましょう。商品ページ、カート、チェックアウトです。Panolayer はどの関数からでも依存関係グラフをたどるため、誰かが変更を加える前に、その変更が何に触れうるかがわかります。
05 / アーキテクチャ
エージェントも同じマップを見る
実行するエージェントは MCP ツールを通じてこのマップを照会できます。そのため、渡されたファイルだけを頼りに作業するのではなく、関数を変更する前に何がそれを呼び出しているかを調べられます。検証も、すべての変更を同じマップに照らしてチェックします。つまり、あなたも、エージェントも、検証も、システムについてのひとつの全体像から出発するのです。
06 / アーキテクチャ
遅れを取らないドキュメント
リビングドキュメントはアーキテクチャから生成され、コードの変更に合わせて同期した状態を保ちます。そのため、ドキュメントは誰かが最後に更新した時点のシステムではなく、現在のシステムを記述しています。
Panolayer はプロジェクトを記憶します
新しいエージェントセッションは毎回ゼロから始まります。同じ規約、同じ制約、そしてあのマイグレーションに誰も手を付けない理由を、また一から説明することになります。Panolayer は、これまでに下した決定、規約と制約、マイグレーションの履歴、過去のバグの修正方法など、プロジェクトに関する構造化された記憶をセッションをまたいで保持します。Panolayer でコードベースに長く取り組むほど、同じことを繰り返し説明する必要は少なくなります。
よくある質問
ダイアグラムは LLM が生成しているのですか?
いいえ。ソースから解析されています。依頼すればモデルがわかりやすい説明を追加することはありますが、構造を決めるのはモデルではありません。
エージェントを実行せずにアーキテクチャマップを使えますか?
はい。リポジトリを開けば、自分が書いていないコードを把握するために使えます。
どの言語がサポートされていますか?
TypeScript、JavaScript、Python、Go、Rust、Java などです。動的呼び出しや生成コードは追跡が難しく、より注意深い確認が必要になる場合があります。
サポート対象の言語を見るmonorepo でも使えますか?
はい。


