Repository navigation
chore: add orca.yaml and .worktreeinclude for worktree setup - #132
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces configuration files for Orca, a worktree-native IDE. It adds .worktreeinclude to specify gitignored local files to copy into new worktrees, and orca.yaml to define the setup script that copies these files and installs dependencies. The review feedback recommends pinning the version of the @pleaseai/worktreeinclude package in the setup script to ensure reproducible and secure setups.
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
[Medium impact] The PR appears safe to merge. SummaryAdds automatic setup for new Orca worktrees.
Both previous, unnumbered findings are fixed. No new actionable issues were found. Reviews (3) · Last reviewed commit: "chore: apply AI code review suggestions" · Reviewed by Greptile |
There was a problem hiding this comment.
All reported issues were addressed across 2 files
Architecture diagram
sequenceDiagram
participant Orca as Orca Worktree Manager
participant Setup as orca.yaml setup script
participant WI as worktreeinclude CLI
participant FS as Filesystem
participant Bun as Bun Installer
Note over Orca,Bun: Orca Worktree Creation Flow
Orca->>Orca: Create new worktree
Orca->>Setup: Run scripts.setup
Note over Setup: Injected env vars:
Note over Setup: ORCA_ROOT_PATH (main checkout)
Note over Setup: ORCA_WORKTREE_PATH (new worktree)
Setup->>Setup: Enable strict mode (set -e)
Setup->>WI: bunx @pleaseai/worktreeinclude ORCA_ROOT_PATH ORCA_WORKTREE_PATH
WI->>FS: Read .worktreeinclude patterns from repo
FS-->>WI: Pattern list (.env*, apps/*/.env, etc.)
loop For each file in worktree
WI->>FS: Check if file matches pattern AND is gitignored
alt File matches pattern AND is gitignored
WI->>FS: Copy from ORCA_ROOT_PATH to ORCA_WORKTREE_PATH
FS-->>WI: File copied
else No match OR not gitignored
WI->>FS: Skip file
end
end
WI-->>Setup: Copy complete (exit 0)
Setup->>Bun: bun install
Bun->>Bun: Resolve dependencies
Bun-->>Setup: Dependencies installed
Setup-->>Orca: Setup script complete
Orca-->>Orca: Worktree ready for use
Reply with feedback, questions, or to request a fix.
Turn on auto-fix | Re-trigger cubic
- Pin @pleaseai/worktreeinclude to 0.1.0 so worktree setup is reproducible. - Gitignore .mcp.local.json so the .worktreeinclude entry is actually copied. - Run setup through mise (trust, install, exec) to use the bun pinned in mise.toml.
|
/gemini review |
There was a problem hiding this comment.
Code Review
This pull request introduces support for Orca worktree setup by adding a .worktreeinclude configuration file, updating .gitignore to include local MCP settings, and creating an orca.yaml setup script. The reviewer suggests adding environment variable validation and explicit directory navigation to the setup script to improve robustness and prevent potential execution errors.
Guard the setup script: set -u aborts on an unset ORCA_* variable, and cd "$ORCA_WORKTREE_PATH" pins every step to the new worktree.
|
/gemini review |
|
There was a problem hiding this comment.
Code Review
This pull request introduces support for Orca worktrees by adding local MCP configuration to .gitignore, defining gitignored files to copy in .worktreeinclude, and creating an orca.yaml setup script that uses mise and bun to prepare new worktrees. Feedback suggests adding a robustness fallback in orca.yaml to handle environments where mise is not installed, allowing the script to fall back to global bun and bunx commands.



Summary
Adds Orca worktree setup so a new worktree is ready to use without manual steps:
orca.yaml—scripts.setupcopies gitignored local files from the main checkout viabunx @pleaseai/worktreeinclude, then runsbun install..worktreeinclude— lists the gitignored files to copy (.env*, per-app/package.env,.claude/settings.local.json,.mcp.local.json,.turbo/config.json). A file is copied only if it matches here and is gitignored.No source, build, or CI changes.
Related issue
None.
Checklist
bun run test) — n/a, config onlybun run lint)BREAKING CHANGE:note is includedSummary by cubic
Adds Orca worktree setup so a new worktree is ready to use without manual steps.
orca.yamlruns setup throughmise(trust, install, exec) so it uses thebunpinned inmise.toml, copies gitignored local files from the main checkout via@pleaseai/worktreeinclude@0.1.0(pinned for reproducibility), then runsbun install; the script aborts on unsetORCA_*variables and pins every step to the worktree path..worktreeincludelists which gitignored files get copied (.env*, app/package.envfiles,.claude/settings.local.json,.mcp.local.json,.turbo/config.json); a file is copied only if it's listed here and gitignored..gitignorenow includes/.mcp.local.jsonso that entry is actually copied.No source, build, or CI changes.
Written for commit 8258aca. Summary will update on new commits.