Skip to content

[Feature]: Native Windows Terminal Support: Bridging the gap for Windows developers #21074

@wx528

Description

@wx528

Problem or Use Case

Description

Currently, hermes-agent primarily supports Unix-like environments (Git Bash, MSYS2, WSL). While effective, this creates a significant barrier for Windows developers who prefer native tools (CMD/PowerShell) or face environment constraints. Relying on translation layers sometimes leads to path resolution issues and extra configuration overhead.

Proposed Change

I have implemented a native terminal support layer for Windows. This change allows hermes-agent to execute commands directly within the Windows native environment.

  • Abstraction Layer: Introduced a terminal adapter to handle OS-specific command execution.

  • Path Handling: Added logic to manage Windows-style paths () vs POSIX paths (/) seamlessly.

  • Non-breaking: This implementation ensures zero impact on existing Unix/Linux/macOS workflows.

Why this is important?

  1. User Base Expansion: Many quantitative traders and automation engineers work in native Windows environments.

  2. Reduced Friction: Users can run the agent without pre-configuring WSL or MSYS2.

  3. Performance: Native execution avoids the overhead of translation layers in certain I/O-bound tasks.

Implementation Status

I have already developed a working prototype on my fork: wx528/hermes-agent:feature/windows-native-terminal. I am ready to submit a PR if the community and maintainers find this direction valuable.

Request for Feedback

I would love to hear the maintainers' thoughts on:

  1. Is native Windows support within the project's long-term roadmap?

  2. Are there specific architectural constraints I should follow to ensure this remains maintainable?

Looking forward to your guidance!

Proposed Solution

  • Abstraction Layer: Introduced a terminal adapter to handle OS-specific command execution.

  • Path Handling: Added logic to manage Windows-style paths () vs POSIX paths (/) seamlessly.

  • Non-breaking: This implementation ensures zero impact on existing Unix/Linux/macOS workflows.

Alternatives Considered

No response

Feature Type

Developer experience (tests, docs, CI)

Scope

Medium (few files, < 300 lines)

Contribution

  • I'd like to implement this myself and submit a PR

Debug Report (optional)

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3Low — cosmetic, nice to havecomp/cliCLI entry point, hermes_cli/, setup wizardduplicateThis issue or pull request already existstool/terminalTerminal execution and process managementtype/featureNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions