v0.2.0 Release Notes¶
Release Date: 2026-08-01
Agent Code Review v0.2.0 is a breaking change release that migrates the Go SDK's GitHub client
from a raw go-github client to gogithub's version-isolated clientv1.Client. This resolves a
module-graph conflict that had left the project unbuildable, and removes the direct go-github
dependency going forward.
Highlights¶
- Breaking:
pkg/reviewnow wrapsclientv1.Clientinstead of*github.Client - Dependency conflict resolved — go-github v84 (direct) and v88/v89 (pulled in transitively via other dependencies) could no longer coexist in the module graph
- No more direct go-github dependency —
github.com/google/go-github/v84is gone fromgo.mod; GitHub App auth is adapted internally viaclientv1.NewClientFromRaw
Breaking Changes¶
review.NewClient()¶
Before (v0.1.0):
import "github.com/google/go-github/v84/github"
gh := github.NewClient(nil).WithAuthToken(token)
client := review.NewClient(gh)
After (v0.2.0):
import "github.com/grokify/gogithub/clientv1"
gh, err := clientv1.NewClient(ctx, token)
if err != nil {
panic(err)
}
client := review.NewClient(gh)
review.NewClient() now takes a clientv1.Client
instead of a raw *github.Client.
review.NewClientFromToken()¶
Before (v0.1.0):
After (v0.2.0):
review.NewClientFromToken() now returns (*Client, error) instead of *Client, since building
a clientv1.Client can fail.
review.NewClientFromAppConfig()¶
Unchanged — this constructor already returned (*Client, error).
Why This Happened¶
gogithub v0.15.0 migrated its pr and auth packages to clientv1.Client as part of its own
version-isolation work. That was itself a breaking change for any code, like this SDK's
pkg/review, that still passed a raw *github.Client into those packages. Upgrading gogithub
without migrating pkg/review was not possible — the two changes had to land together.
Migrating to clientv1.Client also fixes the root problem that motivated the upgrade: this
project directly required github.com/google/go-github/v84, while other dependencies (including
the previous gogithub version) pulled in v88/v89 transitively. Two different major versions of
the same package existed as two different Go types, and the module simply would not build. Routing
through clientv1.Client — which wraps whichever go-github version gogithub uses internally —
removes the direct dependency entirely, so this conflict can't recur.
Migration Guide¶
-
Replace client creation:
-
Handle the new error return from
NewClientFromToken: -
Update imports:
GitHub App authentication (review.NewClientFromAppConfig) requires no changes — its signature
was already (*Client, error).
Dependencies¶
| Package | Version | Purpose |
|---|---|---|
github.com/grokify/gogithub |
v0.15.0 (was v0.11.0) | Version-isolated GitHub client (clientv1.Client) |
github.com/plexusone/omnillm |
v0.17.0 (was v0.14.0) | Multi-LLM integration |
github.com/modelcontextprotocol/go-sdk |
v1.7.0 | MCP server |
github.com/spf13/cobra |
v1.10.2 | CLI framework |
github.com/google/go-github/v84 is no longer a direct dependency.
Documentation¶
- README, Go SDK Guide, and Home examples updated for
clientv1.Client - Applied a unified PlexusOne MkDocs theme