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

Function handleStatsCommand

lib/commands/stats.ts:92–118  ·  view source on GitHub ↗
(ctx: StatsCommandContext)

Source from the content-addressed store, hash-verified

90}
91
92export async function handleStatsCommand(ctx: StatsCommandContext): Promise<void> {
93 const { client, state, logger, sessionId, messages } = ctx
94
95 const report = await buildStatsReport(state, logger)
96 const message = formatStatsMessage(
97 report.sessionTokens,
98 report.sessionSummaryTokens,
99 report.sessionTools,
100 report.sessionMessages,
101 report.sessionDurationMs,
102 report.allTime,
103 )
104
105 const params = getCurrentParams(state, messages, logger)
106 await sendIgnoredMessage(client, sessionId, message, params, logger)
107
108 logger.info("Stats command executed", {
109 sessionTokens: report.sessionTokens,
110 sessionSummaryTokens: report.sessionSummaryTokens,
111 sessionTools: report.sessionTools,
112 sessionMessages: report.sessionMessages,
113 sessionDurationMs: report.sessionDurationMs,
114 allTimeTokens: report.allTime.totalTokens,
115 allTimeTools: report.allTime.totalTools,
116 allTimeMessages: report.allTime.totalMessages,
117 })
118}
119
120export async function buildStatsReport(state: SessionState, logger: Logger) {
121 const sessionTokens = state.stats.totalPruneTokens

Callers 1

Calls 5

getCurrentParamsFunction · 0.90
sendIgnoredMessageFunction · 0.90
buildStatsReportFunction · 0.85
formatStatsMessageFunction · 0.85
infoMethod · 0.80

Tested by

no test coverage detected