Back to Cline

[experimental] @cline/core

sdk/packages/core/README.md

3.83.03.3 KB
Original Source

[experimental] @cline/core

@cline/core is the stateful orchestration layer of the Cline SDK. It connects the agent runtime, provider settings, storage, default tools, and session lifecycle into a host-ready runtime.

What You Get

  • session lifecycle and orchestration primitives
  • provider settings and account services
  • default runtime tools and MCP integration
  • storage-backed session and team state helpers
  • host-facing Node helpers through @cline/core

Installation

bash
npm install @cline/core

Entry Points

  • @cline/core: core contracts, shared utilities, and Node/server helpers for building hosts and runtimes

Typical Usage

Most host apps should start with @cline/core.

ts
import { ClineCore } from "@cline/core";

const cline = await ClineCore.create({});

const result = await cline.start({
	config: {
		providerId: "anthropic",
		modelId: "claude-sonnet-4-6",
		apiKey: process.env.ANTHROPIC_API_KEY ?? "",
		cwd: process.cwd(),
		mode: "act",
		enableTools: true,
		enableSpawnAgent: false,
		enableAgentTeams: false,
		systemPrompt: "You are a concise assistant.",
	},
	prompt: "Summarize this project.",
	interactive: false,
});

console.log(result.result?.text);
await cline.dispose();

Session Bootstrap

ClineCore.create(...) also accepts prepare(input).

Use it when a host needs to prepare workspace-scoped runtime state before each session starts, then apply watcher/extensions/telemetry inputs through explicit localRuntime bootstrap fields without widening the shared host contract.

Main APIs

Runtime and Sessions

Use @cline/core for host-facing runtime assembly:

  • ClineCore.create(...)
  • createRuntimeHost(...)
  • LocalRuntimeHost
  • HubRuntimeHost and RemoteRuntimeHost
  • DefaultRuntimeBuilder

ClineCore is the app-facing session API. The lower-level RuntimeHost boundary uses runtime-primitive names such as startSession and runTurn so transport adapters stay distinct from product methods like start and send. Service-style operations such as pending prompt edits, accumulated usage lookup, and active-session model switching are exposed through ClineCore when the selected transport supports them rather than being part of the minimal host primitive vocabulary.

Default Tools

@cline/core owns the built-in host tools and executors:

  • createBuiltinTools(...)
  • createDefaultTools(...)
  • createDefaultExecutors(...)

Storage and Settings

The package also exports storage and settings helpers such as:

  • ProviderSettingsManager
  • CoreSettingsService and createCoreSettingsService
  • MCP settings helpers such as setMcpServerDisabled
  • SqliteTeamStore
  • SQLite-backed local session stores and artifacts through @cline/core
  • @cline/agents: stateless agent loop and tool primitives
  • @cline/llms: provider/model configuration and handlers

More Examples