zoobzio December 13, 2025 Edit this page

Installation

Requirements

  • Go 1.21 or later
  • An LLM provider API key (OpenAI, Anthropic, etc.)

Install

go get github.com/zoobz-io/zyn

Provider Setup

OpenAI

import "github.com/zoobz-io/zyn/openai"

provider := openai.New(openai.Config{
    APIKey: os.Getenv("OPENAI_API_KEY"),
    Model:  "gpt-4o",  // Optional, defaults to "gpt-3.5-turbo"
})

Available models:

  • gpt-4o - Most capable
  • gpt-4o-mini - Fast and cost-effective
  • gpt-3.5-turbo - Default, cost-effective

Anthropic

import "github.com/zoobz-io/zyn/anthropic"

provider := anthropic.New(anthropic.Config{
    APIKey: os.Getenv("ANTHROPIC_API_KEY"),
    Model:  "claude-3-5-sonnet-20241022",  // Optional, defaults to "claude-sonnet-4-20250514"
})

Google Gemini

import "github.com/zoobz-io/zyn/gemini"

provider := gemini.New(gemini.Config{
    APIKey: os.Getenv("GEMINI_API_KEY"),
    Model:  "gemini-1.5-flash",
})

Environment Variables

Recommended setup:

# .env or shell profile
export OPENAI_API_KEY="sk-..."
export ANTHROPIC_API_KEY="sk-ant-..."
export GEMINI_API_KEY="..."

Verify Installation

package main

import (
    "context"
    "fmt"
    "os"

    "github.com/zoobz-io/zyn"
    "github.com/zoobz-io/zyn/openai"
)

func main() {
    provider := openai.New(openai.Config{
        APIKey: os.Getenv("OPENAI_API_KEY"),
    })

    synapse, err := zyn.Binary("Is this a test?", provider)
    if err != nil {
        panic(err)
    }

    session := zyn.NewSession()
    result, err := synapse.Fire(context.Background(), session, "This is a test")
    if err != nil {
        panic(err)
    }

    fmt.Println("Success:", result)
}

Next Steps