ダッシュボード

本番環境は、もう誰の頭にも収まりません。 Polylaneはそのすべてを保持します。クラウド、コード、テレメトリーを1つのライブなグラフに。

ウェイトリストに登録
Topology
Search your cloud resources...
Galaxy
checkout-edge Worker
Critical Critical to your architecture.

Issue hotspot: 4 issues in the last 7 days

Change hotspot: 12 changes in the last 7 days

Cloudflare · coreplane · earth · Compute
hd-prod Hyperdrive
Critical Critical to your architecture.

Change hotspot: 7 changes in the last 7 days

Cloudflare · coreplane · earth · Databases
ingest-events Lambda function
Standard Important to your architecture.

Issue hotspot: 2 issues in the last 7 days

AWS · coreplane-prod · us-east-1 · Compute
payments-db Database
Critical Critical to your architecture.

Issue hotspot: 1 issue in the last 7 days

Change hotspot: 3 changes in the last 7 days

PlanetScale · coreplane · us-east · Databases

エージェントの質はコンテキストで決まります。 Polylaneがコンテキストを学ぶ方法です。

  • クラウド全体を読み取り専用で

    AWSは読み取り専用ロールで、ほとんどのプロバイダーはAPIトークンで接続します。すべてのリソースがグラフに加わり、自動で最新の状態が保たれます。

  • プロバイダーをまたいでつながる

    ホスト名、DNSレコード、IPがクラウド同士をつなぎます。たとえばRenderのサービスを指すCloudflareのCNAMEです。2年前の図ではなく、実際のリクエスト経路です。

  • 重要なものほど手厚く見守る

    すべてのリソースに、criticalからminimalまでのティアが付きます。トラフィックと依存関係から毎日算出され、どれでも上書きできます。

  • 記録を残す

    各リソースは、システムの変化に合わせて自ら書き換わるwikiを持ち、エージェントはメモを残します。7月の調査は6月の調査から学びます。

CLIでもMCPでも、好きな方で。 コーディングエージェントは好きな方法で接続できます。

CLIがつなぎます。

1回のインストールでスタックを接続し、マシン上のすべてのコーディングエージェントにPolylaneを登録します。

Model Context Protocol

MCPが提供します。

クラウド、テレメトリー、デプロイ、コードを1つのMCPサーバーの背後に集めます。既定は読み取りで、書き込みは既定拒否のポリシーの背後にあります。

いつも使っているツールの中で。 すべてのエージェントが同じグラフを読みます。

Claude Code
Cursor
GitHub Copilot
Codex
Gemini CLI
VS Code
Zed
OpenCode

Code mode。 往復は1回、返るのは答えだけ。

ツールを1つずつ呼び出す代わりに、エージェントがMCPのtoolsネームスペースに対してTypeScriptを書き、サーバーがそれを実行します。中間結果はコンテキストウィンドウに一切触れず、返ってくるのは答えだけです。

polylane · runCode
// Which deploy slowed checkout-edge?
const deploys = await tools.deployHistory({ service: "checkout-edge", hours: 24 });
const { points } = await tools.queryMetrics({
  service: "checkout-edge",
  metric: "latency.p99",
  hours: 24,
});

const median = (xs) => xs.sort((a, b) => a - b)[xs.length >> 1] ?? 0;
const p99 = (t, side) =>
  median(points.filter((p) => (side < 0 ? p.t < t : p.t > t)).map((p) => p.v));

// Score every deploy by the p99 shift across its timestamp.
const [worst] = deploys
  .map((d) => ({ ...d, shift: p99(d.at, 1) / p99(d.at, -1) }))
  .sort((a, b) => b.shift - a.shift);

// Pull the error logs right after the suspect deploy.
const errors = await tools.queryLogs({
  service: "checkout-edge",
  level: "error",
  after: worst.at,
  limit: 5,
});

// Only this returns; the series and logs stay in the sandbox.
return {
  deploy: worst.sha, // 9f3c2a1
  p99Shift: worst.shift, // 4.8
  topError: errors[0]?.message, // "Hyperdrive pool exhausted"
};

one answer back; twenty round trips saved

クラウドを接続してください。 Polylaneは何かが壊れる前に、その隅々まで学びます。