summaryrefslogtreecommitdiff
path: root/packages/cli/src/ui/components/ContextUsageDisplay.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'packages/cli/src/ui/components/ContextUsageDisplay.tsx')
-rw-r--r--packages/cli/src/ui/components/ContextUsageDisplay.tsx25
1 files changed, 25 insertions, 0 deletions
diff --git a/packages/cli/src/ui/components/ContextUsageDisplay.tsx b/packages/cli/src/ui/components/ContextUsageDisplay.tsx
new file mode 100644
index 00000000..037be333
--- /dev/null
+++ b/packages/cli/src/ui/components/ContextUsageDisplay.tsx
@@ -0,0 +1,25 @@
+/**
+ * @license
+ * Copyright 2025 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+import { Text } from 'ink';
+import { Colors } from '../colors.js';
+import { tokenLimit } from '@google/gemini-cli-core';
+
+export const ContextUsageDisplay = ({
+ promptTokenCount,
+ model,
+}: {
+ promptTokenCount: number;
+ model: string;
+}) => {
+ const percentage = promptTokenCount / tokenLimit(model);
+
+ return (
+ <Text color={Colors.Gray}>
+ ({((1 - percentage) * 100).toFixed(0)}% context left)
+ </Text>
+ );
+};