Support custom workspace locations per repository
Helmor currently creates new worktree workspaces under its default workspace directory, such as:
~/helmor/workspaces/<repo>/<workspace-name>
This works for most standalone repositories, but not for projects that must stay under a specific parent directory.
One example is Mi Home plugin development. A Mi Home plugin project usually needs to live inside the Xiaomi/Mi Home SDK structure, for example:
/path/to/miot-plugin-sdk/projects/<plugin-id>
SDK tooling may rely on this layout for project discovery, build scripts, debugging, or resource resolution. If Helmor creates the workspace under ~/helmor/workspaces/, the worktree is no longer inside the SDK structure, so the project may not build or run correctly.
Mi Home plugins are only one example. The same issue can happen with SDK plugins, monorepo packages, embedded projects, game engine plugins, or any project whose tooling depends on a fixed local directory layout.
Proposal
Allow each repository to configure a custom workspace root directory.
When configured, new worktree workspaces for that repository should be created under that directory instead of Helmor's default workspace location.
Example:
Custom workspace root:
/path/to/miot-plugin-sdk/projects
New Helmor workspace:
/path/to/miot-plugin-sdk/projects/<workspace-name>
Expected behavior
- Repositories without a custom workspace root keep the current default behavior.
- Repositories with a custom workspace root create new worktree workspaces under that path.
- Existing workspaces are not moved when the setting changes.
- The UI explains that this setting only affects future workspaces.
- Invalid paths show clear, actionable errors.
Why this matters
This lets Helmor keep its isolated worktree workflow while supporting projects that depend on a specific filesystem layout.
Support custom workspace locations per repository
Helmor currently creates new worktree workspaces under its default workspace directory, such as:
This works for most standalone repositories, but not for projects that must stay under a specific parent directory.
One example is Mi Home plugin development. A Mi Home plugin project usually needs to live inside the Xiaomi/Mi Home SDK structure, for example:
SDK tooling may rely on this layout for project discovery, build scripts, debugging, or resource resolution. If Helmor creates the workspace under
~/helmor/workspaces/, the worktree is no longer inside the SDK structure, so the project may not build or run correctly.Mi Home plugins are only one example. The same issue can happen with SDK plugins, monorepo packages, embedded projects, game engine plugins, or any project whose tooling depends on a fixed local directory layout.
Proposal
Allow each repository to configure a custom workspace root directory.
When configured, new worktree workspaces for that repository should be created under that directory instead of Helmor's default workspace location.
Example:
Expected behavior
Why this matters
This lets Helmor keep its isolated worktree workflow while supporting projects that depend on a specific filesystem layout.