cline-sdk

Comprehensive Cline SDK skill for building AI agents. Covers the direct Agent runtime, ClineCore sessions, custom tools, plugins, events, LLM providers, scheduling, multi-agent teams, and production deployment. Use for any task involving @cline/sdk or its sub-packages.

By cline · 1,992 installs

npx skills add cline/sdk-skill --skill cline-sdk

Source repository · Upstream listing

Cline SDK Skill Consolidated skill for building AI agents with the Cline SDK. Use the decision trees below to find the right entry point and API surface, then load detailed references. Critical Rules Follow these rules in all Cline SDK code: 1. Install with npm install @cline/sdk . The @cline/sdk package re exports @cline/core , not every sub package directly. Core re exports the public SDK surface such as ClineCore , Agent , createAgentRuntime , createTool , built in tool helpers, provider helpers, and the Llms namespace. Import from @cline/agents , @cline/llms , or @cline/shared only when you need APIs that core does not re export, such as AgentRuntime , createAgent , or some low level types. 2. Requires Node.js 22 or later. 3. Use createTool() from @cline/sdk (or @cline/shared ) to define tools. Tool names must be snake case . 4. Prefer returning structured error data from tool execute functions when the agent can recover. Direct Agent converts thrown tool errors into error tool results; ClineCore can also count repeated failed tool turns toward its mistake limit handling. 5. Use lifecycle: { completesRun: true } on tools that should end the agent loop (e.g. a "submit answer" tool). 6. When using ClineCore , always call dispose() when done to clean up resources. 7. The direct Agent and ClineCore have different event systems. For Agent : use agent.subscribe() to get AgentRuntimeEvent types, text streaming is "assistant text delta" , and result text is result.outputText . For ClineCore : use cline.subscribe() to get CoreSessionEvent types. Render user facing text, reasoning, and tool activity from "agent event" payloads ( content start , content update , content end , done ). Treat "chunk" events as raw transport chunks with { stream, chunk, ts } , not as typed text deltas. ClineCore result text is result.text . There is no top level onEvent field on AgentRuntimeConfig ; use agent.subscribe() or hooks.onEvent instead. Do not use "content update" or "content start" with agent.subscribe() ; those are host facing AgentEvent types carried inside ClineCore agent event events. 8. For direct Agent , plugins are simple runtime plugins with setup(context) returning { tools, hooks } . For ClineCore , extensions are AgentPlugin objects with manifest , setup(api, ctx) , and optional hooks . Do not use ClineCore plugin examples inside direct Agent.plugins . 9. Plugin skills are file based , not registered. There is no registerSkill() and no api.registerSkill . A plugin ships skills as SKILL.md files under <package /skills/<name /SKILL.md (package shape required); the host discovers them and surfaces them as /slash commands automatically do not call registerCommand for skills. Plugin MCP servers use api.registerMcpServer() with the "mcp" capability. Configured agents (agent profiles) are YAML files in .cline/agents/ loaded as subagent <name tools when enableSpawnAgent is true. How to Use This Skill Reference File Structure The two main API surfaces ( Agent and ClineCore ) follow a 4 file pattern. Cross cutting concepts are single file guides. Each main API surface in ./references/<api / contains: File Purpose When to Read REFERENCE.md Overview, when to use, quick start Always read first api.md Full API: classes, methods, config, types Writing code patterns.md Common patterns, best practices Implementation guidance gotchas.md Pitfalls, limitations, debugging Troubleshooting Cross cutting concepts in ./references/<concept / have REFERENCE.md as the entry point. Reading Order 1. Start with REFERENCE.md for your chosen API surface 2. Then read additional files relevant to your task: Writing agent code api.md Common patterns patterns.md Creating tools tools/REFERENCE.md Adding plugins/hooks plugins/REFERENCE.md Configuring LLM providers providers/REFERENCE.md Streaming events events/REFERENCE.md Deploying to production production/REFERENCE.md Scheduling agents scheduling/REFERENCE.md Multi agent orchestration multi agent/REFERENCE.md Debugging gotchas.md Example Paths Quick Decision Trees "Which API surface should I use?" "I need to create tools" "I need to handle events" "I need to configure a model provider" "I need plugins or hooks" "I need multi agent coordination" "I need scheduling or automation" "I need to go to production" Troubleshooting Index Agent loop not stopping tools/REFERENCE.md (completion tools) Tool errors crashing the agent agent/gotchas.md or clinecore/gotchas.md Provider auth failures providers/REFERENCE.md Session not persisting clinecore/gotchas.md Token usage too high production/REFERENCE.md (cost control) Hub connection issues clinecore/gotchas.md Plugin not loading plugins/REFERENCE.md Events not firing events/REFERENCE.md Product Index API Surfaces API Entry File Description Agent ./references/agent/REFERENCE.md Lightweight in memory agent loop ClineCore ./references/clinecore/REFERENCE.md Full runtime with sessions, persistence, built in tools Cross Cutting Concepts Concept Entry File Description Tools ./references/tools/REFERENCE.md Built in and custom tool creation Plugins ./references/plugins/REFERENCE.md Extension system with hooks, MCP servers, and bundled skills Events ./references/events/REFERENCE.md Real time streaming events Providers ./references/providers/REFERENCE.md LLM provider configuration Production ./references/production/REFERENCE.md Deployment, security, observability Scheduling ./references/scheduling/REFERENCE.md Cron jobs and automation Multi Agent ./references/multi agent/REFERENCE.md Teams, sub agents, and configured agent profiles Package Map Package Purpose @cline/sdk User facing alias for @cline/core ; install this first @cline/core Sessions, persistence, built in tools, config, hub, and selected re exports @cline/agents Browser compatible AgentRuntime class and lower level factories @cline/llms LLM provider gateway @cline/shared Types, tool helpers, hook engine Resources Repository: https://github.com/cline/cline SDK Source: https://github.com/cline/cline/tree/main/sdk Documentation: https://docs.cline.bot/sdk/overview Discord: https://discord.gg/cline