AHP Swift Package v0.5.2
[0.5.2] — 2026-07-09
Implements AHP 0.5.2.
Added
- Typed
resource*convenience methods onAHPClient: send wrappers (resourceRead,resourceWrite,resourceList,resourceCopy,resourceDelete,resourceMove,resourceResolve,resourceMkdir,resourceRequest,createResourceWatch) and inbound server-request handling viasetServerRequestHandler(_:)/setResourceRequestHandlers(_:)(newServerRequestHandlertypealias andResourceRequestHandlerstype). Inbound server-initiated requests are answered by the installed handler (stillMethodNotFoundwhen none is set). ToolResultTerminalCompleteContentfor terminal-style completion metadata in tool
results.- Optional
enabledfield on the child customization types
(AgentCustomization,SkillCustomization,PromptCustomization,
RuleCustomization,HookCustomization). disableUserInvocationonSkillCustomization, plusdisableModelInvocation
anddisableUserInvocationonAgentCustomization.- Optional
reviewedfield onChangesetFile. Omitting it (or setting it to
nil) signals that the server does not support the file "review"
functionality. changeset/filesReviewedChangedaction for servers to update thereviewed
flag of one or more changeset files.- Optional
meta(wire_meta) provider-metadata field on every customization
type, moved fromAgentCustomizationup to the shared customization base so
PluginCustomization,ClientPluginCustomization,DirectoryCustomization,
SkillCustomization,PromptCustomization,RuleCustomization,
HookCustomization, andMcpServerCustomizationall carry it. - Optional
serverInfoonInitializeResultandclientInfoon
InitializeParams, each anImplementation(name, optionalversion,
optionaltitle), identifying the implementation and build behind either side
of the handshake. Informational only — MUST NOT be used for feature detection. - Optional
terminalCommandPrefixonInitializeResultfor hosts that support
interpreting!-prefixed user messages as terminal commands. - Optional
versionfield onPluginCustomization(inherited by
ClientPluginCustomization), carrying the plugin's semver sourced from the
Open Plugins manifest. Provenance / display only. session/mcpServerStartRequestedandsession/mcpServerStopRequested
actions for clients to ask the host to start or stop MCP servers; stopping
moves anauthRequiredserver tostoppedso it no longer waits on
authentication.InputRequestResponsePartand theResponsePart.inputRequestcase. The
reducer now records a resolved input request in the active turn's
responsePartsonchatInputCompleted— embedding the resolved
ChatInputRequest(finalanswers) and theresponse(accept,decline,
orcancel) — so the outcome persists after the live request is removed.
Abandoned requests still record nothing (#324).
Changed
- The
session/customizationToggledreducer now toggles any top-level
customization (plugin,directory, or top-levelmcpServer) or an
individual child byid, setting that entry'senabled.