Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
158 changes: 79 additions & 79 deletions coast-guard/src/generated/docs-manifest.json

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/es/GETTING_STARTED.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Part of the [Coasts Video Course](learn-coasts-videos/README.md).
## Instalación

```bash
curl -fsSL https://coasts.dev/install | sh
eval "$(curl -fsSL https://coasts.dev/install)"
coast daemon install
```

Expand Down
2 changes: 1 addition & 1 deletion docs/es/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ Part of the [Coasts Video Course](learn-coasts-videos/README.md).

## Instalación

- `curl -fsSL https://coasts.dev/install | sh`
- `eval "$(curl -fsSL https://coasts.dev/install)"`
- `coast daemon install`

*Si decides no ejecutar `coast daemon install`, eres responsable de iniciar el daemon manualmente con `coast daemon start` cada vez.*
Expand Down
13 changes: 13 additions & 0 deletions docs/es/SKILLS_FOR_HOST_AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,19 @@ Before guessing about Coast behavior, explore the docs:
coast docs --path concepts_and_terminology/BUILDS.md
coast search-docs "your question here" # semantic search

## Troubleshooting

If you run into issues with harness configuration (e.g. worktrees not being
found, `coast lookup` not matching), read the troubleshooting section of the
relevant harness doc:

coast docs --path harnesses/CLAUDE_CODE.md
coast docs --path harnesses/CODEX.md
coast docs --path harnesses/CONDUCTOR.md
coast docs --path harnesses/CURSOR.md
coast docs --path harnesses/T3_CODE.md
coast docs --path harnesses/SHEP.md

## Rules

- Always run `coast lookup` before your first runtime command in a session.
Expand Down
6 changes: 3 additions & 3 deletions docs/es/coastfiles/WORKTREE_DIR.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ worktree_dir = ["/shared/worktrees", ".worktrees"]

### Patrones glob (externos)

Las rutas externas pueden contener metacaracteres glob (`*`, `?`, `[...]`). Coast los expande en tiempo de ejecución contra el sistema de archivos del host, creando un bind mount para cada directorio coincidente.
Las rutas externas pueden contener metacaracteres glob (`*`, `?`, `[...]`).

