Commit log

ee762e4 wip: initial google provider

Kujtim Hoxha created

7712c19 refactor: use `cmp.Or` in more places

Andrey Nering created

1a32307 refactor: change provider options structs to be private / internal

Click to expand commit body
These struct types don't make sense to be part of the public API. They
are only used internally to map options to the actual provider SDKs.

Andrey Nering created

2e53c78 refactor: move each provider into its own package

Click to expand commit body
Reasoning for this is:

1. Users can import only those they want, and the Go compiler won't
  compile the external library the user don't need.
2. This simplify the API and makes it follow the Go conventions better:
  * `ai.NewOpenAiProvider` -> `openai.New`
  * `ai.WithOpenAiAPIKey` -> `openai.WithAPIKey`
  * etc.

Andrey Nering created

66fbbb0 refactor: json check func should not be part of the public api

Andrey Nering created

67080cf refactor: declare func types for agent callbacks

Andrey Nering created

6580e7f fix(examples): improve sdk examples

Click to expand commit body
* Check errors where we weren't checking them
* Exit with status 1 on errors

Andrey Nering created

bd29644 refactor: simplify code with `cmp.Or`

Andrey Nering created

7f1ec14 lint: temporarily disable some linters

Andrey Nering created

36ea7d1 lint: preallocate slices

Andrey Nering created

bca935d lint: fix `errcheck` issues

Andrey Nering created

97790da lint: fix uneeded conversion

Andrey Nering created

a40ebcf lint: fix auto-fixable issues

Andrey Nering created

27c1052 chore: add basic taskfile

Andrey Nering created

1c22f39 ci: initial setup for lint

Andrey Nering created

68fa858 ci: initial setup for build

Andrey Nering created

e598546 chore: add `.editorconfig`

Andrey Nering created

62b1df6 chore: add `.gitignore`

Andrey Nering created

a306114 chore: add a `go.mod` and update imports

Andrey Nering created

e00d646 chore: small fix for anthropic tool choice

Kujtim Hoxha created

b416305 wip: update agent to use the new ai-sdk

Kujtim Hoxha created

a031cc0 chore: change callback signature

Kujtim Hoxha created

07120ff chore: rename vars

Kujtim Hoxha created

66da55c fix: fix openai tests

Kujtim Hoxha created

5b1abeb chore: lint

Kujtim Hoxha created

bb49508 chore: change the provider interface

Kujtim Hoxha created

965e1cb feat: anthropic provider

Kujtim Hoxha created

ab3ccec chore: agent improvements

Kujtim Hoxha created

c884f0d chore: small openai provider changes

Kujtim Hoxha created

6ab9581 chore: create new agent

Kujtim Hoxha created

133dbc7 chore: rename tool func

Kujtim Hoxha created

c943dd8 chore: test schema generation

Kujtim Hoxha created

fa6f616 feat: migrate tools

Kujtim Hoxha created

473175e chore: lint

Kujtim Hoxha created

d8f2f21 feat: add new tool definitions

Kujtim Hoxha created

63ea21f chore: move examples

Kujtim Hoxha created

13feb85 feat: streaming agent

Kujtim Hoxha created

2cf2b19 feat: tool repair and more stop conditions

Kujtim Hoxha created

a719de4 chore: add tests

Kujtim Hoxha created

fac7796 feat: initial agent implementation

Click to expand commit body
still need to setup streaming

Kujtim Hoxha created

a900a6e chore: remove config dependency

Kujtim Hoxha created

cdee960 feat: initial ai-sdk implementation

Kujtim Hoxha created