@tarquinen/opencode-dcp 3.2.6-beta0 → 3.2.7-beta0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/lib/token-utils.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as anthropicTokenizer from "@anthropic-ai/tokenizer";
|
|
2
2
|
import { getLastUserMessage } from "./messages/query";
|
|
3
3
|
export function getCurrentTokenUsage(state, messages) {
|
|
4
4
|
for (let i = messages.length - 1; i >= 0; i--) {
|
|
@@ -46,7 +46,7 @@ export function countTokens(text) {
|
|
|
46
46
|
if (!text)
|
|
47
47
|
return 0;
|
|
48
48
|
try {
|
|
49
|
-
return
|
|
49
|
+
return anthropicTokenizer.countTokens(text);
|
|
50
50
|
}
|
|
51
51
|
catch {
|
|
52
52
|
return Math.round(text.length / 4);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-utils.js","sourceRoot":"","sources":["../../lib/token-utils.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"token-utils.js","sourceRoot":"","sources":["../../lib/token-utils.ts"],"names":[],"mappings":"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"}
|
package/lib/token-utils.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { SessionState, WithParts } from "./state"
|
|
2
2
|
import { AssistantMessage, UserMessage } from "@opencode-ai/sdk/v2"
|
|
3
3
|
import { Logger } from "./logger"
|
|
4
|
-
import
|
|
4
|
+
import * as anthropicTokenizer from "@anthropic-ai/tokenizer"
|
|
5
5
|
import { getLastUserMessage } from "./messages/query"
|
|
6
6
|
|
|
7
7
|
export function getCurrentTokenUsage(state: SessionState, messages: WithParts[]): number {
|
|
@@ -67,7 +67,7 @@ export function getCurrentParams(
|
|
|
67
67
|
export function countTokens(text: string): number {
|
|
68
68
|
if (!text) return 0
|
|
69
69
|
try {
|
|
70
|
-
return
|
|
70
|
+
return anthropicTokenizer.countTokens(text)
|
|
71
71
|
} catch {
|
|
72
72
|
return Math.round(text.length / 4)
|
|
73
73
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/package.json",
|
|
3
3
|
"name": "@tarquinen/opencode-dcp",
|
|
4
|
-
"version": "3.2.
|
|
4
|
+
"version": "3.2.7-beta0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"description": "OpenCode plugin that optimizes token usage by pruning obsolete tool outputs from conversation context",
|
|
7
7
|
"main": "./dist/index.js",
|
|
@@ -36,7 +36,9 @@
|
|
|
36
36
|
"scripts": {
|
|
37
37
|
"clean": "rm -rf dist",
|
|
38
38
|
"build": "npm run clean && tsc",
|
|
39
|
-
"
|
|
39
|
+
"verify:package": "node scripts/verify-package.mjs",
|
|
40
|
+
"check:package": "npm run build && npm run verify:package",
|
|
41
|
+
"prepublishOnly": "npm run check:package",
|
|
40
42
|
"dev": "opencode plugin dev",
|
|
41
43
|
"typecheck": "tsc --noEmit",
|
|
42
44
|
"tui:link-host-runtime": "node scripts/link-tui-host-runtime.mjs",
|