chore: version packages#306
Merged
Merged
Conversation
Deploying herdctl with
|
| Latest commit: |
7c679e3
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://5a7456e4.herdctl.pages.dev |
| Branch Preview URL: | https://changeset-release-main.herdctl.pages.dev |
b05fd62 to
7c679e3
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
@herdctl/core@5.17.0
Minor Changes
#304
4eec7f3Thanks @edspencer! - Bump@anthropic-ai/claude-agent-sdkfrom^0.1.0(resolved 0.1.77) to^0.3.0(resolves 0.3.205).The pinned
^0.1.0range could not cross a0.xminor, freezing herdctl on astale SDK line whose bundled JS harness lacks the current agentic toolset
(
ScheduleWakeup,ToolSearch,Cron*,Monitor, …).0.3.xdrops thebundled harness and instead extracts/runs the native Claude Code binary, which
carries those tools — unblocking cross-turn autonomy (e.g. a persistent
openSession()agent schedulingScheduleWakeupand being re-invoked when itfires).
Adapts the SDK adapter surface to the 0.3.x types:
Query.interrupt()now resolves to an optional interrupt-receipt objectinstead of
void; the streamingRuntimeSession.interrupt()awaits anddiscards it to keep its fire-and-forget
Promise<void>contract.tool()handler return type now uses a literal-typed MCPCallToolResult; the injected-MCP adapter castsInjectedMcpToolDef.handlerat that boundary so the transport-agnostic tool definition stays SDK-free.
No
@herdctl/corepublic API changes.query(),createSdkMcpServer(),tool(), streaming-inputAsyncIterable<SDKUserMessage>, and theQuerycontrol methods (
interrupt,supportedCommands,setModel) all remaincompatible. Note: the SDK peer-depends on
zod@^4, while core stays onzod@^3; the schemas passed totool()remain structurally compatible andtypecheck/build/tests are green.
#305
1262b8eThanks @edspencer! - Upgradezodfrom^3.22.0to^4.0.0in@herdctl/coreand@herdctl/chat.This clears the peer-dependency mismatch introduced by
@anthropic-ai/claude-agent-sdk@0.3.x, which peer-depends onzod@^4(the SDK'sin-process MCP
tool()schemas). Core and chat now resolve a singlezod@4.Behavior-preserving. zod v4 changed
.default()to short-circuit: az.object({...}).default({})whose fields carry their own defaults now yields abare
{}at runtime instead of the fully-defaulted object (v3 re-ran the valuethrough the schema). The three affected config sites —
work_source.labels,work_source.auth, and Discordoutput— were switched to zod v4's.prefault({}), which restores the v3 semantics (an omitted block is still runthrough the schema so nested field defaults are applied). Existing schema tests
that assert those omitted-block defaults continue to pass. All other
.default()sites use scalar/array defaults, which are unaffected.
Also updated the in-process MCP tool adapter's
tool()handler cast to matchv4's stricter argument-shape inference.
Note on the public surface: both packages re-export Zod schema objects from
their entry points (
@herdctl/core: config/state schemas likeFleetConfigSchemaand
AgentConfigSchema;@herdctl/chat:ChannelSessionSchema,ChatSessionStateSchema). Those objects are now Zod v4 instances. The inferred(
z.infer) types are structurally unchanged, so most consumers are unaffected;only code that composes the exported schema objects with its own Zod instance
at runtime (
.extend/.merge,instanceof, cross-instance parsing) needs to beon
zod@^4.@herdctl/chat@0.5.2
Patch Changes
#305
1262b8eThanks @edspencer! - Upgradezodfrom^3.22.0to^4.0.0in@herdctl/coreand@herdctl/chat.This clears the peer-dependency mismatch introduced by
@anthropic-ai/claude-agent-sdk@0.3.x, which peer-depends onzod@^4(the SDK'sin-process MCP
tool()schemas). Core and chat now resolve a singlezod@4.Behavior-preserving. zod v4 changed
.default()to short-circuit: az.object({...}).default({})whose fields carry their own defaults now yields abare
{}at runtime instead of the fully-defaulted object (v3 re-ran the valuethrough the schema). The three affected config sites —
work_source.labels,work_source.auth, and Discordoutput— were switched to zod v4's.prefault({}), which restores the v3 semantics (an omitted block is still runthrough the schema so nested field defaults are applied). Existing schema tests
that assert those omitted-block defaults continue to pass. All other
.default()sites use scalar/array defaults, which are unaffected.
Also updated the in-process MCP tool adapter's
tool()handler cast to matchv4's stricter argument-shape inference.
Note on the public surface: both packages re-export Zod schema objects from
their entry points (
@herdctl/core: config/state schemas likeFleetConfigSchemaand
AgentConfigSchema;@herdctl/chat:ChannelSessionSchema,ChatSessionStateSchema). Those objects are now Zod v4 instances. The inferred(
z.infer) types are structurally unchanged, so most consumers are unaffected;only code that composes the exported schema objects with its own Zod instance
at runtime (
.extend/.merge,instanceof, cross-instance parsing) needs to beon
zod@^4.Updated dependencies [
4eec7f3,1262b8e]:herdctl@1.5.23
Patch Changes
4eec7f3,1262b8e]:@herdctl/discord@1.2.14
Patch Changes
4eec7f3,1262b8e]:@herdctl/slack@1.2.27
Patch Changes
4eec7f3,1262b8e]:@herdctl/web@0.9.25
Patch Changes
4eec7f3,1262b8e]: