feat: migrate data/projects dirs from orchestrator to agent-workspace#952
Merged
web3dev1337 merged 3 commits intomainfrom Mar 20, 2026
Merged
feat: migrate data/projects dirs from orchestrator to agent-workspace#952web3dev1337 merged 3 commits intomainfrom
web3dev1337 merged 3 commits intomainfrom
Conversation
- All 26 server files now use centralized getAgentWorkspaceDir() and getProjectsRoot() from server/utils/pathUtils.js instead of hardcoded ~/.orchestrator and ~/GitHub paths - Projects root moved from ~/GitHub to ~/.agent-workspace/projects/ (configurable via AGENT_WORKSPACE_PROJECTS_DIR env var) - Data directory moved from ~/.orchestrator to ~/.agent-workspace (configurable via AGENT_WORKSPACE_DIR env var) - Auto-migration: on first run, if ~/.orchestrator exists and ~/.agent-workspace doesn't, the directory is renamed automatically with a symlink left at the old path for backward compat - Per-repo config files: .agent-workspace-config.json is the new name, with automatic fallback to .orchestrator-config.json for existing repos - Legacy scan: set LEGACY_GITHUB_SCAN=1 to also scan ~/GitHub for repos (off by default; for users with existing ~/GitHub worktree setups) - scan-repos, configDiscovery, greenfield, clone, and all data services updated to use the new centralized paths Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…ename - Renamed check IDs: orchestrator-home → agent-workspace-home - Renamed repair action: ensure-orchestrator-home → ensure-agent-workspace-home - Renamed repair action: ensure-github-root → ensure-projects-root - Fixed githubRoot → projectsRoot reference in diagnostics return value - Updated diagnostics test assertions to match new IDs and directory names - Diagnostics functions respect homeDir param override for testing Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
14 tasks
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
~/.orchestratorto~/.agent-workspaceacross 26 server files~/GitHubto~/.agent-workspace/projects/— dedicated managed directory with zero ambiguitygetAgentWorkspaceDir()andgetProjectsRoot()utilities inserver/utils/pathUtils.js~/.orchestrator→~/.agent-workspaceon first run (rename + symlink for backward compat).agent-workspace-config.jsonwith automatic.orchestrator-config.jsonfallbackLEGACY_GITHUB_SCAN=1env var to optionally also scan~/GitHubfor repos (off by default)AGENT_WORKSPACE_DIRandAGENT_WORKSPACE_PROJECTS_DIRenv varsProblem
The Windows NSIS installer error "Repository root is missing master/main directory: C:\Users\AB\GitHub\epic-survivors" was caused by scanning ~/GitHub where flat-cloned repos exist. By using a dedicated
~/.agent-workspace/projects/directory, every managed repo follows the master/ worktree convention with zero edge cases.Files changed (26)
All server-side services updated to use centralized path utilities instead of hardcoded
~/.orchestratorand~/GitHubreferences.Test plan
node --check server/index.jspasses🤖 Generated with Claude Code