MCPcopy Index your code
hub / github.com/Opencode-DCP/opencode-dynamic-context-pruning / formatStatsMessage

Function formatStatsMessage

lib/commands/stats.ts:22–54  ·  view source on GitHub ↗
(
    sessionTokens: number,
    sessionSummaryTokens: number,
    sessionTools: number,
    sessionMessages: number,
    sessionDurationMs: number,
    allTime: AggregatedStats,
)

Source from the content-addressed store, hash-verified

20}
21
22export function formatStatsMessage(
23 sessionTokens: number,
24 sessionSummaryTokens: number,
25 sessionTools: number,
26 sessionMessages: number,
27 sessionDurationMs: number,
28 allTime: AggregatedStats,
29): string {
30 const lines: string[] = []
31
32 lines.push("╭───────────────────────────────────────────────────────────╮")
33 lines.push("│ DCP Statistics │")
34 lines.push("╰───────────────────────────────────────────────────────────╯")
35 lines.push("")
36 lines.push("Compression:")
37 lines.push("─".repeat(60))
38 lines.push(
39 ` Tokens in|out: ~${formatTokenCount(sessionTokens)} | ~${formatTokenCount(sessionSummaryTokens)}`,
40 )
41 lines.push(` Ratio: ${formatCompressionRatio(sessionTokens, sessionSummaryTokens)}`)
42 lines.push(` Time: ${formatCompressionTime(sessionDurationMs)}`)
43 lines.push(` Messages: ${sessionMessages}`)
44 lines.push(` Tools: ${sessionTools}`)
45 lines.push("")
46 lines.push("All-time:")
47 lines.push("─".repeat(60))
48 lines.push(` Tokens saved: ~${formatTokenCount(allTime.totalTokens)}`)
49 lines.push(` Tools pruned: ${allTime.totalTools}`)
50 lines.push(` Messages pruned: ${allTime.totalMessages}`)
51 lines.push(` Sessions: ${allTime.sessionCount}`)
52
53 return lines.join("\n")
54}
55
56function formatCompressionRatio(inputTokens: number, outputTokens: number): string {
57 if (inputTokens <= 0) {

Callers 1

handleStatsCommandFunction · 0.85

Calls 3

formatTokenCountFunction · 0.90
formatCompressionRatioFunction · 0.85
formatCompressionTimeFunction · 0.85

Tested by

no test coverage detected