bingocode 1.1.200-beta.2 → 1.1.200-beta.21
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/package.json +1 -1
- package/src/cli/ProviderPanel.tsx +813 -813
- package/src/commands/brain/brain.ts +4 -9
- package/src/components/PromptInput/PromptInput.tsx +1 -1
- package/src/constants/prompts.ts +31 -19
- package/src/hooks/useMergedTools.ts +3 -1
- package/src/main.tsx +4693 -4691
- package/src/manager/CliMenuManager.tsx +1589 -1583
- package/src/screens/REPL.tsx +5010 -5008
- package/src/screens/ResumeConversation.tsx +7 -1
- package/src/server/api/providers.ts +24 -0
- package/src/server/config/providers.yaml +21 -0
- package/src/server/proxy/handler.ts +16 -3
- package/src/server/services/providerService.ts +189 -50
- package/src/tools/AgentTool/UI.tsx +73 -8
- package/src/tools/AgentTool/agentToolUtils.ts +2 -2
- package/src/tools.ts +397 -390
- package/src/types/logs.ts +1 -0
- package/src/utils/attachments.ts +3 -2
- package/src/utils/conversationRecovery.ts +1 -0
- package/src/utils/sessionRestore.ts +2 -0
- package/src/utils/sessionStorage.ts +5180 -5105
- package/src/utils/tokens.ts +23 -0
package/src/utils/tokens.ts
CHANGED
|
@@ -52,6 +52,29 @@ export function getTokenCountFromUsage(usage: Usage): number {
|
|
|
52
52
|
)
|
|
53
53
|
}
|
|
54
54
|
|
|
55
|
+
/**
|
|
56
|
+
* Calculate total tokens across all agent messages, matching the ProgressTracker
|
|
57
|
+
* accumulation logic in LocalAgentTask. In Claude's API:
|
|
58
|
+
* - input_tokens (and cache tokens) are cumulative per turn — each call already
|
|
59
|
+
* includes all previous context, so we keep only the LATEST value.
|
|
60
|
+
* - output_tokens are per-turn independent, so we SUM them across all turns.
|
|
61
|
+
*/
|
|
62
|
+
export function getTokenCountFromMessages(messages: Message[]): number {
|
|
63
|
+
let latestInputTokens = 0
|
|
64
|
+
let cumulativeOutputTokens = 0
|
|
65
|
+
for (const message of messages) {
|
|
66
|
+
const usage = getTokenUsage(message)
|
|
67
|
+
if (usage) {
|
|
68
|
+
latestInputTokens =
|
|
69
|
+
usage.input_tokens +
|
|
70
|
+
(usage.cache_creation_input_tokens ?? 0) +
|
|
71
|
+
(usage.cache_read_input_tokens ?? 0)
|
|
72
|
+
cumulativeOutputTokens += usage.output_tokens
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
return latestInputTokens + cumulativeOutputTokens
|
|
76
|
+
}
|
|
77
|
+
|
|
55
78
|
export function tokenCountFromLastAPIResponse(messages: Message[]): number {
|
|
56
79
|
let i = messages.length - 1
|
|
57
80
|
while (i >= 0) {
|