From cf131e9754a05058c7ce311edf0ef597b57a1729 Mon Sep 17 00:00:00 2001 From: Rhuan Barreto Date: Wed, 29 Apr 2026 12:04:47 +0200 Subject: [PATCH 1/2] fix(init): hide opencode user-scope path from init output MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The opencode auto-install success path was returning the resolved absolute agents directory as `PluginResult.detail`, which the init summary then printed to stdout. This leaked the user's home directory path unnecessarily — the "(user-scope)" placeholder already conveys that the install target is outside the project tree. Signed-off-by: Rhuan Barreto --- src/helpers/init-project.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/helpers/init-project.ts b/src/helpers/init-project.ts index 17036f8e..15d06185 100644 --- a/src/helpers/init-project.ts +++ b/src/helpers/init-project.ts @@ -304,11 +304,11 @@ async function tryInstallPlugin(editor: EditorTarget): Promise { try { await installOpencodePlugin(credentials.token); - return { - installed: true, - autoInstalled: true, - detail: opencodeAgentsDir(), - }; + // Intentionally omit `detail` — the resolved user-scope path is an + // implementation detail of the install. The init summary already shows + // an "(user-scope)" placeholder; surfacing the absolute path here is + // noise and leaks the user's home directory into stdout. + return { installed: true, autoInstalled: true }; } catch (error) { // Surface as a non-auto install so init routes through // `printManualInstructions("opencode", detail)`, which prints a From bc560f7be7b1e298678e9d1be89104dc6d8a63d3 Mon Sep 17 00:00:00 2001 From: Rhuan Barreto Date: Wed, 29 Apr 2026 12:06:45 +0200 Subject: [PATCH 2/2] chore: remove verbose comment Signed-off-by: Rhuan Barreto --- src/helpers/init-project.ts | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/helpers/init-project.ts b/src/helpers/init-project.ts index 15d06185..c63b3279 100644 --- a/src/helpers/init-project.ts +++ b/src/helpers/init-project.ts @@ -304,10 +304,6 @@ async function tryInstallPlugin(editor: EditorTarget): Promise { try { await installOpencodePlugin(credentials.token); - // Intentionally omit `detail` — the resolved user-scope path is an - // implementation detail of the install. The init summary already shows - // an "(user-scope)" placeholder; surfacing the absolute path here is - // noise and leaks the user's home directory into stdout. return { installed: true, autoInstalled: true }; } catch (error) { // Surface as a non-auto install so init routes through