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

agent-native-toolkit

アプリ共通のナビゲーションや設定、共有、エージェント連携などをどこに実装するか整理し、再利用できるUIとアプリ固有の機能を設計する指針です。

原文原文の説明を見る

Inventory and ownership rules for shared Agent-Native workspace UI. Use before building app chrome, settings, navigation, sharing, collaboration, setup, history, comments, chat rails, agent UX, or repeated workspace behavior.

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

実行スコア 未検証

インストール方法を見る

こんなときに便利

  • 共通UIとアプリ固有機能の配置を決めたいとき
  • 設定画面や接続フローを設計したいとき
  • エージェントサイドバーとの連携を設計したいとき
  • 重複したワークスペース機能を共通化したいとき

日本語での紹介

できること

アプリの画面枠、設定、ナビゲーション、共有、共同作業、履歴、コメント、エージェント向けUIなどについて、共通機能として再利用する部分と、アプリ固有の機能として持つ部分を整理します。複数のアプリで同じように使う機能や、権限・秘密情報の管理など統制が必要な機能は共有ツールキット側に置き、製品固有のデータや業務手順はアプリ側に残す、という判断基準を示します。設定ページの配置、エージェントサイドバーへの受け渡し、デザインシステムの境界、外部サービス接続の事前確認、実装時のチェック項目も含みます。

こんなときに便利

新しいアプリを作る際に共通UIを独自実装すべきか迷うときや、複数アプリで重複する機能を共通化するときに役立ちます。設定・共有・エージェント連携の設計方針を揃えたいチームにも向いています。

使い方の例

  • 「このナビゲーションは共通ツールキットに置くべきか整理してください」
  • 「外部サービス接続の設定画面を作る前に、既存の共通機能を確認してください」
  • 「このアプリのエージェントサイドバーとの連携方針を点検してください」

注意点

原文では @agent-native/toolkit や @agent-native/core などのパッケージ、関連スキル、検索・確認用アクションを前提としています。実装にあたっては、利用中のパッケージのドキュメントと公開エクスポートを確認します。

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

含まれるファイル(1)

  • SKILL.md14.4 KB

SKILL.md(原文)

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

Agent-Native Toolkit

Use this skill when deciding whether app chrome, settings, collaboration, sharing, navigation, organization, setup, history, comments, or agent UX should be built app-locally or moved into reusable framework/toolkit pieces.

Core Rule

Apps own domain models, domain actions, and product-specific workflows. The framework and @agent-native/toolkit own repeated workspace behavior users expect to work the same everywhere.

Move behavior into shared toolkit primitives when it is:

  • workspace-wide, such as settings, nav, search, org membership, or setup
  • agent-visible, such as context, actions, run progress, or proof-of-done
  • governed, such as secrets, permissions, sharing, audit, or billing
  • repeated by two or more apps
  • not tied to one domain model

Keep behavior app-local when the abstraction would hide important domain language or make a simple app-specific workflow harder to understand.

Agent Surface Contract