```toml
worktree_dir = [".worktrees", "~/.shep/repos/*/wt"]
Expand All @@ -62,9 +62,9 @@ Sintaxis glob compatible:
- `[abc]` — coincide con cualquier carácter del conjunto
- `[!abc]` — coincide con cualquier carácter que no esté en el conjunto

La expansión glob ocurre en todos los lugares donde se resuelven los directorios de worktree: creación del contenedor, assign, start, lookup y el watcher de git. Las coincidencias se ordenan para un orden determinista. Si un glob no coincide con ningún directorio, se omite silenciosamente.
Coast monta la **raíz del glob** — el prefijo del directorio antes del primer componente con comodín — en lugar de cada coincidencia individual. Para `~/.shep/repos/*/wt`, la raíz del glob es `~/.shep/repos/`. Esto significa que los directorios nuevos que aparezcan después de la creación del contenedor (por ejemplo, un nuevo directorio hash creado por Shep) son accesibles automáticamente dentro del contenedor sin necesidad de recrearlo. Las asignaciones dinámicas a worktrees bajo nuevas coincidencias del glob funcionan de inmediato.

Como ocurre con otras rutas externas, el contenedor debe recrearse (`coast run`) después de agregar un patrón glob para que el bind mount surta efecto.
Agregar un patrón glob *nuevo* al Coastfile sigue requiriendo `coast run` para crear el bind mount. Pero una vez que el patrón existe, los nuevos directorios que coincidan con él se detectan automáticamente.

## Cómo funcionan los directorios externos

Expand Down
11 changes: 11 additions & 0 deletions docs/es/harnesses/CLAUDE_CODE.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,10 @@ capas para Coasts:
- `.claude/commands/coasts.md` solo cuando quieras un archivo de comando como
punto de entrada adicional

```youtube
yjMFVoOiAW0
```

## Configuración

Agrega `.claude/worktrees` a `worktree_dir`:
Expand Down Expand Up @@ -131,6 +135,13 @@ api = "hot"
- `.claude/worktrees/` — worktrees de Claude Code
- `~/.codex/worktrees/` — worktrees de Codex si también usas Codex en este repo

## Solución de problemas

- **Worktree no encontrado** — Si Coasts espera que exista un worktree pero no puede
encontrarlo, verifica que el `worktree_dir` del Coastfile incluya
`.claude/worktrees`. Consulta [Worktree Directories](../coastfiles/WORKTREE_DIR.md)
para la sintaxis y los tipos de rutas.

## Limitaciones

- Si duplicas el mismo flujo de trabajo `/coasts` entre `CLAUDE.md`,
Expand Down
34 changes: 24 additions & 10 deletions docs/es/harnesses/CODEX.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,10 @@ De la [documentación de Codex](https://developers.openai.com/codex/app/worktree

Debido a que estos worktrees viven fuera de la raíz del proyecto, Coasts necesita una configuración explícita para descubrirlos y montarlos.

```youtube
MDidmMQtaqU
```

## Setup

Agrega `~/.codex/worktrees` a `worktree_dir`:
Expand All @@ -47,7 +51,7 @@ coast run my-instance

La lista de worktrees se actualiza de inmediato (Coasts lee el nuevo Coastfile), pero asignar a un worktree de Codex requiere el bind mount dentro del contenedor.

## Dónde va la guía de Coasts
## Where Coasts guidance goes

Usa el archivo de instrucciones del proyecto de Codex y la disposición compartida de skills para trabajar con Coasts:

Expand All @@ -56,7 +60,8 @@ Usa el archivo de instrucciones del proyecto de Codex y la disposición comparti
- Codex expone esa skill como el comando `/coasts`
- si usas metadatos específicos de Codex, mantenlos junto a la skill en
`.agents/skills/coasts/agents/openai.yaml`
- no crees un archivo de comandos del proyecto separado solo para documentación sobre Coasts; la skill es la superficie reutilizable
- no crees un archivo de comandos del proyecto separado solo para documentación sobre Coasts; la
skill es la superficie reutilizable
- si este repositorio también usa Cursor o Claude Code, mantén la skill canónica en
`.agents/skills/` y expónla desde allí. Consulta
[Multiple Harnesses](MULTIPLE_HARNESSES.md) y
Expand All @@ -75,22 +80,24 @@ policy:
allow_implicit_invocation: false
```

Eso mantiene la skill visible en Codex con una etiqueta más agradable y hace que `/coasts` sea un comando explícito. Solo agrega `dependencies.tools` si la skill también necesita servidores MCP u otra integración de herramientas administrada por OpenAI.
Eso mantiene la skill visible en Codex con una etiqueta más agradable y hace que `/coasts` sea un
comando explícito. Solo agrega `dependencies.tools` si la skill también necesita servidores MCP
u otra integración de herramientas administrada por OpenAI.

## Qué hace Coasts
## What Coasts does

- **Run** -- `coast run <name>` crea una nueva instancia de Coast a partir de la compilación más reciente. Usa `coast run <name> -w <worktree>` para crear y asignar un worktree de Codex en un solo paso. Consulta [Run](../concepts_and_terminology/RUN.md).
- **Bind mount** -- Al crear el contenedor, Coasts monta
`~/.codex/worktrees` dentro del contenedor en `/host-external-wt/{index}`.
- **Descubrimiento** -- `git worktree list --porcelain` está limitado al repositorio, por lo que solo aparecen los worktrees de Codex que pertenecen al proyecto actual, aunque el directorio contenga worktrees de muchos proyectos.
- **Nomenclatura** -- Los worktrees con HEAD desacoplado se muestran como su ruta relativa dentro del directorio externo (`a0db/my-app`, `eca7/my-app`). Los worktrees basados en ramas muestran el nombre de la rama.
- **Asignación** -- `coast assign` vuelve a montar `/workspace` desde la ruta del bind mount externo.
- **Sincronización de archivos ignorados por Git** -- Se ejecuta en el sistema de archivos del host con rutas absolutas, funciona sin el bind mount.
- **Detección de huérfanos** -- El watcher de git escanea directorios externos
- **Discovery** -- `git worktree list --porcelain` está limitado al repositorio, por lo que solo aparecen los worktrees de Codex que pertenecen al proyecto actual, aunque el directorio contenga worktrees de muchos proyectos.
- **Naming** -- Los worktrees con HEAD desacoplado se muestran como su ruta relativa dentro del directorio externo (`a0db/my-app`, `eca7/my-app`). Los worktrees basados en ramas muestran el nombre de la rama.
- **Assign** -- `coast assign` vuelve a montar `/workspace` desde la ruta del bind mount externo.
- **Gitignored sync** -- Se ejecuta en el sistema de archivos del host con rutas absolutas, funciona sin el bind mount.
- **Orphan detection** -- El watcher de git escanea directorios externos
recursivamente, filtrando por punteros gitdir de `.git`. Si Codex elimina un
worktree, Coasts desasigna automáticamente la instancia.

## Ejemplo
## Example

```toml
[coast]
Expand All @@ -113,6 +120,13 @@ api = "hot"
- `.claude/worktrees/` -- Claude Code (local, sin manejo especial)
- `~/.codex/worktrees/` -- Codex (externo, montado con bind)

## Troubleshooting

- **Worktree not found** — Si Coasts espera que exista un worktree pero no
puede encontrarlo, verifica que `worktree_dir` en el Coastfile incluya
`~/.codex/worktrees`. Consulta [Directorios de Worktree](../coastfiles/WORKTREE_DIR.md)
para la sintaxis y los tipos de ruta.

## Limitations

- Codex puede limpiar worktrees en cualquier momento. La detección de huérfanos en Coasts maneja esto correctamente.
21 changes: 21 additions & 0 deletions docs/es/harnesses/CONDUCTOR.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,10 @@ También puedes obtener el contenido de la skill desde la CLI: `coast skills-pro
Después de la configuración, **cierra por completo y vuelve a abrir Conductor** para que los cambios surtan efecto. Si
el comando `/coasts` no aparece, cierra y vuelve a abrir otra vez.

```youtube
mbwilJHlanQ
```

## Configuración

Agrega `~/conductor/workspaces/<project-name>` a `worktree_dir`. A diferencia de Codex (que almacena todos los proyectos bajo un único directorio plano), Conductor anida los worktrees bajo un subdirectorio por proyecto, por lo que la ruta debe incluir el nombre del proyecto. En el ejemplo de abajo, `my-app` debe coincidir con el nombre real de la carpeta bajo `~/conductor/workspaces/` para tu repositorio.
Expand All @@ -31,6 +35,8 @@ worktree_dir = [".worktrees", "~/conductor/workspaces/my-app"]

Conductor te permite configurar la ruta de los espacios de trabajo por repositorio, por lo que el valor predeterminado `~/conductor/workspaces` puede no coincidir con tu configuración. Revisa la configuración de tu repositorio de Conductor para encontrar la ruta real y ajústala en consecuencia — el principio es el mismo sin importar dónde se encuentre el directorio.

Si tienes más de un proyecto de Conductor configurado para el mismo repositorio, cada proyecto crea espacios de trabajo bajo su propio subdirectorio (por ejemplo, `~/conductor/workspaces/my-app-frontend`, `~/conductor/workspaces/my-app-backend`). La entrada `worktree_dir` debe coincidir con el nombre del directorio que Conductor realmente crea, por lo que puede que necesites varias entradas o actualizar la ruta al cambiar entre proyectos.

Coasts expande `~` en tiempo de ejecución y trata cualquier ruta que comience con `~/` o `/` como externa. Consulta [Directorios de Worktree](../coastfiles/WORKTREE_DIR.md) para
más detalles.

Expand Down Expand Up @@ -97,6 +103,21 @@ api = "hot"

- `~/conductor/workspaces/my-app/` — Conductor (externo, montado con bind; reemplaza `my-app` por el nombre de la carpeta de tu repositorio)

## Solución de problemas

- **Worktree no encontrado** — Si Coasts espera que exista un worktree pero no puede
encontrarlo, verifica que `worktree_dir` del Coastfile incluya la ruta correcta
`~/conductor/workspaces/<project-name>`. El segmento `<project-name>`
debe coincidir con el nombre real de la carpeta que Conductor crea bajo
`~/conductor/workspaces/`. Consulta
[Directorios de Worktree](../coastfiles/WORKTREE_DIR.md) para la sintaxis y los tipos
de ruta.
- **Múltiples proyectos para el mismo repositorio** — Si hay más de un proyecto de Conductor
configurado para el mismo repositorio, cada proyecto crea espacios de trabajo bajo
un subdirectorio diferente. `worktree_dir` debe actualizarse para coincidir con el
directorio que Conductor crea dinámicamente para el proyecto activo. Si cambias
entre proyectos, la ruta cambia y el Coastfile debe reflejarlo.

## Variables de entorno de Conductor

- Evita depender de variables de entorno específicas de Conductor (p. ej.,
Expand Down
13 changes: 13 additions & 0 deletions docs/es/harnesses/CURSOR.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Cursor

```youtube
ZmbcZ_QfO6w
```

## Configuración rápida

Requiere el [Coast CLI](../GETTING_STARTED.md). Copia este prompt en el chat de tu
Expand Down Expand Up @@ -170,6 +174,15 @@ api = "hot"
- `~/.codex/worktrees/` — worktrees de Codex
- `~/.cursor/worktrees/my-app/` — worktrees de Cursor Parallel Agent

## Troubleshooting

- **Worktree no encontrado** — Si Coasts espera que exista un worktree pero no puede
encontrarlo, verifica que el `worktree_dir` del Coastfile incluya
`~/.cursor/worktrees/<project-name>` y que `<project-name>` coincida con el
nombre real de la carpeta bajo `~/.cursor/worktrees/`. Consulta
[Worktree Directories](../coastfiles/WORKTREE_DIR.md) para la sintaxis y los
tipos de ruta.

## Limitaciones

- Si no estás usando Cursor Parallel Agents, no añadas
Expand Down
4 changes: 4 additions & 0 deletions docs/es/harnesses/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Arneses

```youtube
AWhaeam9R7o
```

Cada arnés crea worktrees de git en una ubicación diferente. En Coasts, el
arreglo [`worktree_dir`](../coastfiles/WORKTREE_DIR.md) le indica dónde buscar --
incluyendo rutas externas como `~/.codex/worktrees` que requieren montajes
Expand Down
8 changes: 8 additions & 0 deletions docs/es/harnesses/SHEP.md
Original file line number Diff line number Diff line change
Expand Up @@ -115,3 +115,11 @@ Puntos clave:
- Repositorios diferentes = hashes diferentes
- Los separadores de ruta se normalizan a `/` antes de aplicar hash
- El hash se puede encontrar mediante `shep feat show <feature-id>` o `ls ~/.shep/repos`

## Solución de problemas

- **Worktree no encontrado** — Si Coasts espera que exista un worktree pero no puede
encontrarlo, verifica que el `worktree_dir` del Coastfile incluya
`~/.shep/repos/*/wt`. El patrón glob debe coincidir con la estructura de directorios de Shep.
Consulta [Directorios de Worktree](../coastfiles/WORKTREE_DIR.md) para la sintaxis y
los tipos de rutas.
9 changes: 9 additions & 0 deletions docs/es/harnesses/T3_CODE.md
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,15 @@ api = "hot"
- `~/.codex/worktrees/` — Codex (externo, con bind mount)
- `~/.t3/worktrees/my-app/` — T3 Code (externo, con bind mount; reemplaza `my-app` con el nombre de la carpeta de tu repositorio)

## Solución de problemas

- **Worktree not found** — Si Coasts espera que exista un worktree pero no puede
encontrarlo, verifica que `worktree_dir` en el Coastfile incluya
`~/.t3/worktrees/<project-name>` y que `<project-name>` coincida con el
nombre real de la carpeta bajo `~/.t3/worktrees/`. Consulta
[Worktree Directories](../coastfiles/WORKTREE_DIR.md) para la sintaxis y los tipos
de ruta.

## Limitaciones

- Evita depender de variables de entorno específicas de T3 Code para la configuración en tiempo de ejecución dentro de Coasts. Coasts gestiona puertos, rutas de espacio de trabajo y descubrimiento de servicios de forma independiente — usa `[ports]` en Coastfile y `coast exec` en su lugar.
11 changes: 11 additions & 0 deletions docs/es/installation_prompt.txt
Original file line number Diff line number Diff line change
Expand Up @@ -236,3 +236,14 @@ Estrategia de assign — qué ocurre al cambiar un Coast entre worktrees:
8. Ejecuta `coast build`. Si falla, revisa el error y consulta la documentación (`coast search-docs "<error description>"`) para solucionar problemas.
9. Ejecuta `coast run dev-1`. Si falla, revisa el error y consulta la documentación.
10. Ejecuta `coast ui` para abrir el panel de Coastguard (esto es para el usuario cuando hayas terminado).
11. **Configura las skills de los harnesses (Recomendado).** Ahora que el Coastfile está configurado y Coast está en ejecución, es muy recomendable configurar las skills de Coast para los harnesses que el usuario seleccionó en el paso 3. Estas skills enseñan al agente de IA en cada harness cómo usar Coasts — sin ellas, el harness no sabrá cómo ejecutar pruebas, leer logs ni gestionar instancias de Coast.

Pregunta al usuario: "¡Tu Coast ya está en marcha! Te recomiendo configurar ahora las skills de Coast para [lista de los harnesses del paso 3] — esto solo toma un momento y permitirá que tus herramientas de programación con IA funcionen con Coasts automáticamente. ¿Quieres que lo haga?"

Si el usuario acepta, ejecuta:

coast harness-setup-prompt --harness <name1> --harness <name2> ...

pasando todos los harnesses que el usuario seleccionó en el paso 3. Sigue las instrucciones de la salida para configurar cada harness. Como ya verificaste la CLI en el paso 1 y configuraste `worktree_dir` en el paso 3, omite esos pasos en las instrucciones del harness (la salida te lo recordará cuando haya múltiples harnesses presentes).

Si el usuario rechaza, infórmale que puede configurar las skills más tarde ejecutando `coast harness-setup-prompt --harness <name>` y siguiendo las instrucciones.
13 changes: 13 additions & 0 deletions docs/es/skills_prompt.txt
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,19 @@ Antes de hacer suposiciones sobre el comportamiento de Coast, explora la documen
coast docs --path concepts_and_terminology/BUILDS.md
coast search-docs "your question here" # semantic search

## Troubleshooting

Si encuentras problemas con la configuración del harness (por ejemplo, worktrees
que no se encuentran, `coast lookup` que no coincide), lee la sección de solución
de problemas de la documentación del harness correspondiente:

coast docs --path harnesses/CLAUDE_CODE.md
coast docs --path harnesses/CODEX.md
coast docs --path harnesses/CONDUCTOR.md
coast docs --path harnesses/CURSOR.md
coast docs --path harnesses/T3_CODE.md
coast docs --path harnesses/SHEP.md

## Rules

- Ejecuta siempre `coast lookup` antes de tu primer comando de runtime en una sesión.
Expand Down
2 changes: 1 addition & 1 deletion docs/ja/GETTING_STARTED.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Part of the [Coasts Video Course](learn-coasts-videos/README.md).
## インストール

```bash
curl -fsSL https://coasts.dev/install | sh
eval "$(curl -fsSL https://coasts.dev/install)"
coast daemon install
```

Expand Down
2 changes: 1 addition & 1 deletion docs/ja/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ Part of the [Coasts Video Course](learn-coasts-videos/README.md).

## インストール

- `curl -fsSL https://coasts.dev/install | sh`
- `eval "$(curl -fsSL https://coasts.dev/install)"`
- `coast daemon install`

*`coast daemon install` を実行しないことにした場合、毎回必ず `coast daemon start` でデーモンを手動で起動する責任はあなたにあります。*
Expand Down
13 changes: 13 additions & 0 deletions docs/ja/SKILLS_FOR_HOST_AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,19 @@ Before guessing about Coast behavior, explore the docs:
coast docs --path concepts_and_terminology/BUILDS.md
coast search-docs "your question here" # semantic search

## Troubleshooting

If you run into issues with harness configuration (e.g. worktrees not being
found, `coast lookup` not matching), read the troubleshooting section of the
relevant harness doc:

coast docs --path harnesses/CLAUDE_CODE.md
coast docs --path harnesses/CODEX.md
coast docs --path harnesses/CONDUCTOR.md
coast docs --path harnesses/CURSOR.md
coast docs --path harnesses/T3_CODE.md
coast docs --path harnesses/SHEP.md

## Rules

- Always run `coast lookup` before your first runtime command in a session.
Expand Down
Loading