These instructions apply to the Codex Workspace and to the Workspace Hub repository unless a deeper repo-specific AGENTS.md overrides them.
For baseline expectations that should be visible to any newly added repo in this workspace, also use:
docs/09-new-repo-baseline.md
Maintain a clean, high-performance local workspace for mixed repository types.
Prioritise:
- clear structure
- predictable conventions
- low duplication
- portability of individual repos
- safe local runtime behaviour
- practical support for mixed stacks
Never create one shared node_modules or equivalent dependency directory across unrelated repositories.
Favour shared caches and stores under the workspace cache/ folder.
Every repository must remain runnable on its own terms.
ServBay is a convenience layer and optional front door, not a required dependency for all repos.
Vite, Three.js, WebGL, and similar repos usually work best on their own local ports unless explicitly configured otherwise.
Do not replace Local by default for existing WordPress projects already using it successfully.
Prefer lightweight per-repo metadata files such as .workspace/project.json where launch behaviour or preview mode should be explicit.
The workspace root is the folder named:
Codex Workspace/
It may live anywhere on disk.
Expected top-level folders:
docs/repos/tools/cache/shared/
The workspace-hub repo should:
- scan sibling repos under
repos/ - read or infer repo metadata
- show runtime status
- allow start/stop/open actions
- support both direct local previews and ServBay-linked previews
Do not overcomplicate v1.
Preferred mode:
external- usually managed by Local or mapped in ServBay
Preferred mode:
direct
Use repo-native runtime and only proxy through ServBay where it adds clear value.
When classifying repos, use file-based inference carefully.
Signals:
vite.config.*→ Vite- Three.js dependency → Three.js/WebGL
- WordPress structure → WordPress
index.htmlonly → staticcomposer.json+ PHP entrypoints → PHP
Where uncertain, classify conservatively and allow manual override.
When creating new supporting files, prefer:
docs/for canonical cross-workspace handover and tooling docsshared/for workspace-facing metadatatools/templates/for starter templates.workspace/project.jsonfor per-repo runtime metadata
Prefer:
- readable, modular structure
- small components
- explicit process/runtime handling
- clear status messages
- graceful failure states
Avoid:
- clever hidden behaviour
- assuming all repos use the same package manager
- assuming proxy mode is always better
- hard-coding unstable absolute paths beyond the agreed workspace root
When there is no explicit manifest:
- classify cautiously
- default frontend-style repos to
direct - default WP projects already managed elsewhere to
external - do not auto-run heavy install steps without clear reason
When a repo is first added under repos/, assume the baseline in docs/09-new-repo-baseline.md applies unless that repo already has clearer local instructions.
Design the workspace so it can grow, but keep implementation practical.
The immediate target is:
- a strong local workspace structure
- a useful Workspace Hub v1
- optional ServBay integration
- reliable daily use