# Changelog All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] ### Added - Per-policy `executeBinding` (`snapshot` | `live`) on `policy()`; `gateToolPoliciesAtExecute` for AI SDK execute boundary. - `ToolRuntimeContext.resolvedPolicies`, `policyResults`, `policySnapshotMode` for shared evaluation cache. - [AI SDK policies](docs/ai-sdk-policies.md) guide. - OSS docs: `CONTRIBUTING.md`, `SECURITY.md`, `CODE_OF_CONDUCT.md`, [hashing](docs/hashing.md), [standard-schema](docs/standard-schema.md), [host-helpers](docs/host-helpers.md). - Capability diff CLI (`bun run capability-diff`) and `formatCapabilityDiffReport` / `buildCapabilityDiffJsonReport` exports. - Rich diff example: `bun run example:diff` (writes `examples/output/diff/*.json`, demonstrates runtime/policy, invocation, and static drift). ### Changed - v0.1 OSS publish metadata: `LICENSE` + `repository`/`files` on publishable packages; expanded `capabilities-spec` README (logical Smithy services); `@khoralabs/agent-capabilities-ai-sdk` README, `example:evaluate`, npm `publishConfig.tag: beta`. - **Breaking:** Session hook `onAfterAgent` renamed to `onBeforeContext` (runs after `onStart`, before merged session `context`). - `@khoralabs/agent-capabilities-ai-sdk` uses `gateToolPoliciesAtExecute` instead of unconditional re-evaluation. - Tool static hash includes `policyBindings` (id + executeBinding). ## [0.1.0] - 2026-06-04 ### Added - `@khoralabs/agent-capabilities`: composable toolkits, policy gates, three-layer capability fingerprints (`staticHash`, `runtimeHash`, optional `invocationHash`), `CapabilityLink`, snapshot wire types, and one-turn capture (`captureAgentSnapshotEnvelope`, `captureAgentRuntimeSnapshot`). - `@khoralabs/agent-capabilities-spec`: Smithy models under `agent.capabilities` for interchange and persistence contracts. - `@khoralabs/agent-capabilities-ai-sdk`: Vercel AI SDK adapter for evaluated `ToolSpec` values. - `CapabilityLink.toolRefs` populated by `createCapabilityLink` for single-row persistence. - `InvocationContextRecommended` type (TS + Smithy) and [invocation context conventions](docs/invocation-context.md). - [Envelope schema versioning policy](docs/schema-versions.md) and `AGENT_SNAPSHOT_ENVELOPE_VERSION` (`"1"`). - `AgentCapabilitiesPersistence` interface, `createMemoryAgentCapabilitiesPersistence` (`:memory:`), `recordTurnAttribution`, and Smithy `GetLatestRegisteredAgentForAgent`. - `createAgentRegistry({ persistence })` composes session host with default in-memory persistence; `register` is async and upserts registration rows. ### Schema versioning - Initial envelope `schemaVersion` is `"1"` (see [docs/schema-versions.md](docs/schema-versions.md)). - **Patch** releases may add optional fields without bumping `schemaVersion`. - **Minor** releases bump `AGENT_SNAPSHOT_ENVELOPE_VERSION` when envelope or nested wire shapes change incompatibly. ### Changed - Rebranded from agent-identity to agent-capabilities across APIs and packages. - Removed built-in `pino` logging; telemetry via pipeline and session hooks.