Roo-Code/packages/types
Hannes Rudolph f9f01b012c
fix: resolve Claude Code token counting inefficiency and enable caching (#5104) (#5108)
* fix: resolve Claude Code token counting inefficiency and enable caching (#5104)

- Remove 1.5x fudge factor from Claude Code token counting
- Enable prompt caching support for all Claude Code models
- Add comprehensive tests for token counting and caching
- Update existing tests to reflect accurate token counting

This fixes the extreme token inefficiency where simple messages would
jump from ~40k to over 60k tokens, causing API hangs when approaching
the artificial 120k limit. Claude Code now properly utilizes its full
200k context window with accurate token counting.

* fix: address PR review comments

- Extract IMAGE_TOKEN_ESTIMATE as a named constant for clarity
- Update token counting tests to use exact counts instead of ranges for deterministic testing
- Fix test expectations to match actual tokenizer output

* Remove token counting changes, keep only cache support

- Removed custom countTokens override from claude-code.ts
- Deleted claude-code-token-counting.spec.ts test file
- Kept cache token collection and reporting functionality
- Kept supportsPromptCache: true for all Claude Code models
- Kept claude-code-caching.spec.ts tests

This focuses the PR on enabling cache support without modifying token counting behavior.

* fix: update webview test to expect supportsPromptCache=true for Claude Code models

---------

Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
2025-06-25 20:36:06 -04:00
..
npm Publish @roo-code/types v1.29.0 (#5084) 2025-06-24 16:31:50 -07:00
src fix: resolve Claude Code token counting inefficiency and enable caching (#5104) (#5108) 2025-06-25 20:36:06 -04:00
eslint.config.mjs Add a new @roo-code/types package and use it everywhere (#3912) 2025-05-26 12:06:45 -07:00
package.json Farewell jest (#4607) 2025-06-16 21:39:45 -07:00
README.md Bump @roo-code/types to v1.26.0 (#4584) 2025-06-12 11:05:53 -04:00
tsconfig.json Add a new @roo-code/types package and use it everywhere (#3912) 2025-05-26 12:06:45 -07:00
tsup.config.ts Improve configuration for npm publish of @roo-code/types (#4062) 2025-05-27 22:10:41 -07:00
vitest.config.ts Convert jest tests to vitest and disable default watch mode for vitest (#4568) 2025-06-11 14:48:01 -07:00

@roo-code/types

Publish to NPM

First authenticate with NPM:

npm login

Next, manually bump the NPM package version:

cd packages/types/npm && npm version minor && cd -

Finally, publish to NPM:

pnpm --filter @roo-code/types npm:publish

Note that you'll be asked for an MFA code to complete the publish.