SDK
Note:
@putnami/sdkhas been removed. Extensions now use the Go-based extension SDK (tooling/extension-sdk/). Hook utilities (event emission, context parsing) have been moved to@putnami/utils.
What changed
The TypeScript SDK was originally built when extensions were TypeScript-based. Now all extensions (Go, Python, CI, TypeScript) are Go binaries that use the Go extension SDK for the CLI-extension protocol.
The ~12 exports that still had external consumers were moved to @putnami/utils:
Package.json utilities
import { readPackageJson, updatePackageJson, resolvePackageExportPath, clearPackageJsonCache } from '@putnami/utils';Hook protocol (JSONL event emission)
import {
emitLog, emitProgress, emitArtifact, emitSummary, emitError,
createEvent, emitEvent, parseEvent,
type HookContext, type HookResult, HookExitCodes,
} from '@putnami/utils';Hook command runner
import { runHookCommand, standardHookModel, readHookContext } from '@putnami/utils';Project configuration
import { readProjectConfigFile, type ProjectConfig } from '@putnami/utils';For extension authors
See the Extensions guide for how to build extensions using the Go SDK.