複数のアプリやMCPホストからブランド画像・動画を生成、調整、書き出し、挿入する作業を支援します。ライブラリ選択や修正依頼も扱います。
- スライド用のブランド画像を作りたいとき
- 既存素材をフィードバックに合わせて直したいとき
- 動画素材を生成して書き出したいとき
複数のデータソースを照合して、傾向や指標、根拠をまとめた分析結果を作成します。必要に応じて、再実行できるダッシュボードとして保存できます。
How to conduct ad-hoc analyses: gather data from multiple sources, synthesize findings, and save durable results as dashboard artifacts that anyone can re-run.
実行スコア 未検証
インストール方法を見る複数のデータソースを調べ、情報を照合して、指標や傾向、例外、次の対応案を含む分析レポートをまとめます。データの出典や対象期間、絞り込み条件、件数、照合方法、欠けている情報も示し、数値の根拠を追える形にします。必要に応じて表やチャートを使えます。保存や再実行を求められた場合は、更新手順を含むダッシュボードとして結果を残せます。
CRMの商談と通話記録を合わせて状況を把握したいときや、複数サービスの情報から顧客の状態、コンテンツの成果、解約の背景などを調べたいときに向いています。単発の質問はチャットで回答し、継続的に更新する分析はダッシュボードに保存できます。
分析できるデータは、利用可能なデータソースと設定状況に依存します。取得できない情報は不足として示し、推測で補いません。ダッシュボードの保存には対応するアクションが必要です。
この紹介文は、公開されている SKILL.md をもとに AI(OpenAI Codex)が作成しました。正確な仕様は下の原文を確認してください。
インストールする前に、エージェントに与えられる指示の中身を確認できます。
Ad-hoc analyses are deep-dive investigations that cross-reference multiple data sources and produce a written report with findings. The durable user-facing result is a dashboard. Answer in chat first unless the user explicitly asks to save the result, create a reusable artifact, or re-run/update an existing saved analysis.
Use the ad-hoc analysis workflow when:
Save a reusable dashboard artifact when:
For one-off questions and exploratory deep dives, query the data and answer in chat. Do not create a dashboard or call the legacy save-analysis action just because the user said "analysis" or "deep dive".
If the user asks for an analysis output that needs a bespoke interactive
surface, custom visualization, multi-step workflow, or UI that cannot be
faithfully represented by native dashboard panels, create an extension and
immediately embed it in the dashboard as one or more chartType: "extension"
panels with config.extensionId. Never leave the extension as a standalone
Analytics result or direct the user to an Extensions page.
Orient before gathering data. Consult the preloaded <resource scope="analytics-catalog"> references (else one find-data) and data-source status first to see which sources are configured and which one owns each fact, then settle scope:
If the metric definition, date range, or grain is ambiguous and a wrong guess would change the numbers, use the ask-question clarifying tool (multiple-choice) before gathering data. Ask at most once per turn, and skip it when the dictionary or the user already answered.
Use the available actions to pull data. Read the relevant .agents/skills/<provider>/SKILL.md before querying each source.
Common data source combinations:
| Analysis type | Data sources |
|---|---|
| Deal/account deep dive | account-deep-dive bundle, then targeted HubSpot/Gong follow-up |
| Sales pipeline analysis | HubSpot deals + Gong calls + Slack mentions |
| Customer health check | HubSpot deals + Pylon support tickets + BigQuery usage events |
| Content performance | BigQuery pageviews + GA4 + SEO keywords + HubSpot signups |
| Engineering velocity | GitHub PRs + Jira tickets + BigQuery deploy events |
| Churn investigation | Stripe billing + HubSpot deals + Pylon tickets + BigQuery usage |
Tips for data gathering:
account-deep-dive first (ask what was said in Gong calls with run-gong-native-insight) with the
account, company, domain, deal, or opportunity name. It returns HubSpot deals,
associated companies/contacts/tickets/notes/emails, Gong call detail, compact
transcript excerpts, coverage counts, and gaps. Use targeted hubspot-records
or gong-calls follow-ups only when that bundle leaves a specific gap.query, properties, objectType, company, and
limit to narrow results before cross-referencinghubspot-deals structured filters (product,
pipeline, closedStatus, closedDateFrom, closedDateTo) for the cohort
definition. Do not use query when the user names a specific HubSpot field
such as products.provider-api-catalog / provider-api-docs and then provider-api-request
against the provider's real HTTP API. Do not weaken the analysis just because
the convenience action is missing an argument.cross-source-analysis: match on BOTH a stable id AND email (ids can be reassigned), de-duplicate, and record match quality. Email/company-name/domain matches alone are low-confidence — flag them as caveats, not headline numbers.Don't just dump raw data. Synthesize findings:
update-dashboard or mutate-dashboard.When the analysis benefits from a visual — trends over time, distributions, or
comparisons between categories — query the data first, then use the live
/chart embed described in data-querying for an in-chat answer. Do not call
generate-chart for a one-off chat result: it produces a static image for
saved artifacts, requires pre-stringified JSON, and does not count as a real
data query for the final response guard.
For a stacked multi-series bar chart, keep the query in long form and emit a
panel with chartType: "bar", config.pivot containing xKey, seriesKey,
and valueKey, plus config.stacked: true. The live chart route pivots the
rows and renders one stack per x-axis category. See data-querying's
"Inline Charts In Chat" section for the exact embed fence and encoding.
Only use generate-chart when a saved analysis artifact explicitly needs a
static image. If it returns an error while answering in chat, switch to the
live embed instead of retrying reformatted labels or data parameters.
You can include multiple live charts in one analysis. Reach for a chart when it
communicates the finding faster than a table - don't force visuals on every
analysis. Include the query and embed configuration in saved instructions so
re-runs produce fresh charts.
Structure the report clearly:
## Key Findings
- **Finding 1**: Specific insight with supporting numbers
- **Finding 2**: Another insight
- **Finding 3**: Actionable recommendation
## Summary Metrics
| Metric | Value |
| -------------------- | ------- |
| Total deals analyzed | 54 |
| Average deal size | $42,300 |
| Win rate | 23% |
## Detailed Analysis
### Category 1
[Detailed breakdown with tables, lists, etc.]
### Category 2
[More detail...]
## Methodology
Data sources: HubSpot (deals, contacts), Gong (calls), Slack (mentions)
Time range: Jan 1 – Mar 31, 2026
Filters: S1+ pipeline, closed-lost only
Call update-dashboard with a complete dashboard config when the user asks for a saved/re-runnable analysis or this turn is creating a durable report. If the requested report needs bespoke UI, create the extension first and include its id in an extension panel.
update-dashboard
--dashboardId "closed-lost-q1-2026"
--config '{"name":"Q1 2026 Closed-Lost Analysis","panels":[{"id":"findings","title":"Findings","source":"first-party","chartType":"table","width":2,"sql":"...","config":{"description":"Evidence-backed report for the requested cohort."}}]}'
The dashboard config must preserve compact evidence from the real data-source action results you used: row samples, aggregate metrics, match decisions, call/message IDs, short transcript/message excerpts, coded themes, sentiment labels, and explicit provider errors for any gaps. Do not include full Gong transcripts, full tool outputs, or raw provider payload dumps. If you cannot query a source, do not save guessed dashboard content; report the unavailable/error result instead.
Critical: Write good dashboard definitions. The dashboard description/config is what the agent uses on re-run. Be specific:
After saving, navigate the user to see the saved dashboard:
navigate --view=adhoc --dashboardId=closed-lost-q1-2026
When a user clicks "Re-run" on a saved analysis, the agent receives:
Follow the instructions to gather fresh data, then call update-dashboard with the same dashboardId to update the panels/report. Existing legacy analysis deep links remain readable, but new durable results must be written to dashboards.
If the user challenges the coverage of a chat answer or saved analysis ("why aren't you pulling more deals?", "where is the updated response?"), rerun the source query or revise from the corrected cohort and include the updated deliverable in the response. Do not summarize that a revision exists without showing it or saving it.
| Action | Purpose |
|---|---|
update-dashboard | Save or update the dashboard artifact and its panels |
get-sql-dashboard | Retrieve a dashboard by ID |
list-sql-dashboards | List dashboard artifacts |
navigate | Navigate to a dashboard: --view=adhoc --dashboardId=<id> |
Dashboard artifacts are stored in SQL and respect the normal dashboard access model. Legacy analyses remain in their existing SQL tables for compatibility and should not be used for new artifacts.
API endpoints (for UI consumption):
GET /api/sql-dashboards — list dashboard artifactsGET /api/sql-dashboards/{id} — get oneclosed-lost-q1-2026 not analysis-1resultData with metrics, rows, IDs, short excerpts, and coded themes so the UI can render richer views in the futureFor batch analyses spanning many items, chunk the work instead of trying to hold everything in one pass:
This is the same pattern as a batch document analysis: fetch → process chunk → write intermediate → synthesize. The chunking keeps context manageable and each iteration independent.
After completing a significant analysis, record newly confirmed findings when
they will help future work. First check whether a finding applies to the user's
setup or to the whole organization. Keep setup-specific findings in personal
memory or the current analysis. Ask the user and get approval before writing
anything to shared LEARNINGS.md or organization memory.
Record approved findings such as:
resources(action: "read", path: "LEARNINGS.md")
resources(action: "write", path: "LEARNINGS.md", content: "<updated>")
Keep entries short and actionable. This is the learning flywheel — the next analysis benefits from what this one confirmed.
まだレビューはありません。使ってみた感想をお寄せください。
ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。
まだコメントはありません。最初のコメントを書いてみませんか。
複数のアプリやMCPホストからブランド画像・動画を生成、調整、書き出し、挿入する作業を支援します。ライブラリ選択や修正依頼も扱います。
特定の顧客企業について、契約と製品利用の数値を照らし合わせ、根拠や不足情報を明記した健全性レポートをまとめます。
アプリの操作をエージェントと画面の両方から呼び出せるアクションとして実装し、API連携や画面のデータ取得を一貫した形で追加するスキルです。
新機能をUI・エージェント用アクション・説明資料・画面状態の4領域でそろえ、利用者とエージェントのどちらからも一貫して使えるようにするチェックリストです。
Analyticsの管理画面で、機能フラグの状態確認と切り替え、ダッシュボード利用状況の調査、接続先アプリのデータベース管理を行います。
エージェントが使うAIモデルやプロバイダーを確認・切り替え、接続テストや独自エンジンの登録を行うための設定を支援します。