Skip to content

Commit 1d5ffd1

Browse files
authored
Merge pull request #174 from 2-Coatl/feature/implement-project-setup-for-node.js-and-python-13-30-41
Document runtime entrypoints for workspace agent
2 parents a0e71ec + b8f6052 commit 1d5ffd1

2 files changed

Lines changed: 48 additions & 0 deletions

File tree

infrastructure/workspace/README.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,41 @@ contributors.
3939
npm run vpn:health
4040
```
4141

42+
## Ejecución del agente
43+
44+
Este workspace no utiliza Django, por lo que el patrón `manage.py` **no aplica**.
45+
En su lugar, el agente se orquesta mediante el servidor MCP y los playbooks de
46+
Codex. Tienes dos maneras de ejecutarlo:
47+
48+
1. **Modo directo (Python)**
49+
```bash
50+
cd infrastructure/workspace
51+
source .venv/bin/activate # si aún no lo hiciste
52+
python -m infrastructure.workspace.vpn_proxy_agent.mcp_server
53+
```
54+
El proceso abre un servidor MCP por `stdin/stdout` que puede ser consumido
55+
por cualquier cliente compatible.
56+
57+
2. **Modo asistido (NPM + Codex)**
58+
```bash
59+
cd infrastructure/workspace
60+
npm run vpn:setup-dev # configura dependencias simuladas y túnel
61+
npm run vpn:setup-tunnel # únicamente el túnel SOCKS5
62+
npm run vpn:health # chequeos de estado
63+
```
64+
Estos comandos envuelven llamadas a `codex mcp run <playbook>` y permiten
65+
validar el flujo end-to-end con parámetros declarados en `.env`.
66+
67+
Si deseas invocar manualmente un playbook específico, también puedes ejecutar:
68+
69+
```bash
70+
codex mcp run setup-dev-environment
71+
```
72+
73+
La ausencia de `manage.py` no impide la ejecución del agente: todos los
74+
componentes se inician a través del servidor MCP y los scripts definidos en
75+
`package.json`.
76+
4277
## Validación del agente
4378

4479
Para demostrar que el agente VPN/Proxy funciona sin depender de

infrastructure/workspace/tests/test_documentation_validation.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,3 +30,16 @@ def test_workspace_readme_clarifies_mise_is_optional() -> None:
3030

3131
assert "mise ~/.config/mise/config.toml tools" in readme_content
3232
assert "no es necesario" in readme_content.lower()
33+
34+
35+
def test_workspace_readme_explains_how_to_run_the_agent_without_manage_py() -> None:
36+
if not README_PATH.exists():
37+
raise AssertionError(f"Expected {README_PATH} to exist")
38+
39+
readme_content = README_PATH.read_text(encoding="utf-8")
40+
41+
assert "## Ejecución del agente" in readme_content
42+
assert "python -m infrastructure.workspace.vpn_proxy_agent.mcp_server" in readme_content
43+
assert "npm run vpn:setup-dev" in readme_content
44+
assert "manage.py" in readme_content
45+
assert "no aplica" in readme_content.lower()

0 commit comments

Comments
 (0)