Problem
project add currently configures a Syncthing folder only. It does not select the Codex tasks whose working directory belongs to that project, so a target Codex desktop can show the project root with No tasks. Imported Windows task paths are also copied without separator-aware mapping, which can prevent correct grouping on macOS.
Expected behavior
- Discover project roots already known to Codex desktop.
- Select all non-archived tasks under an explicitly selected project.
- Publish a portable per-device project catalog.
- Accept the source folder ID on a target device and record source-to-local path mapping.
- Register the accepted local root in Codex desktop.
- Preserve existing Sync2 safety boundaries and avoid copying live databases.
Acceptance criteria
- Project-level task selection is explicit and test-covered.
- Windows/macOS path mapping is separator- and boundary-aware.
- Target import stores the mapped local
cwd.
- Documentation and changelog describe the new workflow.
npm run check passes.
Problem
project addcurrently configures a Syncthing folder only. It does not select the Codex tasks whose working directory belongs to that project, so a target Codex desktop can show the project root withNo tasks. Imported Windows task paths are also copied without separator-aware mapping, which can prevent correct grouping on macOS.Expected behavior
Acceptance criteria
cwd.npm run checkpasses.