cline-sdk について
Cline SDK Skillは、Cline SDKでAIエージェントを構築する開発者向けのリファレンススキルです。軽量なAgentとClineCoreの選択を案内し、ツール、プロバイダー、イベント、プラグイン、スケジューリング、マルチエージェント構成を扱います。
主な機能
- 01AgentとClineCoreのAPIを選択
- 02カスタムツールと組み込みツールの定義
- 03LLMプロバイダーの設定
- 04ストリーミングイベントとフックの処理
- 05プラグインとスキルによる拡張
- 06スケジュールとマルチエージェントのワークフロー構築
活用シーン
- 01カスタムツールを使うインメモリエージェントの構築
- 02永続セッションを備えたエージェントランタイムの作成
- 03プラグイン経由でMCPサーバーを追加
- 04エージェントタスクの調整やスケジュール
MCP 対応
このスキルでは、ClineプラグインでMCPサーバーを登録し、そのツールをエージェントに公開する方法を説明します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ cline/ sdk-skill --skill cline-sdkインストール後、Claude Code で/cline-sdkを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/agent/api.mdgotchas.mdpatterns.mdREFERENCE.mdreferences/clinecore/api.mdgotchas.mdpatterns.mdREFERENCE.mdreferences/events/REFERENCE.mdreferences/multi-agent/REFERENCE.mdreferences/plugins/REFERENCE.mdreferences/production/REFERENCE.mdreferences/providers/REFERENCE.mdreferences/scheduling/REFERENCE.mdreferences/tools/REFERENCE.md詳細
Cline SDK スキル
Cline SDK を使用して AI エージェントを構築するための統合スキルです。以下の判断ツリーから適切な開始点と API サーフェスを見つけ、詳細なリファレンスを参照してください。
重要なルール
Cline SDK のコードでは、以下のルールに従ってください。
npm install @cline/sdkを使用してインストールしてください。@cline/sdkパッケージは@cline/coreを再エクスポートしますが、すべてのサブパッケージを直接再エクスポートするわけではありません。Core はClineCore、Agent、createAgentRuntime、createTool、組み込みツールヘルパー、プロバイダーヘルパー、Llms名前空間など、公開 SDK サーフェスを再エクスポートします。Core が再エクスポートしない API(AgentRuntime、createAgent、一部の低レベル型など)が必要な場合に限り、@cline/agents、@cline/llms、または@cline/sharedからインポートしてください。- Node.js 22 以降が必要です。
- ツールの定義には、
@cline/sdk(または@cline/shared)のcreateTool()を使用してください。ツール名はsnake_caseにする必要があります。 - エージェントが復旧できる場合は、ツールの
execute関数から構造化されたエラーデータを返すことを優先してください。直接使用するAgentは、スローされたツールエラーをエラーツール結果に変換します。また、ClineCore は、繰り返し発生する失敗したツールターンを、エラー上限の処理に加算することもできます。 - エージェントループを終了するツール(「回答を送信」ツールなど)には、
lifecycle: { completesRun: true }を使用してください。 ClineCoreを使用する場合は、リソースをクリーンアップするため、処理が終わったら必ずdispose()を呼び出してください。- 直接使用する
AgentとClineCoreでは、イベントシステムが異なります。Agentでは、agent.subscribe()を使用してAgentRuntimeEvent型を取得します。テキストのストリーミングイベントは"assistant-text-delta"で、結果のテキストはresult.outputTextです。ClineCoreでは、cline.subscribe()を使用してCoreSessionEvent型を取得します。ユーザー向けテキスト、推論、ツールの動作は、"agent_event"ペイロード(content_start、content_update、content_end、done)から表示してください。"chunk"イベントは、型付きテキストデルタではなく、{ stream, chunk, ts }を含む未加工のトランスポートチャンクとして扱ってください。ClineCoreの結果テキストはresult.textです。AgentRuntimeConfigにトップレベルのonEventフィールドはありません。代わりにagent.subscribe()またはhooks.onEventを使用してください。agent.subscribe()で"content_update"や"content_start"を使用しないでください。これらは、ClineCore のagent_eventイベント内で伝達される、ホスト向けのAgentEvent型です。 - 直接使用する
Agentでは、pluginsはsetup(context)が{ tools, hooks }を返すシンプルなランタイムプラグインです。ClineCoreでは、extensionsはmanifest、setup(api, ctx)、および任意のhooksを持つAgentPluginオブジェクトです。直接使用するAgent.pluginsに ClineCore プラグインの例を使用しないでください。 - プラグインのスキルは登録するのではなく、ファイルベースです。
registerSkill()もapi.registerSkillもありません。プラグインには、<package>/skills/<name>/SKILL.mdの下にSKILL.mdファイルとしてスキルを含める必要があります(必須のパッケージ構成です)。ホストがこれらを検出し、/slash-commandsとして自動的に表示するため、スキルに対してregisterCommandを呼び出さないでください。プラグインの MCP サーバーには、"mcp"機能を指定してapi.registerMcpServer()を使用してください。設定済みエージェント(エージェントプロファイル)は.cline/agents/内の YAML ファイルであり、enableSpawnAgentがtrueの場合、subagent_<name>ツールとして読み込まれます。
このスキルの使い方
リファレンスファイルの構成
2 つの主要な API サーフェス(Agent と ClineCore)は、4 ファイル構成になっています。複数の領域にまたがる概念は、単一ファイルのガイドにまとめられています。
./references/<api>/ にある各主要 API サーフェスには、以下のファイルが含まれています。
| ファイル | 目的 | 読むタイミング |
|---|---|---|
REFERENCE.md | 概要、使用する場面、クイックスタート | 必ず最初に読む |
api.md | API 全般:クラス、メソッド、設定、型 | コードを書くとき |
patterns.md | 一般的なパターン、ベストプラクティス | 実装の参考 |
gotchas.md | 落とし穴、制限事項、デバッグ | 問題のトラブルシューティング |
./references/<concept>/ にある複数の領域にまたがる概念では、REFERENCE.md が参照の開始点です。
読む順序
- 選択した API サーフェスの
REFERENCE.mdから読み始めます - 次に、タスクに関連するファイルを読みます:
- エージェントコードの作成 ->
api.md - 一般的なパターン ->
patterns.md - ツールの作成 ->
tools/REFERENCE.md - プラグイン/フックの追加 ->
plugins/REFERENCE.md - LLM プロバイダーの設定 ->
providers/REFERENCE.md - ストリーミングイベント ->
events/REFERENCE.md - 本番環境へのデプロイ ->
production/REFERENCE.md - エージェントのスケジュール設定 ->
scheduling/REFERENCE.md - マルチエージェントのオーケストレーション ->
multi-agent/REFERENCE.md - デバッグ ->
gotchas.md
- エージェントコードの作成 ->
使用例へのパス
./references/agent/REFERENCE.md # Start here for lightweight agents
./references/clinecore/REFERENCE.md # Start here for full runtime
./references/agent/api.md # Agent class, config, methods
./references/tools/REFERENCE.md # Creating and using tools
./references/plugins/REFERENCE.md # Plugin system
./references/providers/REFERENCE.md # LLM provider configuration
クイック判断ツリー
「どの API サーフェスを使えばよいですか?」
Which API?
+-- I want a simple, in-memory agent with custom tools
| +-- agent/ (Agent class from @cline/agents, re-exported by @cline/sdk)
+-- I need session persistence, built-in tools, config discovery
| +-- clinecore/ (ClineCore from @cline/core)
+-- I want built-in file/shell/search/web tools
| +-- clinecore/ (has built-in tools; Agent does not)
+-- I want scheduled or recurring agents
| +-- clinecore/ (automation API)
+-- I need multi-process or multi-client session sharing
| +-- clinecore/ (hub-backed runtime)
+-- I'm building a browser-compatible agent
| +-- agent/ (no Node.js dependencies)
「ツールを作成する必要があります」
Tools?
+-- Define a custom tool with schema -> tools/REFERENCE.md
+-- Use built-in tools (read_files, search_codebase, run_commands, etc.) -> tools/REFERENCE.md (built-in section)
+-- Control tool approval/policies -> tools/REFERENCE.md (policies section)
+-- Tool that ends the agent loop -> tools/REFERENCE.md (completion tools)
+-- Package tools as a reusable plugin -> plugins/REFERENCE.md
「イベントを処理する必要があります」
Events?
+-- Stream text/reasoning in real time -> events/REFERENCE.md
+-- Track token usage and costs -> events/REFERENCE.md
+-- Watch tool calls -> events/REFERENCE.md
+-- Detect completion/errors -> events/REFERENCE.md
+-- Hook into lifecycle stages -> plugins/REFERENCE.md
「モデルプロバイダーを設定する必要があります」
Providers?
+-- Anthropic (Claude) -> providers/REFERENCE.md
+-- OpenAI (GPT) -> providers/REFERENCE.md
+-- Google (Gemini/Vertex) -> providers/REFERENCE.md
+-- AWS Bedrock -> providers/REFERENCE.md
+-- Mistral -> providers/REFERENCE.md
+-- OpenAI-compatible (vLLM, Together, etc.) -> providers/REFERENCE.md
+-- Custom/self-hosted provider -> providers/REFERENCE.md
「プラグインまたはフックが必要です」
Plugins?
+-- Package tools + hooks together -> plugins/REFERENCE.md
+-- Observe tool calls (logging, metrics) -> plugins/REFERENCE.md
+-- Intercept lifecycle events -> plugins/REFERENCE.md
+-- Add system prompt rules -> plugins/REFERENCE.md
+-- Expose an MCP server's tools -> plugins/REFERENCE.md (MCP servers)
+-- Bundle reusable skills (SKILL.md, auto slash commands) -> plugins/REFERENCE.md (bundled skills)
+-- Distribute via npm/git -> plugins/REFERENCE.md
「マルチエージェントの連携が必要です」
Multi-agent?
+-- Run one-off delegated sub-agents -> multi-agent/REFERENCE.md (sub-agents)
+-- Predefined named sub-agents from files -> multi-agent/REFERENCE.md (configured agents)
+-- Persistent cross-session teams -> multi-agent/REFERENCE.md (teams)
+-- Parent-child delegation -> multi-agent/REFERENCE.md (sub-agents)
+-- Peer-to-peer task board -> multi-agent/REFERENCE.md (teams)
「スケジュール設定または自動化が必要です」
Scheduling?
+-- Recurring cron jobs -> scheduling/REFERENCE.md
+-- One-off scheduled tasks -> scheduling/REFERENCE.md
+-- Event-driven triggers -> scheduling/REFERENCE.md
+-- CLI schedule management -> scheduling/REFERENCE.md
「本番環境に移行する必要があります」
Production?
+-- Error handling and status checks -> production/REFERENCE.md
+-- Cost control and token limits -> production/REFERENCE.md
+-- Observability (OpenTelemetry) -> production/REFERENCE.md
+-- Security and sandboxing -> production/REFERENCE.md
+-- Deployment patterns -> production/REFERENCE.md
トラブルシューティング索引
- エージェントループが停止しない ->
tools/REFERENCE.md(完了ツール) - ツールエラーによってエージェントがクラッシュする ->
agent/gotchas.mdまたはclinecore/gotchas.md - プロバイダーの認証に失敗する ->
providers/REFERENCE.md - セッションが永続化されない ->
clinecore/gotchas.md - トークン使用量が多すぎる ->
production/REFERENCE.md(コスト管理) - Hub の接続に関する問題 ->
clinecore/gotchas.md - プラグインが読み込まれない ->
plugins/REFERENCE.md - イベントが発火しない ->
events/REFERENCE.md
製品索引
API サーフェス
| API | エントリーファイル | 説明 |
|---|---|---|
| Agent | ./references/agent/REFERENCE.md | 軽量なインメモリー型エージェントループ |
| ClineCore | ./references/clinecore/REFERENCE.md | セッション、永続化、組み込みツールを備えたフルランタイム |
横断的な概念
| 概念 | エントリーファイル | 説明 |
|---|---|---|
| ツール | ./references/tools/REFERENCE.md | 組み込みツールとカスタムツールの作成 |
| プラグイン | ./references/plugins/REFERENCE.md | フック、MCP サーバー、バンドルされたスキルを備えた拡張システム |
| イベント | ./references/events/REFERENCE.md | リアルタイムのストリーミングイベント |
| プロバイダー | ./references/providers/REFERENCE.md | LLM プロバイダーの設定 |
| 本番環境 | ./references/production/REFERENCE.md | デプロイ、セキュリティ、可観測性 |
| スケジュール設定 | ./references/scheduling/REFERENCE.md | Cron ジョブと自動化 |
| マルチエージェント | ./references/multi-agent/REFERENCE.md | チーム、サブエージェント、設定済みエージェントプロファイル |
パッケージ一覧
| パッケージ | 用途 |
|---|---|
@cline/sdk | @cline/core のユーザー向けエイリアスです。最初にインストールしてください |
@cline/core | セッション、永続化、組み込みツール、設定、ハブ、選択された再エクスポート |
@cline/agents | ブラウザー互換の AgentRuntime クラスと低レベルファクトリー |
@cline/llms | LLM プロバイダーゲートウェイ |
@cline/shared | 型、ツールヘルパー、フックエンジン |
リソース
リポジトリ:https://github.com/cline/cline SDK ソース:https://github.com/cline/cline/tree/main/sdk ドキュメント:https://docs.cline.bot/sdk/overview Discord:https://discord.gg/cline