tengu_thrifty_sonic
A Claude Code feature flag, read out of the shipped bundle. It was in the build from v2.1.221 and was gone by v2.1.304.
Auto mode can be told to do file reads, searches and edits through Bash, but it's off by default.
Not Anthropic's. This is the line from the earliest changelog entry here that named it, v2.1.221.
In the changelogs
5Releases whose published page names tengu_thrifty_sonic.
-
v2.1.232
Bash tool description shape is decided once per process
The Bash tool's description length is decided once per process so it can't change mid-session.
gate cited by this entry, found in this entry's text
-
v2.1.223
Thrifty-sonic narrowed to one model; plan artifacts moved to its own gate
Plan artifacts now have their own switch instead of riding along with an unrelated experiment.
gate cited by this entry, found in this entry's text
-
v2.1.221
Auto mode bash-first prompt variant
Auto mode can be told to do file reads, searches and edits through Bash, but it's off by default.
gate cited by this entry, found in this entry's text
-
v2.1.221
Auto mode can be told to do its work through Bash ("thrifty sonic")
Auto mode can be told to use Bash for reads and edits if you set the env var.
gate cited by this entry, found in this entry's text
-
v2.1.221
Leaner Bash tool description behind the thrifty-sonic gate
A much shorter Bash tool description exists, but only when the thrifty-sonic gate is switched on.
gate cited by this entry, found in this entry's text
Gate readings
3| Release | Resolved | This account | Anonymous | Compiled default |
|---|---|---|---|---|
| v2.1.232 read on another version | On for this account, and not off by default | on | on | not a boolean we can read |
| v2.1.223 read on another version | Off by default, switched on for this account | on | on | off |
| v2.1.221 read on another version | Off by default, switched on for this account | on | on | off |
Two arms, because they disagree: this account is the one account this site reads and anonymous is a baseline with no identity attached. A reading says nothing about your account, and off cannot rule out a rollout both readings sit outside of. What these readings can and cannot show.
Flag server, over time
14| Read as | Reading | From | Until | Version installed |
|---|---|---|---|---|
| anonymous | on | 2026-10-17T05:30:04Z | 2026-10-22T13:55:05Z | v2.1.302 to v2.1.308 |
| this account | on | 2026-09-10T21:47:12Z | 2026-10-22T13:55:05Z | v2.1.268 to v2.1.308 |
| anonymous | no longer carried | 2026-10-17T05:25:57Z | 2026-10-17T05:25:57Z | v2.1.302 |
| anonymous | on | 2026-08-19T04:25:04Z | 2026-10-17T05:10:04Z | v2.1.233 to v2.1.302 |
| this account | no longer carried | 2026-09-10T21:46:45Z | 2026-09-10T21:46:45Z | v2.1.268 |
| this account | on | 2026-09-08T20:36:15Z | 2026-09-10T17:40:05Z | v2.1.263 to v2.1.267 |
| this account | no longer carried | 2026-09-08T20:34:58Z | 2026-09-08T20:34:58Z | v2.1.265 |
| this account | on | 2026-09-06T02:40:05Z | 2026-09-08T18:45:05Z | v2.1.261 to v2.1.263 |
| this account | no longer carried | 2026-09-06T02:36:19Z | 2026-09-06T02:36:19Z | v2.1.263 |
| this account | on | 2026-08-17T23:25:03Z | 2026-09-06T01:55:04Z | v2.1.233 to v2.1.261 |
| anonymous | no longer carried | 2026-08-19T04:20:14Z | 2026-08-19T04:20:14Z | v2.1.233 |
| anonymous | on | 2026-08-17T23:00:05Z | 2026-08-19T03:45:04Z | v2.1.233 |
| this account | off | 2026-08-14T22:10:05Z | 2026-08-17T23:00:05Z | v2.1.232 to v2.1.233 |
| anonymous | off | 2026-08-14T22:10:05Z | 2026-08-17T22:45:04Z | v2.1.232 to v2.1.233 |
One row per unbroken stretch of one reading, newest first, from snapshots taken every twenty-five minutes or so. No longer carried is not off: it means the flag server stopped returning the gate at all, which is what a retired experiment looks like. The version column is what was installed when the reading was taken, not what caused it.
First cited
1The earliest release whose published evidence quoted tengu_thrifty_sonic was v2.1.221, 3 Aug 2026. That is the oldest release this project wrote about it, so it is a floor on the name's age and not the release that introduced it. It is not a presence reading: which builds carried the name is the table below.
Presence across releases
6Build by build
76One row per release since the first build this name was read out of. Absent means the build was read and the name was not in it, never mined means no bundle for that release was ever archived, and a declared type or a default is only ever what that release's own bundle stated.
Read out of the published npm bundle release by release, and out of Anthropic's own documentation as this site captured it. Nothing on this page is a description anybody here wrote about what the feature flag does. All feature flags.