Workspace y proyecto
Un taller contiene muchos proyectos y muchas carpetas compartidas. Solo el taller se vincula; los proyectos se registran.
Qué es#
Tres cosas distintas, fáciles de confundir porque todas son carpetas.
| Qué es | Cómo aparece | Cuántos | |
|---|---|---|---|
| Workspace (taller) | La carpeta que contiene orch.yaml y .orch/. Todo lo que orch gobierna vive debajo. |
orch setup |
Uno por carpeta vinculada; una máquina puede tener varios |
| Proyecto | Un repositorio git que orch conoce, por ruta y nombre corto | orch project add <path> |
Muchos — el plan fija orch.projects.max |
| Carpeta compartida | Una carpeta registrada bajo un bucket de lenguaje, donde rige la ley de locks y símbolos | orch shared add <path> --lang go |
Muchas, agrupadas por lenguaje |
Registrar nunca crea una carpeta. Tanto orch project add como orch shared add lo dicen en su propia ayuda: does not create folders.
mi-taller/ <- workspace: orch.yaml + .orch/
├── orch.yaml proyectos y buckets compartidos registrados
├── .orch/ runtime: orch.db, agents/, worktrees
├── .workflow/ BOARD.md, RESUME.md
├── shared/go/ <- carpeta compartida (locks + orch:export)
├── products/billing/ <- proyecto (su propio repositorio git)
└── products/portal/ <- proyecto (su propio repositorio git)
Por qué existe#
Porque la unidad de gobierno y la unidad de trabajo no tienen el mismo tamaño. Los locks, el registro de símbolos, el bus y la base de datos de runtime son de todo el taller — tienen que serlo, o dos agentes en dos repositorios no podrían verse. Pero el Chair se elige por proyecto git, y el worktree de un worker es una rama en un repositorio. N repositorios significan N entradas de orch project add y hasta N Chairs trabajando a la vez.
El vínculo es deliberado y basado en archivos, pero no solo en archivos: un repositorio clonado puede traer su propio orch.yaml y su propio .orch/, así que los archivos por sí solos nunca vinculan un workspace a tu máquina.
Cómo se relaciona con el resto#
- Fuera de un workspace vinculado orch corre en modo suelto. El gateway y las optimizaciones locales funcionan; los locks, el bus y el control de proyectos no, y las herramientas del protocolo compartido responden con un mensaje de omisión en lugar de un error.
orch workspaceimprime el vínculo resuelto para la carpeta actual: ubicación del binario, raíz del workspace, archivo de configuración y directorio de runtime.orch workspace <path>inicializa otra carpeta como taller.orch homemuestra la otra mitad: el machine home, compartido por todos los workspaces de la máquina, donde viven la identidad y las llaves de proveedor.- Registrar una carpeta compartida también la siembra e indexa:
orch shared addreportaseeded tags=… files=… scanned=… skipped_no_ast=… indexed=…, porque el registro de símbolos tiene que conocer la carpeta antes de que la ley del código compartido signifique algo.
Aquí no hay nada que ejecutar#
Esta página describe un layout, no un procedimiento. Los comandos que lo crean están en el Inicio rápido; la ley que rige dentro de una carpeta compartida está en Ley del código compartido.