MCPcopy Index your code
hub / github.com/liuup/claude-code-analysis / buildStatusLineCommandInput

Function buildStatusLineCommandInput

src/components/StatusLine.tsx:36–127  ·  view source on GitHub ↗
(permissionMode: PermissionMode, exceeds200kTokens: boolean, settings: ReadonlySettings, messages: Message[], addedDirs: string[], mainLoopModel: ModelName, vimMode?: VimMode)

Source from the content-addressed store, hash-verified

34 return settings?.statusLine !== undefined;
35}
36function buildStatusLineCommandInput(permissionMode: PermissionMode, exceeds200kTokens: boolean, settings: ReadonlySettings, messages: Message[], addedDirs: string[], mainLoopModel: ModelName, vimMode?: VimMode): StatusLineCommandInput {
37 const agentType = getMainThreadAgentType();
38 const worktreeSession = getCurrentWorktreeSession();
39 const runtimeModel = getRuntimeMainLoopModel({
40 permissionMode,
41 mainLoopModel,
42 exceeds200kTokens
43 });
44 const outputStyleName = settings?.outputStyle || DEFAULT_OUTPUT_STYLE_NAME;
45 const currentUsage = getCurrentUsage(messages);
46 const contextWindowSize = getContextWindowForModel(runtimeModel, getSdkBetas());
47 const contextPercentages = calculateContextPercentages(currentUsage, contextWindowSize);
48 const sessionId = getSessionId();
49 const sessionName = getCurrentSessionTitle(sessionId);
50 const rawUtil = getRawUtilization();
51 const rateLimits: StatusLineCommandInput['rate_limits'] = {
52 ...(rawUtil.five_hour && {
53 five_hour: {
54 used_percentage: rawUtil.five_hour.utilization * 100,
55 resets_at: rawUtil.five_hour.resets_at
56 }
57 }),
58 ...(rawUtil.seven_day && {
59 seven_day: {
60 used_percentage: rawUtil.seven_day.utilization * 100,
61 resets_at: rawUtil.seven_day.resets_at
62 }
63 })
64 };
65 return {
66 ...createBaseHookInput(),
67 ...(sessionName && {
68 session_name: sessionName
69 }),
70 model: {
71 id: runtimeModel,
72 display_name: renderModelName(runtimeModel)
73 },
74 workspace: {
75 current_dir: getCwd(),
76 project_dir: getOriginalCwd(),
77 added_dirs: addedDirs
78 },
79 version: MACRO.VERSION,
80 output_style: {
81 name: outputStyleName
82 },
83 cost: {
84 total_cost_usd: getTotalCost(),
85 total_duration_ms: getTotalDuration(),
86 total_api_duration_ms: getTotalAPIDuration(),
87 total_lines_added: getTotalLinesAdded(),
88 total_lines_removed: getTotalLinesRemoved()
89 },
90 context_window: {
91 total_input_tokens: getTotalInputTokens(),
92 total_output_tokens: getTotalOutputTokens(),
93 context_window_size: contextWindowSize,

Callers 1

StatusLineInnerFunction · 0.85

Calls 15

getMainThreadAgentTypeFunction · 0.85
getRuntimeMainLoopModelFunction · 0.85
getCurrentUsageFunction · 0.85
getContextWindowForModelFunction · 0.85
getSdkBetasFunction · 0.85
getSessionIdFunction · 0.85
getCurrentSessionTitleFunction · 0.85
getRawUtilizationFunction · 0.85
createBaseHookInputFunction · 0.85
renderModelNameFunction · 0.85

Tested by

no test coverage detected