本文へ移動
cccskills
無料GitHub で公開日本語紹介

charts

会話に埋め込める棒・折れ線・面グラフのPNG画像を作成します。タイトルや軸ラベル、色、テーマ、複数系列などを指定してデータを見やすく表現できます。

原文原文の説明を見る

Generate inline chart images (PNG) for embedding in chat responses. Use this skill when you need to create bar, line, or area charts for data visualization in chat.

BuilderIO/agent-nativeスター 7,527(GitHub 7,527 + cccskills 0)

実行スコア 未検証

インストール方法を見る

こんなときに便利

  • 月ごとの数値を棒グラフで見せたいとき
  • 時系列の変化を折れ線で示したいとき
  • 複数系列のデータを比較したいとき
  • 回答にグラフ画像を埋め込みたいとき

日本語での紹介

できること

データを棒グラフ、折れ線グラフ、面グラフにして、チャットの回答へ埋め込めるPNG画像として作成します。タイトル、横軸ラベル、数値データ、色、画像サイズを指定でき、複数系列や積み上げ表示にも対応します。出力には画像のURLと幅・高さが含まれ、チャットのMarkdownから表示できます。テーマは設定ファイルから自動判定するか、明るいテーマ・暗いテーマを指定できます。グラフ内の文字は短いタイトルなどに絞り、詳しい数値や背景はチャット本文で補う使い方が示されています。

こんなときに便利

数値の比較や時系列の変化を、文章だけでなく画像でも伝えたいときに向いています。集計結果を説明する回答にグラフを添えたり、複数のデータ系列を並べて見せたりできます。

使い方の例

  • 「月ごとの登録数を棒グラフにしてください」
  • 「利用件数の推移を折れ線グラフにして、回答に埋め込んでください」
  • 「2つのプランの数値を積み上げグラフで比較してください」

注意点

スクリプトの生成にはchartjs-node-canvasとcanvasが必要です。チャットに埋め込む際は、相対パスではなくスクリプトが返す完全なURLを使います。

この紹介文は、公開されている SKILL.md をもとに AI(OpenAI Codex)が作成しました。正確な仕様は下の原文を確認してください。

含まれるファイル(1)

  • SKILL.md4.4 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Chart Generation

How It Works

Charts are generated server-side as PNG images using chartjs-node-canvas (Chart.js) and served via /api/media/. The generate-chart script renders charts and returns a fully qualified URL for embedding in chat markdown.

Script Usage

pnpm action generate-chart --type=bar --title="Title" --labels='["A","B","C"]' --data='[1,2,3]' --color="#18B4F4"

Parameters

ParamValuesDefault
--typebar, line, areabar
--titleChart title (keep SHORT)required
--subtitleOptional subtitle — avoid unless needed—
--labelsJSON array of x-axis labelsrequired
--dataJSON array of numbers, OR array of {label, data, color} for multi-seriesrequired
--colorPrimary hex color#18B4F4
--themedark, lightauto from media/theme.json
--stackedtrue for stacked barsfalse
--filenameOutput filename (no ext)auto from title
--width / --heightImage dimensions800x400

Output

{ filename, url, width, height } — the url is fully qualified with cache buster.

Color Palette

ColorHexUse
Blue#18B4F4Default/primary for all charts
Purple#8b5cf6Secondary
Green#22c55eTertiary
Amber#f59e0b
Indigo#6366f1
Red#ef4444
Teal#14b8a6
Orange#f97316

Style Preferences (from Steve)

  • Minimal text on chart — short title only, no subtitle
  • Stats and context in chat text around the chart, not on the image
  • Large fonts: title 22px, axis 13px
  • Few axis labels: maxTicksLimit 8 on x-axis, 5 on y-axis
  • No rotated labels (maxRotation: 0)

Good pattern:

