27 lines
1.0 KiB
Bash
Executable File
27 lines
1.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Alternativa explícita si el cliente no carga el MCP de proyecto.
|
|
set -euo pipefail
|
|
script_dir=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)
|
|
exec python3 -c "$(cat <<'PY'
|
|
import json
|
|
import os
|
|
import pathlib
|
|
import shutil
|
|
import sys
|
|
import tomllib
|
|
|
|
root = pathlib.Path(sys.argv[1]).resolve()
|
|
executable = shutil.which(os.environ.get('METIS_CODEX_BIN', 'codex'))
|
|
if executable is None:
|
|
sys.exit('Error: instala Codex CLI en WSL o indica METIS_CODEX_BIN.')
|
|
with (root / '.codex/config.toml').open('rb') as source:
|
|
config = tomllib.load(source)['mcp_servers']['playwright']
|
|
overrides = []
|
|
for key in ('command', 'args', 'startup_timeout_sec', 'tool_timeout_sec'):
|
|
overrides.extend(['-c', 'mcp_servers.playwright.' + key + '=' + json.dumps(config[key])])
|
|
overrides.extend(['-c', 'mcp_servers.playwright.enabled=true'])
|
|
# exec conserva terminal, señales y código de salida; no copia configuración ni credenciales.
|
|
os.execv(executable, [executable, '-C', str(root), *overrides, *sys.argv[2:]])
|
|
PY
|
|
)" "$script_dir/.." "$@"
|