Hi all, just throwing it out there that tool calls...
# koog-agentic-framework
s
Hi all, just throwing it out there that tool calls on Anthropic models on AWS Bedrock are still broken. Error message example:
Copy code
aws.sdk.kotlin.services.bedrockruntime.model.ValidationException: tools.0.custom.input_schema: Field required
Issue post: https://github.com/JetBrains/koog/issues/549 PR: https://github.com/JetBrains/koog/pull/582 Could somebody please review the PR when they get a chance please πŸ™‚ This is preventing me from using Koog at the moment 😞
βœ… 1
k
Thank you, @Sam. Looks good πŸ‘
s
Cheers! Is there any way I could access a version of Koog with this change via some remote repository so I don't have to wait until the next release? πŸ™‚
like a snapshot or something?
k
yes, it will be published todnight and you may get it from our nightly:
Copy code
dependencyResolutionManagement {
    repositories {
        maven(url = "<https://packages.jetbrains.team/maven/p/grazi/grazie-platform-public>") {
            mavenContent {
                includeGroupAndSubgroups("ai.koog")
            }
        }
    }
}
version will be
0.4.1-develop-2025-09-12
πŸ™Œ 1
s
Should we be concerned that the Qodana scan failed?
k
Not really right now. Qonana always fails for forks at the moment
πŸ‘ 1
s
oh also, is there a way to view all the available versions in that snapshot repo? thanks for all your help btw πŸ™
πŸ₯° 1
k
s
hmm, still got the same bug unfortunately 😞
here is my request body:
Copy code
{
  "model": "us.anthropic.claude-sonnet-4-20250514-v1:0",
  "messages": [
    {
      "role": "user",
      "content": [
        {
          "type": "text",
          "text": "Hello, how do I take care of my hat?\n\nHere are relevant entries from the knowledge base derived from the user's query. They might not be relevant at all to the user's query, use them at your own discretion.\n\nTo take care of your hat..."
        }
      ]
    }
  ],
  "maxTokens": 2048,
  "system": [
    {
      "text": "You are a helpful assistant for lockcohatters lockcohatters.",
      "type": "text"
    }
  ],
  "tools": [
    {
      "name": "attempt_handover",
      "description": "Attempts to handover the user to a human agent for further assistance.",
      "inputSchema": {
        "properties": {
          "dummyParameter": {
            "description": "A dummy property to satisfy validation requirements",
            "type": "string"
          }
        },
        "required": [],
        "type": "object"
      }
    },
    {
      "name": "send_verification_pin_email_to_user",
      "description": "Sends a verification PIN to the user's specified email address ",
      "inputSchema": {
        "properties": {
          "emailAddress": {
            "description": "The email address to send the verification PIN to.",
            "type": "string"
          }
        },
        "required": [
          "emailAddress"
        ],
        "type": "object"
      }
    },
    {
      "name": "verify_user_provided_pin",
      "description": "Verifies the user-provided PIN and updates their verification status if the PIN is correct.",
      "inputSchema": {
        "properties": {
          "pin": {
            "description": "The user-provided PIN to verify. This should be an integer value.",
            "type": "integer"
          },
          "emailAddress": {
            "description": "The email address to update upon successful verification.",
            "type": "string"
          }
        },
        "required": [
          "pin",
          "emailAddress"
        ],
        "type": "object"
      }
    },
    {
      "name": "get_order_by_order_number_for_user",
      "description": "Retrieves order information for the current user based on the provided order number, if it belongs to them.",
      "inputSchema": {
        "properties": {
          "orderNumber": {
            "description": "The order number to retrieve information for.",
            "type": "string"
          }
        },
        "required": [
          "orderNumber"
        ],
        "type": "object"
      }
    },
    {
      "name": "get_undelivered_orders_for_user",
      "description": "Retrieves the undelivered orders for the current user.",
      "inputSchema": {
        "properties": {},
        "required": [],
        "type": "object"
      }
    }
  ],
  "stream": false
}
I think this could be because AWS expects input_schema, not inputSchema
k
would it be possible to get the raw bedrock response?