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

notifications

作業の進捗や完了、重要なエラーを通知として届け、アプリ内の受信箱や登録済みのWebhookなどへ振り分けるスキルです。

原文原文の説明を見る

In-app notifications primitive with pluggable server-side channels. Use when the agent needs to surface progress, alerts, or completions to the user — both in-app (bell + toast) and out-of-band (webhook, Slack, custom).

BuilderIO/agent-nativeスター 7,519(GitHub 7,519 + cccskills 0)
連携ツールSlack

実行スコア 未検証

インストール方法を見る

こんなときに便利

  • バックグラウンド処理の完了を知らせたいとき
  • 自動処理の進捗を通知したいとき
  • 重大なエラーをWebhookへ送りたいとき
  • 最近の通知を確認したいとき

日本語での紹介

できること

作業の進捗、処理の完了、注意が必要な状態などを通知として送ります。通知は通常、アプリ内の受信箱に保存され、ベルの表示に反映されます。登録済みのサーバー側チャンネルにも配信でき、組み込みのWebhookのほか、独自チャンネルを登録してSlackなどへつなげられます。通知の重要度を情報・警告・重大から選び、タイトルや本文、メタデータ、送信先を指定できます。最近の通知一覧を確認する機能もあります。

こんなときに便利

バックグラウンド処理の完了を知らせたいとき、自動処理の節目や重大なエラーを利用者に伝えたいときに向いています。通知は会話の返信には使わず、会話内の返答とは別に状況を知らせる用途で使います。

使い方の例

  • 「処理が完了したら通知して」
  • 「重大なエラーを受信箱とWebhookに送って」
  • 「最近の通知を確認して」

注意点

Webhook配信には NOTIFICATIONS_WEBHOOK_URL を設定します。認証を使う場合は NOTIFICATIONS_WEBHOOK_AUTH も設定できます。独自チャンネルはサーバー側で登録します。

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

含まれるファイル(1)

  • SKILL.md3.8 KB

SKILL.md(原文)

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

Notifications

notify() is the framework's "tell the user something" primitive. Every call persists a row to the inbox (drives the bell UI) and fans out to any registered server-side channels. Channels follow the same pluggable-provider pattern as tracking — register at startup, notify() fans out, errors are isolated.

Use for: agent progress milestones, automation triggers firing, background job completions, critical errors. Don't use for chat replies — those go through the conversation.

Tools

ToolPurpose
notifySend a notification (severity + title + optional body/metadata/channels)
list-notificationsShow recent notifications for the current user

Sending

notify --severity info --title "Booking confirmed" --body "Jane at 3pm"
SeverityWhen
infoFYI / progress / confirmation
warningSomething to look at soon
criticalNeeds immediate attention

Optional: --metadataJson '{"threadId":"abc"}', --channels inbox,webhook (omit to run all registered).

Delivery

notify() always inserts into the notifications table (unless channels explicitly excludes inbox), then fans out to every registered channel in parallel (best-effort; a failing channel doesn't block others). Finally it emits notification.sent on the event bus so automations can chain — e.g. "when a critical notification fires, also page on-call."

Built-in Channels

ChannelHowRequires
inboxINSERT → drives bell UI(always on)
webhookPOST JSON to NOTIFICATIONS_WEBHOOK_URL (+ optional NOTIFICATIONS_WEBHOOK_AUTH); both support ${keys.NAME} + URL allowlists from the ad-hoc-keys systemenv var set

The webhook channel resolves ${keys.NAME} server-side — the raw value never enters the agent context.

Registering a Custom Channel

// server/plugins/notifications-slack.ts
import { registerNotificationChannel } from "@agent-native/core/notifications";

export default () => {
  registerNotificationChannel({
    name: "slack-ops",
    async deliver(input, meta) {
      await fetch(process.env.OPS_SLACK_WEBHOOK!, {
        method: "POST",
        headers: { "Content-Type": "application/json" },
        body: JSON.stringify({ text: `*${input.severity}* — ${input.title}`, owner: meta.owner }),
      });
    },
  });
};

Names are unique — re-registering replaces. deliver() must be best-effort; a thrown error is logged and ignored. Do NOT call notify() from inside a channel (recursion).

HTTP API

Mounted at /_agent-native/notifications/* by core-routes-plugin, all session-scoped:

  • GET /notifications?unread=true&limit=50&before=<iso>
  • GET /notifications/count
  • POST /notifications/:id/read
  • POST /notifications/read-all
  • DELETE /notifications/:id

UI

import { NotificationsBell } from "@agent-native/core/client/notifications";

<NotificationsBell browserNotifications />

Bell icon + unread badge + lazy-loaded dropdown. Pass browserNotifications to also fire system new Notification(...) popups for items that arrive after mount (dedups by id, renders an "Enable" prompt until permission is granted, silently no-ops on denied / unsupported). Styled with shadcn tokens — adapts to the host theme.

Related

  • automations — event-triggered bodies can call notify.
  • secrets — ${keys.NAME} substitution + URL allowlists powering the webhook channel.
  • tracking — analytics; separate concern, don't route through notifications.

レビュー

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

コメント

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

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

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

0 / 1000 文字

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

同じリポジトリのスキル

a2a-assets

無料概要あり

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

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

account-health

無料概要あり

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

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

actions

無料概要あり

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

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

adding-a-feature

無料概要あり

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

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

adhoc-analysis

無料概要あり

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

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

admin-surfaces

無料概要あり

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

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

BuilderIO のスキルをすべて見る

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