feat: Add IDE client to /bug & /about if IDE mode is enabled (#6567)
This commit is contained in:
parent
9588aa6ef9
commit
4828e4daf1
|
@ -28,6 +28,7 @@ describe('aboutCommand', () => {
|
||||||
config: {
|
config: {
|
||||||
getModel: vi.fn(),
|
getModel: vi.fn(),
|
||||||
getIdeClient: vi.fn(),
|
getIdeClient: vi.fn(),
|
||||||
|
getIdeMode: vi.fn().mockReturnValue(true),
|
||||||
},
|
},
|
||||||
settings: {
|
settings: {
|
||||||
merged: {
|
merged: {
|
||||||
|
|
|
@ -29,7 +29,8 @@ export const aboutCommand: SlashCommand = {
|
||||||
context.services.settings.merged.selectedAuthType || '';
|
context.services.settings.merged.selectedAuthType || '';
|
||||||
const gcpProject = process.env['GOOGLE_CLOUD_PROJECT'] || '';
|
const gcpProject = process.env['GOOGLE_CLOUD_PROJECT'] || '';
|
||||||
const ideClient =
|
const ideClient =
|
||||||
context.services.config?.getIdeClient()?.getDetectedIdeDisplayName() ||
|
(context.services.config?.getIdeMode() &&
|
||||||
|
context.services.config?.getIdeClient()?.getDetectedIdeDisplayName()) ||
|
||||||
'';
|
'';
|
||||||
|
|
||||||
const aboutItem: Omit<HistoryItemAbout, 'id'> = {
|
const aboutItem: Omit<HistoryItemAbout, 'id'> = {
|
||||||
|
|
|
@ -48,6 +48,10 @@ describe('bugCommand', () => {
|
||||||
config: {
|
config: {
|
||||||
getModel: () => 'gemini-pro',
|
getModel: () => 'gemini-pro',
|
||||||
getBugCommand: () => undefined,
|
getBugCommand: () => undefined,
|
||||||
|
getIdeClient: () => ({
|
||||||
|
getDetectedIdeDisplayName: () => 'VSCode',
|
||||||
|
}),
|
||||||
|
getIdeMode: () => true,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
@ -63,6 +67,7 @@ describe('bugCommand', () => {
|
||||||
* **Sandbox Environment:** test
|
* **Sandbox Environment:** test
|
||||||
* **Model Version:** gemini-pro
|
* **Model Version:** gemini-pro
|
||||||
* **Memory Usage:** 100 MB
|
* **Memory Usage:** 100 MB
|
||||||
|
* **IDE Client:** VSCode
|
||||||
`;
|
`;
|
||||||
const expectedUrl =
|
const expectedUrl =
|
||||||
'https://github.com/google-gemini/gemini-cli/issues/new?template=bug_report.yml&title=A%20test%20bug&info=' +
|
'https://github.com/google-gemini/gemini-cli/issues/new?template=bug_report.yml&title=A%20test%20bug&info=' +
|
||||||
|
@ -79,6 +84,10 @@ describe('bugCommand', () => {
|
||||||
config: {
|
config: {
|
||||||
getModel: () => 'gemini-pro',
|
getModel: () => 'gemini-pro',
|
||||||
getBugCommand: () => ({ urlTemplate: customTemplate }),
|
getBugCommand: () => ({ urlTemplate: customTemplate }),
|
||||||
|
getIdeClient: () => ({
|
||||||
|
getDetectedIdeDisplayName: () => 'VSCode',
|
||||||
|
}),
|
||||||
|
getIdeMode: () => true,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
@ -94,6 +103,7 @@ describe('bugCommand', () => {
|
||||||
* **Sandbox Environment:** test
|
* **Sandbox Environment:** test
|
||||||
* **Model Version:** gemini-pro
|
* **Model Version:** gemini-pro
|
||||||
* **Memory Usage:** 100 MB
|
* **Memory Usage:** 100 MB
|
||||||
|
* **IDE Client:** VSCode
|
||||||
`;
|
`;
|
||||||
const expectedUrl = customTemplate
|
const expectedUrl = customTemplate
|
||||||
.replace('{title}', encodeURIComponent('A custom bug'))
|
.replace('{title}', encodeURIComponent('A custom bug'))
|
||||||
|
|
|
@ -37,8 +37,12 @@ export const bugCommand: SlashCommand = {
|
||||||
const modelVersion = config?.getModel() || 'Unknown';
|
const modelVersion = config?.getModel() || 'Unknown';
|
||||||
const cliVersion = await getCliVersion();
|
const cliVersion = await getCliVersion();
|
||||||
const memoryUsage = formatMemoryUsage(process.memoryUsage().rss);
|
const memoryUsage = formatMemoryUsage(process.memoryUsage().rss);
|
||||||
|
const ideClient =
|
||||||
|
(context.services.config?.getIdeMode() &&
|
||||||
|
context.services.config?.getIdeClient()?.getDetectedIdeDisplayName()) ||
|
||||||
|
'';
|
||||||
|
|
||||||
const info = `
|
let info = `
|
||||||
* **CLI Version:** ${cliVersion}
|
* **CLI Version:** ${cliVersion}
|
||||||
* **Git Commit:** ${GIT_COMMIT_INFO}
|
* **Git Commit:** ${GIT_COMMIT_INFO}
|
||||||
* **Session ID:** ${sessionId}
|
* **Session ID:** ${sessionId}
|
||||||
|
@ -47,6 +51,9 @@ export const bugCommand: SlashCommand = {
|
||||||
* **Model Version:** ${modelVersion}
|
* **Model Version:** ${modelVersion}
|
||||||
* **Memory Usage:** ${memoryUsage}
|
* **Memory Usage:** ${memoryUsage}
|
||||||
`;
|
`;
|
||||||
|
if (ideClient) {
|
||||||
|
info += `* **IDE Client:** ${ideClient}\n`;
|
||||||
|
}
|
||||||
|
|
||||||
let bugReportUrl =
|
let bugReportUrl =
|
||||||
'https://github.com/google-gemini/gemini-cli/issues/new?template=bug_report.yml&title={title}&info={info}';
|
'https://github.com/google-gemini/gemini-cli/issues/new?template=bug_report.yml&title={title}&info={info}';
|
||||||
|
|
Loading…
Reference in New Issue