Skip to content

adk-go-typesafe

Go integration bringing TypeSafe Choice, Score and Noul to Google's adk-go agents, with a typed client, routing agent and callbacks.

ProjectbetaApache-2.0

Overview

adk-go-typesafe connects TypeSafe AI's System One models such as Jev to adk-go, Google's Go agent development kit. It provides a typed HTTP client, an ADK function tool, a classification and routing agent, assessment callbacks and dynamic context filtering, so Go agents and workflows can make typed decisions.

The client is described as a temporary bridge until TypeSafe publishes a Go SDK; its API types are generated from TypeSafe's OpenAPI schema. Responses keep probabilities, confidence, score legends, model identity and token usage. The default model is jev-latest, the default timeout is ten seconds, and retries are opt-in. The author maintains sibling adapters for Bedrock, Ollama and Kronk.

What the decision model decides

TypeQuestionAnswers
ChoiceWhich team should handle this?billing · technical
Yes / noDoes this require immediate attention?yes · no

How it works

  1. Build a Request with state and typed questions
  2. client.Evaluate sends it to TypeSafe
  3. Read choice, confidence and probabilities from typed answers
  4. Use them in an ADK routing agent, tool or callback

Strengths

  • Typed Go API generated from the OpenAPI schema
  • Keeps full probabilities and token usage
  • Context cancellation and typed API errors with Retry-After

Caveats

  • Stopgap until an official Go SDK exists
  • Live examples need a TypeSafe API key

Getting started

go get github.com/craigh33/adk-go-typesafe

At a glance

Type
Project
Status
beta
Language
Go
Runtime
library (adk-go)
Has code
yes
License
Apache-2.0

Use cases and integrations

How curated lists describe it

Frequently asked questions

What does it add to adk-go?

A typed TypeSafe client, an ADK tool, a routing agent, assessment callbacks and context filtering.

Is this the official Go SDK?

No, the README calls it a temporary bridge until TypeSafe publishes one.

Which model is used by default?

jev-latest, overridable per client or per request.

Related projects

  • Ruby gem for probabilistic conditionals like Feelings(msg).like?("urgent"), answered by Jev or other decision models.

    ProjectbetaRuby
  • Ax, a DSPy-style multi-language LLM framework, listed with a native TypeSafe provider for Boolean, Choice, Score and raw Jev questions.

    PluginproductionTypeScript
  • Effect TypeScript library whose @effect/ai-typesafe package maps classify, probability and rating operations to Jev questions.

    ProjectproductionTypeScript
  • PHP monorepo whose Polyglot module adds a TypeSafe driver for typed Noul, Choice and Score decisions alongside LLM inference.

    ProjectproductionPHP
  • Simon Willison's LLM plugin that adds Jev as a model for yes/no, choice and score questions from the command line.

    PluginproductionPython
  • Elixir library for unified LLM calls across providers, with an evaluate interface that calls Jev via TypeSafe or OpenRouter.

    ProjectproductionElixir