Honeycomb(監視・分析ツール)でクエリ(データ抽出を指定する命令)とSLO(サービスレベル目標)を含むボード(ダッシュボード)を設計して作成します。 **次のような場合に使用:** - 「ボードを作成してほしい」 - 「ダッシュボードを作りたい」 - 「Honeycomb用のボードを構築したい」 - 「Honeycombでダッシュボードを設定してほしい」 - 「サービスの健全性を可視化したい」 - 「ゴールデンシグナル(主要な監視指標)ダッシュボード」 - 「監視ボードをセットアップしたい」 - 「サービス向けのダッシュボード」 - 「Honeycombのボードやダッシュボードの設計・作成・構築に関するリクエスト全般」
Design and then create a board (dashboard) in Honeycomb with queries and SLOs. Trigger phrases: "create a board", "make a board", "build a dashboard", "create a Honeycomb board", "make a dashboard in Honeycomb", "set up a board", "dashboard for my service", "visualize service health", "golden signals dashboard", "set up monitoring board", or any request to design and create or build a Honeycomb board or dashboard.
create_board MCP ツールを使って、Honeycomb にボード(ダッシュボード)を構築します。
更新用ツールはないため、作成前に十分な検討が必要です。
ボードを構築する際は、目的と時間軸を考慮してください。例えば:
get_slos を使って環境内の SLO を一覧表示します。関連する SLO はボードに slo パネルとして追加します。
コードとドキュメント(Read/Grep/Glob を使用)を確認して、サービスまたは機能を理解します。これを踏まえてテキストパネルを作成し、GitHub やドキュメントへのリンクを貼ります。
ボードの目的によって大きく異なります:
Honeycomb コンテキストを取得:get_workspace_context を呼び出して利用可能な環境を確認します。get_environment を使ってデータセットを探します。各データセットは 1 つの OTEL_SERVICE_NAME に対応します。
コードコンテキスト:言語とカスタム属性(多くの場合 app. で始まる)を確認します。カスタムフィールドは分類軸とビジネスメトリクスの有力な候補です。
列を検出:find_columns または get_dataset_columns を使用します。標準以外の列に特に注目してください。これらはアプリケーション固有のものです。
クエリを探す:find_queries を使って過去のクエリを確認します。get_triggers でアラート対象を確認すると、重要な項目が分かります。
時間範囲:デフォルトは 2 時間です。低トラフィックのサービスは 8~24 時間、機能利用ボードは 7 日間を使用します。すべてのパネルで一貫性を保ちます。
グラフは 6~12 個を目標にしてください。統計パネルはボーナスで、この上限に含まれません。
ユーザーに対して、候補クエリを理由とともに一覧表示してから実行します。含めるべき内容と各種の書き方については ${CLAUDE_PLUGIN_ROOT}/skills/create-honeycomb-board/references/board-queries.md を参照してください。
各候補クエリに対して run_query を使用します。各結果はクエリ実行 PK(QR-abc123 のような形式)を返し、これをボード作成時にパネルの id として使用します。
エラーを修正し、興味深い結果が得られないクエリは除外します。
視覚的な流れを考慮し、ボードを表現力豊かにする方法を検討します。ボードは 12 列のグリッドを使用します。統計パネルは並べて配置でき、ヒートマップは全幅を使い、分類軸は高さを活用します。サイズ例については ${CLAUDE_PLUGIN_ROOT}/skills/create-honeycomb-board/references/board-layout.md を参照してください。
ビューアが対話的にボードをフィルタリングしたい場合(ルート、リージョン、契約プランなど)、preset_filters の使用を検討します。
各パネルについて以下を表示します:
query_url)を表示します。結果の概要を簡潔に説明します。最後に「このようなボードを作成したいのですが、よろしいですか?」と確認します。
この手順は絶対に省略できません。 ユーザーが「すぐに作成して」「信頼している」「プレビューをスキップ」と言った場合でも、計画を示してください。見ていないものについて有意義な確認はできません。作成後、ボードは更新できず、唯一の対処は削除と再構築のみです。事前に計画を示すことで、たとえユーザーが必要ないと思っていても保護できます。
例外は 1 つだけです。ユーザーが既にこの会話で特定の計画を確認・承認している場合は、そのまま進めても構いません。
create_board を panels 配列で呼び出します。すべてのパネルに type フィールドが必須です。値は "query"、"slo"、"text" のいずれかで、他のフィールドは型によって決まります。完全なフィールドリファレンスについては ${CLAUDE_PLUGIN_ROOT}/skills/create-honeycomb-board/references/board-layout.md を参照してください。
{
"environment_slug": "production",
"name": "Checkout Service",
"description": "...",
"panels": [
{
"type": "text",
"content": "## Checkout Service\nOwned by Platform team. [Source](https://github.com/...)"
},
{
"type": "slo",
"id": "SLO-abc123",
"size": { "width": 4 }
},
{
"type": "query",
"id": "QR-abc123",
"name": "Request Rate",
"chart_type": "stat",
"display_style": "chart",
"size": { "width": 4 }
},
{
"type": "query",
"id": "QR-def456",
"name": "Error Rate",
"chart_type": "stat",
"display_style": "chart",
"size": { "width": 4 }
},
{
"type": "query",
"id": "QR-ghi789",
"name": "Latency Distribution",
"description": "Overall request latency as a heatmap",
"chart_type": "default",
"display_style": "chart",
"size": { "width": 12, "height": 3 }
}
],
"preset_filters": [{ "column": "http.route", "alias": "Route" }],
"tags": ["team:platform", "tier:critical"]
}
ユーザーにボードのリンクを提供します。
Build a board (dashboard) in Honeycomb using the create_board MCP tool.
There is no update tool — define it well before creating.
When building a board, think about the purpose and time frame involved. Some examples:
Use get_slos to list SLOs in the environment. Relevant SLOs will go on the board as slo panels.
Look at the code and docs (using Read/Grep/Glob) to understand the service or feature. Use this to write a text panel. Link to GitHub or documentation if you can.
This will vary greatly depending on the purpose of the board.
Description of the application and link to the code - great for a service board.
What is the feature, and what business impact does it have? - great for a feature board.
What is the problem, and what is the impact? What patterns do we see? - great for a problem board.
Get Honeycomb context: Call get_workspace_context for available environments. Use get_environment to find datasets — each dataset corresponds to an OTEL_SERVICE_NAME.
Code context: Look at the language and any custom attributes (often prefixed app.). Custom fields are prime candidates for breakdowns and business metrics.
Discover columns: Use find_columns or get_dataset_columns. Pay special attention to non-standard columns — those are specific to the application.
Find queries: Use find_queries to see what people have already queried. Check get_triggers for what they alert on — those indicate what matters.
Time range: Default to 2 hours. Use 8–24 hours for lower-volume services. Use 7 days for feature usage boards. Keep it consistent across all panels.
Aim for 6–12 graphs. Stat panels are bonus — they don't count against this limit.
List your candidate queries for the user with reasons before running them. See ${CLAUDE_PLUGIN_ROOT}/skills/create-honeycomb-board/references/board-queries.md for what to include and how to write each kind.
Use run_query for each candidate query. Each result returns a query run PK (like QR-abc123) — you'll use this as the panel id when building the board.
Fix errors. Eliminate queries that return no interesting results.
Think about visual flow and how to make the board expressive. The board uses a 12-column grid — stat panels can sit side-by-side, a heatmap deserves full width, breakdowns benefit from extra height. See ${CLAUDE_PLUGIN_ROOT}/skills/create-honeycomb-board/references/board-layout.md for sizing examples.
Consider preset_filters if viewers will want to slice the board interactively (by route, region, account tier, etc.).
For each panel, display:
query_url from the run_query result metadata). Briefly describe what the results showed.End with: "Here's the board I'd create. Shall I go ahead?"
This step is non-negotiable. If the user says "just create it", "I trust you", or "skip the preview" — show the plan anyway. The user cannot meaningfully confirm something they haven't seen. There is no way to update a board after creation; the only fix is to delete it and start over. Showing the plan first protects them even when they think they don't need it.
The one exception: if the user has already reviewed and approved a specific plan in this conversation, you may proceed.
Call create_board with a panels array. Every panel requires a type field — "query", "slo", or "text" — that determines what other fields apply. See ${CLAUDE_PLUGIN_ROOT}/skills/create-honeycomb-board/references/board-layout.md for the full field reference.
{
"environment_slug": "production",
"name": "Checkout Service",
"description": "...",
"panels": [
{
"type": "text",
"content": "## Checkout Service\nOwned by Platform team. [Source](https://github.com/...)"
},
{
"type": "slo",
"id": "SLO-abc123",
"size": { "width": 4 }
},
{
"type": "query",
"id": "QR-abc123",
"name": "Request Rate",
"chart_type": "stat",
"display_style": "chart",
"size": { "width": 4 }
},
{
"type": "query",
"id": "QR-def456",
"name": "Error Rate",
"chart_type": "stat",
"display_style": "chart",
"size": { "width": 4 }
},
{
"type": "query",
"id": "QR-ghi789",
"name": "Latency Distribution",
"description": "Overall request latency as a heatmap",
"chart_type": "default",
"display_style": "chart",
"size": { "width": 12, "height": 3 }
}
],
"preset_filters": [{ "column": "http.route", "alias": "Route" }],
"tags": ["team:platform", "tier:critical"]
}
Link the user to the board.
原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。