on main help sign in
feat: set user-agent to Charm Crush/<version> (#2357)
commita897f65d682f7634539a763f74da8c32c998b0d4 authorChristian Rocha <christian@rocha.is> dateTue 10 Mar 2026, 11:36 (7 months ago) parent45c25b3
3 files changed+7−3
go.mod+1−1 go.sum+2−2 internal/agent/agent.go+4
go.mod+1−1
@@ -6,7 +6,7 @@ require (
66 charm.land/bubbles/v2 v2.0.0
77 charm.land/bubbletea/v2 v2.0.1
88 charm.land/catwalk v0.28.1
9− charm.land/fantasy v0.11.1
9+ charm.land/fantasy v0.11.2-0.20260310172626-1b0027b03f8b
1010 charm.land/glamour/v2 v2.0.0-20260123212943-6014aa153a9b
1111 charm.land/lipgloss/v2 v2.0.0
1212 charm.land/log/v2 v2.0.0-20251110204020-529bb77f35da
go.sum+2−2
@@ -4,8 +4,8 @@ charm.land/bubbletea/v2 v2.0.1 h1:B8e9zzK7x9JJ+XvHGF4xnYu9Xa0E0y0MyggY6dbaCfQ=
44charm.land/bubbletea/v2 v2.0.1/go.mod h1:3LRff2U4WIYXy7MTxfbAQ+AdfM3D8Xuvz2wbsOD9OHQ=
55charm.land/catwalk v0.28.1 h1:4YJiRRNUb7i8qDEZjFLJPMKvquihGrGsTNTcf5Dfqq0=
66charm.land/catwalk v0.28.1/go.mod h1:rFC/V96rIHX7VES215c/qzI1EW/Moo1ggs1Q6seTy5s=
7−charm.land/fantasy v0.11.1 h1:G1dRqkzEQ0RJN1Ls5mte8HOi0wFKxYd5bfnRAmeYvDk=
8−charm.land/fantasy v0.11.1/go.mod h1:C8wNxWlw+b2z54zsTor9r1tG2GE2C4QotvAlgXh9KF8=
7+charm.land/fantasy v0.11.2-0.20260310172626-1b0027b03f8b h1:a/Y0xG4Ux2T3s7Kf8ih8VrzVF8P92a1KEj0hYbRA6vE=
8+charm.land/fantasy v0.11.2-0.20260310172626-1b0027b03f8b/go.mod h1:C8wNxWlw+b2z54zsTor9r1tG2GE2C4QotvAlgXh9KF8=
99charm.land/glamour/v2 v2.0.0-20260123212943-6014aa153a9b h1:A6IUUyChZDWP16RUdRJCfmYISAKWQGyIcfhZJUCViQ0=
1010charm.land/glamour/v2 v2.0.0-20260123212943-6014aa153a9b/go.mod h1:J3kVhY6oHXZq5f+8vC3hmDO95fEvbqj3z7xDwxrfzU8=
1111charm.land/lipgloss/v2 v2.0.0 h1:sd8N/B3x892oiOjFfBQdXBQp3cAkvjGaU5TvVZC3ivo=
internal/agent/agent.go+4
@@ -40,6 +40,7 @@ import (
4040 "github.com/charmbracelet/crush/internal/permission"
4141 "github.com/charmbracelet/crush/internal/session"
4242 "github.com/charmbracelet/crush/internal/stringext"
43+ "github.com/charmbracelet/crush/internal/version"
4344 "github.com/charmbracelet/x/exp/charmtone"
4445)
4546
@@ -194,6 +195,7 @@ func (a *sessionAgent) Run(ctx context.Context, call SessionAgentCall) (*fantasy
194195 largeModel.Model,
195196 fantasy.WithSystemPrompt(systemPrompt),
196197 fantasy.WithTools(agentTools...),
198+ fantasy.WithUserAgent("Charm Crush/"+version.Version),
197199 )
198200
199201 sessionLock := sync.Mutex{}
@@ -592,6 +594,7 @@ func (a *sessionAgent) Summarize(ctx context.Context, sessionID string, opts fan
592594
593595 agent := fantasy.NewAgent(largeModel.Model,
594596 fantasy.WithSystemPrompt(string(summaryPrompt)),
597+ fantasy.WithUserAgent("Charm Crush/"+version.Version),
595598 )
596599 summaryMessage, err := a.messages.Create(ctx, sessionID, message.CreateMessageParams{
597600 Role: message.Assistant,
@@ -787,6 +790,7 @@ func (a *sessionAgent) generateTitle(ctx context.Context, sessionID string, user
787790 return fantasy.NewAgent(m,
788791 fantasy.WithSystemPrompt(string(p)+"\n /no_think"),
789792 fantasy.WithMaxOutputTokens(tok),
793+ fantasy.WithUserAgent("Charm Crush/"+version.Version),
790794 )
791795 }
792796