mirror of
https://github.com/getpaseo/paseo.git
synced 2026-07-29 12:01:31 +00:00
* fix(opencode): prevent indexing the entire home directory Paseo launches opencode serve with cwd=os.homedir() and refreshes the global provider snapshot with directory=/Users/admin. OpenCode treats that as a workspace and starts location services + bigram indexing for the entire home tree, causing ~466% CPU and ~4GB RAM usage. - Use a neutral scratch directory as the opencode serve cwd. - Use a separate scratch directory for global provider catalog refresh so model/mode discovery no longer triggers home directory indexing. Fixes high CPU/RAM when Paseo starts opencode with no explicit project. * fix(opencode): use realpath-aware matcher for home detection in catalog refresh Switch the home-directory check in fetchCatalog from a string-based path.resolve() comparison to createRealpathAwarePathMatcher, so we catch macOS /private/var/... aliases, symlinks, trailing separators, and Windows casing — consistent with the rest of opencode-agent.ts. Also: - Hoist the matcher to module scope so each fetchCatalog call doesn't rebuild it (the matcher runs realpathSync twice on construction). - Log a debug line when we rewrite the cwd to the scratch path, so it's easy to diagnose missing per-directory config in catalog scope. - Update opencode-agent.test.ts to expect the scratch directory when cwd === os.homedir(), with a comment pointing to the rationale. * fix(opencode): isolate helper server home * fix(opencode): pass semantic global catalog scope * fix(opencode): release catalog acquisition on home resolution failure --------- Co-authored-by: rex-chang <rex-chang@users.noreply.github.com> Co-authored-by: Mohamed Boudra <boudra.moha@gmail.com>