The repeated app shell has two distinct navigation surfaces:

  • The left rail owns domain destinations and chat history when the app has a full-page chat route. Do not label a domain workflow as Chat just because the app was scaffolded from the chat template.
  • Settings is not a rail item. It opens from the account menu (OrgSwitcher in the sidebar footer) and from ⌘, (Ctrl+, elsewhere), which AppProviders already binds. Keep the /settings route; don't add a Settings entry to items, secondaryItems, or the footer.
  • The right AgentSidebar owns contextual agent work. Domain buttons that call sendToAgentChat should open it (openSidebar: true) so the user can see, steer, and review the agent without losing the page they were using.
  • Keep / or /chat/* as the full-page chat surface when the starter provides one. Put domain workflows on named routes and wire the shell's route checks, navigation labels, and handoffs to those routes together.
  • Use familiar message or neutral action icons for agent affordances. Never use sparkle, wand, magic, or robot icons as an AI label; the copy should carry the meaning.
  • Give the right rail a quiet visual boundary with a subtle surface shift, divider, or both. The domain page and AgentSidebar should not collapse into a single undifferentiated background.
  • Any button labeled as agent work must use sendToAgentChat with bounded context and openSidebar: true; local deterministic analysis should be labeled as local, preview, or analyze. For original/generated review, stack the source above the result by default and use side-by-side only for short, highly scannable content.
  • Deterministic implementation does not make an AI-shaped experience deterministic. If the user expects research, analysis, generation, recommendation, synthesis, visible progress, or steering, route the button to the AgentSidebar and let the agent call focused actions. Keep revisions in the same thread instead of adding a second freeform prompt box.
  • Standalone apps with AgentSidebar must resolve one assistant-ui runtime context. Match direct assistant-ui pins to the installed core/toolkit peer graph, use Vite dedupe/aliases when linked dependencies can split contexts, and verify an AI handoff produces no stale-index console error.

Contextual agent UI is not a reason to expose every option at once. Start with the domain task's primary action, reveal review or configuration only when the current state needs it, and let the sidebar carry conversational depth.

Visual Direction And Workspace Variety

Shared workspace behavior should be consistent without forcing every app into the same visual skin. Keep shell and component tokens semantic, then let each app declare a named direction in DESIGN.md before styling. A new app should choose its palette family and composition from the product context, compare nearby apps, and avoid inheriting their accent by default. Use the frontend-design visual-direction reference for mode, palette, type, density, shape, anti-references, and the distill / typeset / colorize / layout / polish / audit review vocabulary.

Do not make warm beige plus terracotta the workspace fallback. Preserve a workspace-level brand when one exists; otherwise keep shared chrome neutral and allow app-owned accents to distinguish products while retaining accessible semantic states and the shared AgentSidebar contract.

Discover Before Building

Before creating an app-local version of repeated workspace or agent UI:

  1. Check the reusable kits below and the installed package documentation.
  2. Search installed public components and source with docs-search and source-search.
  3. Run agent-native eject --list to see the version-matched units published by the packages installed in this app.
  4. Read customizing-agent-native and configure, compose, or eject the smallest unit instead of recreating shared behavior from memory.

Use public package exports at runtime. Published source and ejection manifests are discovery and ownership-transfer mechanisms, not private runtime APIs.

Design-System Boundary

Every app keeps an explicit design-system seam in app/design-system.ts using defineDesignSystem from @agent-native/toolkit/design-system, and supplies it to ToolkitProvider. The semantic contract contains:

  • nine leaf components: ActionButton, IconButton, TextField, TextArea, Spinner, Skeleton, Status, Surface, and Avatar
  • eight behavior components: Tooltip, Menu, Popover, Dialog, Picker, Checkbox, Switch, and Tabs

These are semantic contracts, not styling contracts. An adapter may use Tailwind/shadcn, MUI-style theme providers, React Aria, CSS modules, CSS-in-JS, or another React design system. Do not assume CVA, utility classes, or even a className; behavior adapters may supply their overlay and focus implementation wholesale while honoring portal, focus-restoration, keyboard, dismissal, ARIA, and z-index interoperability.

Pages, routes, and domain components import ordinary controls through the app's local adapter layer, usually @/components/ui/*. They must not import @agent-native/toolkit/ui/* directly. Toolkit feature exports are still the right home for shared workspace behavior; their presentation flows through the registered semantic components, feature controller, and product-level slots.

Customer adapter packages are normal npm packages imported explicitly by the app. Never auto-detect them or load React components from JSON. Run the adapter against @agent-native/toolkit/conformance in customer CI before adopting it.

Settings Direction

Durable settings belong in Settings. The agent sidebar should not become a second settings app; it can show contextual quick controls and deep links. Settings has the same groups in every app, and page ids are stable URL segments (/settings/<page>/<sub>):

  • Account: profile, preferences, security
  • Connections: integrations (integrations/builder), api-keys
  • Agent: model, instructions, memory, skills, files, sub-agents
  • Organization: org, members, usage, and for owners and admins auth, apps, infra, audit
  • The app's group: app (areas at app/<id>), notifications, automations, channels (channels/<platform>), mcp, creative-context
  • Footer: labs, whats-new

Link with buildSettingsRoute(page, sub?, { anchor? }); old tab and section ids resolve through the redirect table in packages/core/src/navigation/settings-redirects.ts, the only place that maps them. Account › Profile is the canonical profile surface (get-user-profile, update-user-profile); don't build an app-local profile page.

When adding a new API key, OAuth grant, provider connection, model selector, app preference, notification preference, or usage/billing surface, find the page that owns that kind of setting first: provider keys go through the one provider dialog on Model, other keys on API keys, channels on Channels, and app-only preferences in the app's group. Only add sidebar UI when it is needed in the moment of agent use.

Integration Setup Preflight

Before building any setup, settings, credential, OAuth, or connection surface, search the workspace/provider connection catalog first. If the provider already has a reusable connection, use its catalog, app grant, and scoped credential resolver rather than registering a parallel secret. Only then classify fields that still need app-local setup by lifecycle and scope:

NeedDefault primitive
Deploy- or app-level configurationRuntime configuration or deployment env vars
Existing workspace/provider connectionWorkspace-connection catalog/grant plus resolveWorkspaceConnectionCredential(s)ForApp
App-local API/service key with no reusable connectionregisterRequiredSecret({ kind: "api-key" }) and the vault
Authorization-code or refresh-token flowkind: "oauth" with @agent-native/core/oauth-tokens
Account, customer, or other non-secret identifiersScoped connection metadata or app data
Provider-specific prerequisites, sequencing, or healthA thin app-local guide over the shared primitives

Do not register every provider field as a generic secret, mark every field as required, or create a second credential-management surface. One logical connection should normally produce one onboarding outcome. A custom setup page is appropriate only when it adds domain-specific guidance or readiness checks; it should link to or call the shared settings, OAuth, and action surfaces rather than duplicating their storage or transport.

Reusable Kits

  • Settings kit: one searchable Settings page with Account, Connections, Agent, and Organization groups plus a group for the app's own settings. The index is built from page declarations; give every row a search entry whose anchor is its SettingsRow id so users find settings by name.
  • Collaboration kit: Yjs docs, presence, agent presence, live cursors, remote selections, recent edit highlights, real-time sync indicators, and undo/redo grouping.
  • Sharing kit: private/workspace/org/public-link access, invites, roles, expirations, agent-readable links, and resource registration.
  • Navigation and command kit: app shell, side nav, breadcrumbs, app switcher, command palette entries, recent resources, pinned resources, and global search.
  • Organization kit: folders, tags, favorites, archive, trash, ownership, membership, and common resource metadata.
  • Setup and connections kit: declarative setup requirements, model readiness, missing-secret states, OAuth grants, and provider connection health.
  • Agent UX kit: sidebar, composer, staged context, mentions, voice, human approval, generative UI, progress, and screen-state exposure.
  • Custom block kit: optional extension creation, viewer chrome, slots, and promotion affordances. Apps must opt in; Core keeps the sandbox, SQL storage, access checks, and compatibility routes, while Toolkit owns reusable adoption UI. Analytics may expose this as one-off Custom Blocks; durable behavior should be promoted to app code.
  • Chat history kit: presentational chat lists and recent-chat rails belong in Toolkit; Core keeps thread persistence, agent execution, transport, and page-to-sidebar handoff. Use Toolkit's ChatHistoryRail for the standard five-item sidebar preview and a footer row with New chat followed by an ellipsis disclosure up to fifteen. Apps inject routing, labels, and domain actions.
  • Data grid kit: provider-agnostic spreadsheet mechanics belong in @agent-native/toolkit/data-grid. Apps provide rows, typed columns, editor slots, selection and width state, persistence callbacks, and product-level row/body slots. Keep database models, access checks, grouping, drag/drop, and domain actions in the app adapter.
  • Agent page kit: the full-page /agent surface (AgentTabsPage from @agent-native/core/client) with Context, Files, Connections, Jobs, and Access tabs plus a Personal/Organization scope toggle. The canonical home for context transparency, MCP servers, A2A remote agents, recurring jobs/automations, and external-client connect flows. See the agent-page skill.
  • History and recovery kit: audit log, activity feed, version history, checkpoints, undo, redo, restore, and proof-of-done.
  • Comments and review kit: anchored comments, pins, mentions, review requests, resolved threads, agent follow-up tasks, and notifications.
  • Workflow and observability kit: notifications, approvals, scheduled work, background runs, recurring jobs, traces, evals, feedback, and run timelines.

Implementation Checklist

When adding or refactoring one of these areas:

  1. Search existing framework and template code for duplicated UI or actions.
  2. Decide the shared contract: data shape, action API, feature-level headless controller, default view, semantic components, and product-level render slots.
  3. Keep shared data provider-agnostic and scoped by auth/sharing rules.
  4. Expose the same capability to the UI and agent through actions or documented client helpers.
  5. Register app-specific labels, routes, resource adapters, and settings panels instead of hardcoding app names in core UI.
  6. Update docs and relevant skills so future apps discover the shared path.
  7. Keep the component easy to adopt piecemeal: expose props/slots first and ship readable source plus a complete ejection unit so apps can take ownership of the smallest feature when needed. See customizing-agent-native for the configure → compose → eject → propose seam ladder.
  8. Keep one controller as the source of truth for the default and custom render paths. A custom design must not fork actions, analytics, async state, or accessibility behavior.
  9. Verify the default adapter and at least one non-Tailwind adapter with the conformance kit, including focus and portal stacking across mixed overlay implementations.

Related Skills

Read these alongside this skill when the work touches the specific area:

  • sharing
  • real-time-collab
  • real-time-sync
  • client-side-routing
  • context-awareness
  • onboarding
  • secrets
  • audit-log
  • observability
  • frontend-design

レビュー

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

コメント

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

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

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

0 / 1000 文字

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

同じリポジトリのスキル

a2a-assets

無料概要あり

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

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

account-health

無料概要あり

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

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

actions

無料概要あり

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

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

adding-a-feature

無料概要あり

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

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

adhoc-analysis

無料概要あり

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

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

admin-surfaces

無料概要あり

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

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

BuilderIO のスキルをすべて見る

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