Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add shell override configuration #1121

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

hodlen
Copy link

@hodlen hodlen commented Feb 22, 2025

Fixes macOS zsh prompt parsing issue (#237)

Description

This PR addresses an issue with terminal prompt parsing on macOS when using zsh. The fix involves an approach to set the shell for Roo Code to bash for terminal integration, which avoids the complexity of zsh prompt handling and not forcing users to switch to bash in VS Code for the fix.

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature
  • Breaking change
  • This change requires a documentation update

How Has This Been Tested?

The fix has been tested by:

  1. Verifying terminal integration works correctly on macOS with default shell set to zsh
  2. Confirming command execution and output parsing work reliably with bash override

Checklist:

  • My code follows the patterns of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation

Additional context

This change specifically targets macOS systems where zsh is the default shell (macOS Catalina and newer). It should work well on other platforms yet not tested. The configuration update might need documentations.

Related Issues

Fixes #237


Important

Add configuration to override default shell paths for macOS, Linux, and Windows, addressing macOS zsh prompt parsing issue.

  • Configuration:
    • Adds roo-cline.shell configuration in package.json to override shell paths for macOS, Linux, and Windows.
  • Terminal Integration:
    • Updates TerminalRegistry.ts to use getAutomationShellConfig() for shell path and args.
    • Implements getShellConfigKey() to determine platform-specific shell configuration keys.
  • Shell Utilities:
    • Modifies TerminalProfile in shell.ts to include args.
    • Refactors shell retrieval logic to support new configuration.

This description was created by Ellipsis for 06f1e81. It will automatically update as commits are pushed.

Fixes macOS zsh prompt parsing issue (RooVetGit#237)
by setting the shell override to bash for the
terminal integration.
Copy link

changeset-bot bot commented Feb 22, 2025

⚠️ No Changeset found

Latest commit: 06f1e81

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@hodlen hodlen marked this pull request as ready for review February 23, 2025 08:42
@dosubot dosubot bot added size:M This PR changes 30-99 lines, ignoring generated files. bug Something isn't working labels Feb 23, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working size:M This PR changes 30-99 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

macos, shell integration error
1 participant