@sctg/cline-shared
v3.89.2-beta.20260613190204
Published
Shared utilities, types, and schemas for Cline packages
Readme
[experimental] @sctg/cline-shared
Package-level docs are centralized:
- Overview:
packages/README.md - Architecture and interactions:
ARCHITECTURE.md
@sctg/cline-shared owns shared cross-package primitives (session common types/utilities).
Node-only filesystem path resolvers live under the storage subpath export:
@sctg/cline-shared/storage- examples:
resolveClineDataDir,resolveDbDataDir,resolveSessionDataDir,resolveTeamDataDir
It also exports cross-client logging contracts, including BasicLogger, so
runtime, SDK, and host applications can share a single logger type.
Session config primitives are also centralized here so hosts/runtimes can compose one base shape instead of redefining similar fields repeatedly:
AgentModeSessionPromptConfigSessionWorkspaceConfigSessionExecutionConfig(includes canonicalToolPolicymap shape)
It now also exports hook session context primitives used across agents/core/CLI:
HookSessionContextresolveHookSessionContext(...)resolveRootSessionId(...)resolveHookLogPath(...)
It also exports cross-client runtime payload DTOs used by multiple hosts
(@sctg/cline-cli, @sctg/cline-code) so request/response contracts are not duplicated
outside transport wiring:
- chat runtime payloads (
ChatStartSessionRequest,ChatRunTurnRequest,ChatTurnResult) - provider runtime payloads (
ProviderActionRequest,ProviderCatalogResponse,ProviderOAuthLoginResponse) - Cline account action payloads (
ClineAccountActionRequest) - provider action requests include provider catalog/model operations plus provider add/save operations for settings hosts
- provider action payloads now expose granular request/type contracts for reuse:
AddProviderActionRequest,SaveProviderSettingsActionRequest,ProviderCapability, andOAuthProviderId
Chat runtime payload notes:
ChatStartSessionRequestsupportsinitialMessages, optionaltoolPolicies, optionalrulesfor default system prompt assembly, and optionalloggerruntime config (RuntimeLoggerConfig) so hosts can pass serialized logger settings across transport boundaries.RuntimeLoggerConfig.bindingslets hosts attach stable context fields (for exampleclientId,clientType,clientApp) to all runtime log records.
