fix: Inline Wizard SSH execution by propagating session custom path overrides#345
Merged
pedramamini merged 6 commits intoRunMaestro:mainfrom Feb 12, 2026
Merged
Conversation
… execution The Inline Wizard creates a new ephemeral session but was failing to copy agent configuration overrides (specifically 'customPath') from the active session. This caused failures in SSH remote execution when the agent binary is not in the default PATH. This fix propagates 'customPath', 'customArgs', 'customEnvVars', and 'customModel' to the wizard process, ensuring the correct remote command is executed.
b1fe263 to
608ac80
Compare
Added unit tests to verify that session-level overrides (customPath, customArgs, etc.) are correctly propagated through the useInlineWizard hook and the inlineWizardConversation service to the process spawner.
…t generation The document generation phase of the Inline Wizard also spawns an agent process and was failing to inherit session-level configuration overrides. This fix ensures that 'customPath', 'customArgs', 'customEnvVars', and 'customModel' are passed to the document generation service, allowing it to execute correctly on SSH remotes with custom agent paths.
Added unit tests to verify that session-level overrides are correctly passed to the process manager during the document generation phase.
The document generation service was correctly spawning the agent on the remote host, but the file writing operations (saveDocument) were missing the sshRemoteId parameter. This caused the application to attempt writing files to a local path instead of the remote host, resulting in EACCES errors. This fix ensures sshRemoteId is passed to the IPC handler for file operations.
The generateUniqueSubfolderName function was attempting to list files in the remote path using a local file system call, causing EACCES errors. This change bypasses that check for remote sessions and uses a timestamp-based suffix to ensure uniqueness instead.
Collaborator
|
Thanks for the thorough fix Ryan! Clean propagation of session overrides through the full wizard chain — and the SSH writeDoc + remote subfolder naming fixes were solid catches too. We're rebuilding the RC tonight, so if you get a chance to kick the tires on v0.15.0-RC with your SSH + OpenCode setup, that'd be much appreciated. 🙏 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The Inline Wizard creates a new ephemeral session but was failing to copy agent configuration overrides (specifically 'customPath') from the active session. This caused failures in SSH remote execution when the agent binary is not in the default PATH. This fix propagates 'customPath', 'customArgs', 'customEnvVars', and 'customModel' to the wizard process, ensuring the correct remote command is executed.
Changes
startWizardto acceptsessionOverridesand store them in state.startInlineWizardcalls to extract overrides fromactiveSessionand pass them to the wizard.fixes #343