@google/gemini-cli 0.1.8-rc.0 → 0.1.8-rc.1
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/README.md +4 -2
- package/dist/google-gemini-cli-0.1.8-rc.1.tgz +0 -0
- package/dist/package.json +7 -7
- package/dist/src/config/auth.js +1 -1
- package/dist/src/config/auth.js.map +1 -1
- package/dist/src/gemini.js +2 -2
- package/dist/src/gemini.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +1 -1
- package/dist/src/generated/git-commit.js +1 -1
- package/dist/src/ui/App.js +2 -2
- package/dist/src/ui/App.js.map +1 -1
- package/dist/src/ui/components/AuthDialog.d.ts +3 -3
- package/dist/src/ui/components/AuthDialog.js +3 -6
- package/dist/src/ui/components/AuthDialog.js.map +1 -1
- package/dist/src/ui/components/AuthDialog.test.js +3 -3
- package/dist/src/ui/components/AuthDialog.test.js.map +1 -1
- package/dist/src/ui/components/SessionSummaryDisplay.js +3 -25
- package/dist/src/ui/components/SessionSummaryDisplay.js.map +1 -1
- package/dist/src/ui/components/SessionSummaryDisplay.test.js +2 -29
- package/dist/src/ui/components/SessionSummaryDisplay.test.js.map +1 -1
- package/dist/src/ui/components/StatsDisplay.d.ts +1 -0
- package/dist/src/ui/components/StatsDisplay.js +9 -2
- package/dist/src/ui/components/StatsDisplay.js.map +1 -1
- package/dist/src/ui/components/StatsDisplay.test.js +34 -0
- package/dist/src/ui/components/StatsDisplay.test.js.map +1 -1
- package/dist/src/ui/components/shared/MaxSizedBox.js +2 -1
- package/dist/src/ui/components/shared/MaxSizedBox.js.map +1 -1
- package/dist/src/ui/hooks/useAuthCommand.d.ts +2 -3
- package/dist/src/ui/hooks/useAuthCommand.js +7 -13
- package/dist/src/ui/hooks/useAuthCommand.js.map +1 -1
- package/dist/src/ui/hooks/useGeminiStream.test.js +1 -1
- package/dist/src/ui/hooks/useGeminiStream.test.js.map +1 -1
- package/dist/src/ui/privacy/PrivacyNotice.js +1 -1
- package/dist/src/ui/privacy/PrivacyNotice.js.map +1 -1
- package/dist/src/ui/utils/MarkdownDisplay.js +55 -0
- package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -1
- package/dist/src/ui/utils/MarkdownDisplay.test.js +176 -0
- package/dist/src/ui/utils/MarkdownDisplay.test.js.map +1 -0
- package/dist/src/ui/utils/TableRenderer.d.ts +17 -0
- package/dist/src/ui/utils/TableRenderer.js +66 -0
- package/dist/src/ui/utils/TableRenderer.js.map +1 -0
- package/dist/src/ui/utils/errorParsing.js +1 -1
- package/dist/src/ui/utils/errorParsing.js.map +1 -1
- package/dist/src/ui/utils/updateCheck.js +3 -1
- package/dist/src/ui/utils/updateCheck.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +7 -7
- package/dist/google-gemini-cli-0.1.8-rc.0.tgz +0 -0
- package/dist/src/ui/components/Stats.d.ts +0 -39
- package/dist/src/ui/components/Stats.js +0 -23
- package/dist/src/ui/components/Stats.js.map +0 -1
- package/dist/src/ui/components/Stats.test.js +0 -57
- package/dist/src/ui/components/Stats.test.js.map +0 -1
- /package/dist/src/ui/{components/Stats.test.d.ts → utils/MarkdownDisplay.test.d.ts} +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@google/gemini-cli",
|
|
3
|
-
"version": "0.1.8-rc.
|
|
3
|
+
"version": "0.1.8-rc.1",
|
|
4
4
|
"description": "Gemini CLI",
|
|
5
5
|
"repository": "google-gemini/gemini-cli",
|
|
6
6
|
"type": "module",
|
|
@@ -10,7 +10,6 @@
|
|
|
10
10
|
},
|
|
11
11
|
"scripts": {
|
|
12
12
|
"build": "node ../../scripts/build_package.js",
|
|
13
|
-
"clean": "rm -rf dist",
|
|
14
13
|
"start": "node dist/index.js",
|
|
15
14
|
"debug": "node --inspect-brk dist/index.js",
|
|
16
15
|
"lint": "eslint . --ext .ts,.tsx",
|
|
@@ -27,10 +26,10 @@
|
|
|
27
26
|
"dist"
|
|
28
27
|
],
|
|
29
28
|
"config": {
|
|
30
|
-
"sandboxImageUri": "us-docker.pkg.dev/gemini-code-dev/gemini-cli/sandbox:0.1.8-rc.
|
|
29
|
+
"sandboxImageUri": "us-docker.pkg.dev/gemini-code-dev/gemini-cli/sandbox:0.1.8-rc.1"
|
|
31
30
|
},
|
|
32
31
|
"dependencies": {
|
|
33
|
-
"@google/gemini-cli-core": "0.1.8-rc.
|
|
32
|
+
"@google/gemini-cli-core": "0.1.8-rc.1",
|
|
34
33
|
"@types/update-notifier": "^6.0.8",
|
|
35
34
|
"command-exists": "^1.2.9",
|
|
36
35
|
"diff": "^7.0.0",
|
|
@@ -41,9 +40,9 @@
|
|
|
41
40
|
"ink": "^6.0.1",
|
|
42
41
|
"ink-big-text": "^2.0.0",
|
|
43
42
|
"ink-gradient": "^3.0.0",
|
|
43
|
+
"ink-link": "^4.1.0",
|
|
44
44
|
"ink-select-input": "^6.2.0",
|
|
45
45
|
"ink-spinner": "^5.0.0",
|
|
46
|
-
"ink-link": "^4.1.0",
|
|
47
46
|
"ink-text-input": "^6.0.0",
|
|
48
47
|
"lowlight": "^3.3.0",
|
|
49
48
|
"mime-types": "^2.1.4",
|
|
@@ -58,20 +57,21 @@
|
|
|
58
57
|
"yargs": "^17.7.2"
|
|
59
58
|
},
|
|
60
59
|
"devDependencies": {
|
|
61
|
-
"@testing-library/react": "^16.3.0",
|
|
62
60
|
"@babel/runtime": "^7.27.6",
|
|
61
|
+
"@testing-library/react": "^16.3.0",
|
|
63
62
|
"@types/command-exists": "^1.2.3",
|
|
64
63
|
"@types/diff": "^7.0.2",
|
|
65
64
|
"@types/dotenv": "^6.1.1",
|
|
66
65
|
"@types/node": "^20.11.24",
|
|
67
66
|
"@types/react": "^19.1.8",
|
|
68
67
|
"@types/react-dom": "^19.1.6",
|
|
68
|
+
"@types/semver": "^7.7.0",
|
|
69
69
|
"@types/shell-quote": "^1.7.5",
|
|
70
70
|
"@types/yargs": "^17.0.32",
|
|
71
71
|
"ink-testing-library": "^4.0.0",
|
|
72
72
|
"jsdom": "^26.1.0",
|
|
73
|
-
"react-dom": "^19.1.0",
|
|
74
73
|
"pretty-format": "^30.0.2",
|
|
74
|
+
"react-dom": "^19.1.0",
|
|
75
75
|
"typescript": "^5.3.3",
|
|
76
76
|
"vitest": "^3.1.1"
|
|
77
77
|
},
|
|
Binary file
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2025 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
import React from 'react';
|
|
7
|
-
export interface FormattedStats {
|
|
8
|
-
inputTokens: number;
|
|
9
|
-
outputTokens: number;
|
|
10
|
-
toolUseTokens: number;
|
|
11
|
-
thoughtsTokens: number;
|
|
12
|
-
cachedTokens: number;
|
|
13
|
-
totalTokens: number;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Renders a single row with a colored label on the left and a value on the right.
|
|
17
|
-
*/
|
|
18
|
-
export declare const StatRow: React.FC<{
|
|
19
|
-
label: string;
|
|
20
|
-
value: string | number;
|
|
21
|
-
valueColor?: string;
|
|
22
|
-
}>;
|
|
23
|
-
/**
|
|
24
|
-
* Renders a full column for either "Last Turn" or "Cumulative" stats.
|
|
25
|
-
*/
|
|
26
|
-
export declare const StatsColumn: React.FC<{
|
|
27
|
-
title: string;
|
|
28
|
-
stats: FormattedStats;
|
|
29
|
-
isCumulative?: boolean;
|
|
30
|
-
width?: string | number;
|
|
31
|
-
children?: React.ReactNode;
|
|
32
|
-
}>;
|
|
33
|
-
/**
|
|
34
|
-
* Renders a column for displaying duration information.
|
|
35
|
-
*/
|
|
36
|
-
export declare const DurationColumn: React.FC<{
|
|
37
|
-
apiTime: string;
|
|
38
|
-
wallTime: string;
|
|
39
|
-
}>;
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Box, Text } from 'ink';
|
|
3
|
-
import { Colors } from '../colors.js';
|
|
4
|
-
// --- Helper Components ---
|
|
5
|
-
/**
|
|
6
|
-
* Renders a single row with a colored label on the left and a value on the right.
|
|
7
|
-
*/
|
|
8
|
-
export const StatRow = ({ label, value, valueColor }) => (_jsxs(Box, { justifyContent: "space-between", gap: 2, children: [_jsx(Text, { color: Colors.LightBlue, children: label }), _jsx(Text, { color: valueColor, children: value })] }));
|
|
9
|
-
/**
|
|
10
|
-
* Renders a full column for either "Last Turn" or "Cumulative" stats.
|
|
11
|
-
*/
|
|
12
|
-
export const StatsColumn = ({ title, stats, isCumulative = false, width, children }) => {
|
|
13
|
-
const cachedDisplay = isCumulative && stats.totalTokens > 0
|
|
14
|
-
? `${stats.cachedTokens.toLocaleString()} (${((stats.cachedTokens / stats.totalTokens) * 100).toFixed(1)}%)`
|
|
15
|
-
: stats.cachedTokens.toLocaleString();
|
|
16
|
-
const cachedColor = isCumulative && stats.cachedTokens > 0 ? Colors.AccentGreen : undefined;
|
|
17
|
-
return (_jsxs(Box, { flexDirection: "column", width: width, children: [_jsx(Text, { bold: true, children: title }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(StatRow, { label: "Input Tokens", value: stats.inputTokens.toLocaleString() }), _jsx(StatRow, { label: "Output Tokens", value: stats.outputTokens.toLocaleString() }), stats.toolUseTokens > 0 && (_jsx(StatRow, { label: "Tool Use Tokens", value: stats.toolUseTokens.toLocaleString() })), _jsx(StatRow, { label: "Thoughts Tokens", value: stats.thoughtsTokens.toLocaleString() }), stats.cachedTokens > 0 && (_jsx(StatRow, { label: "Cached Tokens", value: cachedDisplay, valueColor: cachedColor })), _jsx(Box, { borderTop: true, borderLeft: false, borderRight: false, borderBottom: false, borderStyle: "single" }), _jsx(StatRow, { label: "Total Tokens", value: stats.totalTokens.toLocaleString() }), children] })] }));
|
|
18
|
-
};
|
|
19
|
-
/**
|
|
20
|
-
* Renders a column for displaying duration information.
|
|
21
|
-
*/
|
|
22
|
-
export const DurationColumn = ({ apiTime, wallTime }) => (_jsxs(Box, { flexDirection: "column", width: '48%', children: [_jsx(Text, { bold: true, children: "Duration" }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(StatRow, { label: "API Time", value: apiTime }), _jsx(StatRow, { label: "Wall Time", value: wallTime })] })] }));
|
|
23
|
-
//# sourceMappingURL=Stats.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Stats.js","sourceRoot":"","sources":["../../../../src/ui/components/Stats.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
/**
|
|
3
|
-
* @license
|
|
4
|
-
* Copyright 2025 Google LLC
|
|
5
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
6
|
-
*/
|
|
7
|
-
import { render } from 'ink-testing-library';
|
|
8
|
-
import { describe, it, expect } from 'vitest';
|
|
9
|
-
import { StatRow, StatsColumn, DurationColumn, } from './Stats.js';
|
|
10
|
-
import { Colors } from '../colors.js';
|
|
11
|
-
describe('<StatRow />', () => {
|
|
12
|
-
it('renders a label and value', () => {
|
|
13
|
-
const { lastFrame } = render(_jsx(StatRow, { label: "Test Label", value: "Test Value" }));
|
|
14
|
-
expect(lastFrame()).toMatchSnapshot();
|
|
15
|
-
});
|
|
16
|
-
it('renders with a specific value color', () => {
|
|
17
|
-
const { lastFrame } = render(_jsx(StatRow, { label: "Test Label", value: "Test Value", valueColor: Colors.AccentGreen }));
|
|
18
|
-
expect(lastFrame()).toMatchSnapshot();
|
|
19
|
-
});
|
|
20
|
-
});
|
|
21
|
-
describe('<StatsColumn />', () => {
|
|
22
|
-
const mockStats = {
|
|
23
|
-
inputTokens: 100,
|
|
24
|
-
outputTokens: 200,
|
|
25
|
-
toolUseTokens: 50,
|
|
26
|
-
thoughtsTokens: 25,
|
|
27
|
-
cachedTokens: 10,
|
|
28
|
-
totalTokens: 385,
|
|
29
|
-
};
|
|
30
|
-
it('renders a stats column with children', () => {
|
|
31
|
-
const { lastFrame } = render(_jsx(StatsColumn, { title: "Test Stats", stats: mockStats, children: _jsx(StatRow, { label: "Child Prop", value: "Child Value" }) }));
|
|
32
|
-
expect(lastFrame()).toMatchSnapshot();
|
|
33
|
-
});
|
|
34
|
-
it('renders a stats column with a specific width', () => {
|
|
35
|
-
const { lastFrame } = render(_jsx(StatsColumn, { title: "Test Stats", stats: mockStats, width: "50%" }));
|
|
36
|
-
expect(lastFrame()).toMatchSnapshot();
|
|
37
|
-
});
|
|
38
|
-
it('renders a cumulative stats column with percentages', () => {
|
|
39
|
-
const { lastFrame } = render(_jsx(StatsColumn, { title: "Cumulative Stats", stats: mockStats, isCumulative: true }));
|
|
40
|
-
expect(lastFrame()).toMatchSnapshot();
|
|
41
|
-
});
|
|
42
|
-
it('hides the tool use row when there are no tool use tokens', () => {
|
|
43
|
-
const statsWithNoToolUse = {
|
|
44
|
-
...mockStats,
|
|
45
|
-
toolUseTokens: 0,
|
|
46
|
-
};
|
|
47
|
-
const { lastFrame } = render(_jsx(StatsColumn, { title: "Test Stats", stats: statsWithNoToolUse }));
|
|
48
|
-
expect(lastFrame()).not.toContain('Tool Use Tokens');
|
|
49
|
-
});
|
|
50
|
-
});
|
|
51
|
-
describe('<DurationColumn />', () => {
|
|
52
|
-
it('renders a duration column', () => {
|
|
53
|
-
const { lastFrame } = render(_jsx(DurationColumn, { apiTime: "5s", wallTime: "10s" }));
|
|
54
|
-
expect(lastFrame()).toMatchSnapshot();
|
|
55
|
-
});
|
|
56
|
-
});
|
|
57
|
-
//# sourceMappingURL=Stats.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Stats.test.js","sourceRoot":"","sources":["../../../../src/ui/components/Stats.test.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,OAAO,EACP,WAAW,EACX,cAAc,GAEf,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,OAAO,IAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAC,YAAY,GAAG,CAClD,CAAC;QACF,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,OAAO,IACN,KAAK,EAAC,YAAY,EAClB,KAAK,EAAC,YAAY,EAClB,UAAU,EAAE,MAAM,CAAC,WAAW,GAC9B,CACH,CAAC;QACF,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,MAAM,SAAS,GAAmB;QAChC,WAAW,EAAE,GAAG;QAChB,YAAY,EAAE,GAAG;QACjB,aAAa,EAAE,EAAE;QACjB,cAAc,EAAE,EAAE;QAClB,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,GAAG;KACjB,CAAC;IAEF,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,WAAW,IAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAE,SAAS,YAC9C,KAAC,OAAO,IAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAC,aAAa,GAAG,GACtC,CACf,CAAC;QACF,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,WAAW,IAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAC,KAAK,GAAG,CACjE,CAAC;QACF,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,WAAW,IAAC,KAAK,EAAC,kBAAkB,EAAC,KAAK,EAAE,SAAS,EAAE,YAAY,SAAG,CACxE,CAAC;QACF,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,kBAAkB,GAAmB;YACzC,GAAG,SAAS;YACZ,aAAa,EAAE,CAAC;SACjB,CAAC;QACF,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,WAAW,IAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAE,kBAAkB,GAAI,CAC9D,CAAC;QACF,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,cAAc,IAAC,OAAO,EAAC,IAAI,EAAC,QAAQ,EAAC,KAAK,GAAG,CAC/C,CAAC;QACF,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
File without changes
|