@ouro.bot/cli 0.1.0-alpha.950 → 0.1.0-alpha.951

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/changelog.json CHANGED
@@ -1,6 +1,12 @@
1
1
  {
2
2
  "_note": "This changelog is maintained as part of the PR/version-bump workflow. Agent-curated, not auto-generated. Agents read this file directly via read_file to understand what changed between versions.",
3
3
  "versions": [
4
+ {
5
+ "version": "0.1.0-alpha.951",
6
+ "changes": [
7
+ "Slugger's Anthropic turns work again: a tool schema with oneOf, allOf or anyOf at the top level made the API refuse every request, so Ouro now drops those keys when it sends tools to Anthropic, and each tool still enforces its own rules."
8
+ ]
9
+ },
4
10
  {
5
11
  "version": "0.1.0-alpha.950",
6
12
  "changes": [
@@ -1,5 +1,5 @@
1
1
  {
2
- "runtimeVersion": "0.1.0-alpha.950",
2
+ "runtimeVersion": "0.1.0-alpha.951",
3
3
  "bundleSchemaVersion": 3,
4
4
  "lastUpdated": "2026-09-03T00:00:00.000Z"
5
5
  }
@@ -1,7 +1,7 @@
1
1
  <?xml version="1.0"?>
2
2
  <Container version="2">
3
3
  <Name>ouro-butler</Name>
4
- <Repository>ghcr.io/ourostack/ouroboros-butler:0.1.0-alpha.950</Repository>
4
+ <Repository>ghcr.io/ourostack/ouroboros-butler:0.1.0-alpha.951</Repository>
5
5
  <Registry>https://github.com/ourostack/ouroboros/pkgs/container/ouroboros-butler</Registry>
6
6
  <Network>host</Network>
7
7
  <Shell>sh</Shell>
@@ -37,6 +37,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.toAnthropicMessages = toAnthropicMessages;
40
+ exports.toAnthropicTools = toAnthropicTools;
40
41
  exports.classifyAnthropicError = classifyAnthropicError;
41
42
  exports.createAnthropicProviderRuntime = createAnthropicProviderRuntime;
42
43
  const sdk_1 = __importDefault(require("@anthropic-ai/sdk"));
@@ -177,12 +178,18 @@ function toAnthropicMessages(messages) {
177
178
  }
178
179
  return { system: systemParts.length > 0 ? systemParts.join("\n\n") : undefined, messages: converted };
179
180
  }
181
+ // The Anthropic API rejects the whole request when any tool's input_schema has
182
+ // oneOf, allOf or anyOf at the top level, so those keys are dropped here. Each
183
+ // tool's handler still enforces its own either/or rules.
180
184
  function toAnthropicTools(tools) {
181
- return tools.map((tool) => ({
182
- name: tool.function.name,
183
- description: tool.function.description ?? "",
184
- input_schema: tool.function.parameters ?? { type: "object", properties: {} },
185
- }));
185
+ return tools.map((tool) => {
186
+ const { oneOf: _oneOf, allOf: _allOf, anyOf: _anyOf, ...schema } = tool.function.parameters ?? { type: "object", properties: {} };
187
+ return {
188
+ name: tool.function.name,
189
+ description: tool.function.description ?? "",
190
+ input_schema: schema,
191
+ };
192
+ });
186
193
  }
187
194
  function toAnthropicUsage(raw) {
188
195
  const inputTokens = Number(raw.input_tokens ?? 0) || 0;
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@ouro.bot/cli",
3
- "version": "0.1.0-alpha.950",
3
+ "version": "0.1.0-alpha.951",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@ouro.bot/cli",
9
- "version": "0.1.0-alpha.950",
9
+ "version": "0.1.0-alpha.951",
10
10
  "dependencies": {
11
11
  "@anthropic-ai/sdk": "^0.78.0",
12
12
  "@azure/identity": "^4.13.0",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ouro.bot/cli",
3
- "version": "0.1.0-alpha.950",
3
+ "version": "0.1.0-alpha.951",
4
4
  "engines": {
5
5
  "node": ">=22"
6
6
  },