mirror of
https://github.com/google-gemini/gemini-cli.git
synced 2026-03-18 01:51:20 -07:00
feat: update SDD rebranding, storage migration, and extension conflict handling
- Renamed 'Conductor' to 'Spec-Driven Development (SDD)'. - Migrated artifact storage to '.gemini/specs/'. - Updated commands to '/spec <action>'. - Added Plan Mode and SDD workflow notes to README. - Replaced automatic extension migration with a warning prompt to preserve user files. - Added .gitignore exemption for .gemini/specs/ in setup.
This commit is contained in:
@@ -671,26 +671,10 @@ Would you like to attempt to install via "git clone" instead?`,
|
||||
(e) => e.name === builtinExt.name,
|
||||
);
|
||||
if (existingIdx !== -1) {
|
||||
// If the user has a manually installed version of the builtin extension, we migrate them.
|
||||
const manualExt = builtExtensions[existingIdx];
|
||||
const storage = new ExtensionStorage(
|
||||
manualExt.installMetadata?.type === 'link'
|
||||
? manualExt.name
|
||||
: path.basename(manualExt.path),
|
||||
);
|
||||
try {
|
||||
await fs.promises.rm(storage.getExtensionDir(), {
|
||||
recursive: true,
|
||||
force: true,
|
||||
});
|
||||
debugLogger.debug(
|
||||
`Migrated to built-in extension: ${builtinExt.name}. Removed manual installation.`,
|
||||
);
|
||||
} catch (e) {
|
||||
debugLogger.warn(
|
||||
`Failed to clean up manual installation of ${builtinExt.name}: ${getErrorMessage(e)}`,
|
||||
);
|
||||
}
|
||||
// If the user has a manually installed version of the builtin extension, we warn them.
|
||||
const message = `Extension "${builtinExt.name}" is now built-in. Your manual installation at "${builtExtensions[existingIdx].path}" is being ignored. Please run "gemini extensions uninstall ${builtinExt.name}" to clean up.`;
|
||||
debugLogger.warn(message);
|
||||
coreEvents.emitFeedback('warning', message);
|
||||
builtExtensions[existingIdx] = builtinExt;
|
||||
} else {
|
||||
// Check if this is the new 'sdd' extension and if 'conductor' is installed.
|
||||
|
||||
Reference in New Issue
Block a user