@@ -6,12 +6,15 @@ import (
66 "errors"
77 "fmt"
88 "log/slog"
9+ "os"
10+ "strconv"
911 "strings"
1012 "sync"
1113 "time"
1214
1315 "charm.land/fantasy"
1416 "charm.land/fantasy/providers/anthropic"
17+ "charm.land/fantasy/providers/bedrock"
1518 "charm.land/fantasy/providers/openai"
1619 "github.com/charmbracelet/catwalk/pkg/catwalk"
1720 "github.com/charmbracelet/crush/internal/agent/tools"
@@ -545,10 +548,16 @@ func (a *sessionAgent) Summarize(ctx context.Context, sessionID string, opts fan
545548}
546549
547550func (a *sessionAgent) getCacheControlOptions() fantasy.ProviderOptions {
551+ if t, _ := strconv.ParseBool(os.Getenv("CRUSH_DISABLE_ANTHROPIC_CACHE")); t {
552+ return fantasy.ProviderOptions{}
553+ }
548554 return fantasy.ProviderOptions{
549555 anthropic.Name: &anthropic.ProviderCacheControlOptions{
550556 CacheControl: anthropic.CacheControl{Type: "ephemeral"},
551557 },
558+ bedrock.Name: &anthropic.ProviderCacheControlOptions{
559+ CacheControl: anthropic.CacheControl{Type: "ephemeral"},
560+ },
552561 }
553562}
554563