**Example Corp Product Usage — Last 30 Days**
![chart](https://...your-app.example.com/api/media/chart.png?v=123)
**528 messages** over 18 active days | Peak: **89** (Feb 14)

QuickChart Inline Styling (for non-script charts)

When using QuickChart (https://quickchart.io/chart/create) with Chart.js v2:

  • Background: #09090b (zinc-950)
  • Grid: horizontal only, dashed [3,3], color #27272a
  • Axis ticks: #52525b, 11px
  • Title: #fafafa, 16px bold
  • Legend: #a1a1aa, 11px
  • Default bar/line color: #18B4F4 (primary blue)
  • Tooltips: bg #09090b, border #27272a, text #fafafa

Multi-Series & Stacked Charts

  • Use --stacked=true flag
  • Pass data as --data='[{"label":"User A","data":[...],"color":"#..."}]'
  • Script sets stack: "stack1" on all datasets

Key Gotchas

  • Relative paths do NOT work — chat UI is on a different origin. Always use the fully qualified URL from script output (uses APP_ORIGIN)
  • Cache busting (?v=<timestamp>) auto-appended
  • chartjs-node-canvas depends on canvas native module — pnpm.onlyBuiltDependencies must include "canvas". If not built, run pnpm rebuild canvas
  • Theme auto-detected from media/theme.json (set by the sidebar toggle via the set-theme action)

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

コメント

ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。

まだコメントはありません。最初のコメントを書いてみませんか。

送信するとすぐに公開されます。メールアドレスや電話番号などの個人情報は書かないでください。URL は 2 つまでです。

0 / 1000 文字

このフォームは reCAPTCHA で保護されており、Google のプライバシーポリシーと利用規約が適用されます。

同じリポジトリのスキル

a2a-assets

無料概要あり

複数のアプリやMCPホストからブランド画像・動画を生成、調整、書き出し、挿入する作業を支援します。ライブラリ選択や修正依頼も扱います。

  • スライド用のブランド画像を作りたいとき
  • 既存素材をフィードバックに合わせて直したいとき
  • 動画素材を生成して書き出したいとき
BuilderIO/agent-native7,5272026年10月26日 更新

account-health

無料概要あり

特定の顧客企業について、契約と製品利用の数値を照らし合わせ、根拠や不足情報を明記した健全性レポートをまとめます。

  • 顧客の健全性を確認したいとき
  • 契約席数と実利用を比べたいとき
  • 更新前に利用状況を整理したいとき
BuilderIO/agent-native7,5272026年10月26日 更新

actions

無料概要あり

アプリの操作をエージェントと画面の両方から呼び出せるアクションとして実装し、API連携や画面のデータ取得を一貫した形で追加するスキルです。

  • 新しいアプリ操作を追加したいとき
  • 外部APIと連携したいとき
  • 画面からデータを取得したいとき
BuilderIO/agent-native7,5272026年10月26日 更新

adding-a-feature

無料概要あり

新機能をUI・エージェント用アクション・説明資料・画面状態の4領域でそろえ、利用者とエージェントのどちらからも一貫して使えるようにするチェックリストです。

  • 新機能追加の作業範囲を整理したいとき
  • UIとエージェント操作をそろえたいとき
  • 画面状態の同期漏れを防ぎたいとき
BuilderIO/agent-native7,5272026年10月26日 更新

adhoc-analysis

無料概要あり

複数のデータソースを照合して、傾向や指標、根拠をまとめた分析結果を作成します。必要に応じて、再実行できるダッシュボードとして保存できます。

  • 商談と通話記録を照合したいとき
  • 顧客の利用状況を横断して調べたいとき
  • 繰り返し更新できる分析を保存したいとき
BuilderIO/agent-native7,5272026年10月26日 更新

admin-surfaces

無料概要あり

Analyticsの管理画面で、機能フラグの状態確認と切り替え、ダッシュボード利用状況の調査、接続先アプリのデータベース管理を行います。

  • アプリごとの機能フラグを確認・変更したいとき
  • ダッシュボードの所有者や利用状況を調べたいとき
  • 接続済みアプリのテーブルを管理したいとき
BuilderIO/agent-native7,5272026年10月26日 更新

BuilderIO のスキルをすべて見る

このスキルの問題を報告する