Reach
zn-gate reach muestra lo que tus agentes de código pueden alcanzar en esta máquina (solo nombres, nunca valores), con el comando que corrige cada hallazgo. Solo lectura.
zn-gate reach responde a una pregunta: ¿qué pueden alcanzar los agentes de código de esta máquina? Muestra qué agentes protege zn, los nombres de los secretos de los archivos .env de una carpeta, los archivos de credenciales de tu carpeta personal, las variables de entorno que contienen un secreto y lo que zn audit encuentra en los servidores MCP y en la configuración de los agentes. Cada hallazgo trae el comando que lo corrige.
npx -y zn-gate reach
Ejecútalo en la carpeta en la que trabajas. No envía nada, no arranca ningún hook y no cambia nada.
Qué comprueba
- Agentes: Claude Code, Codex CLI, Cursor y OpenCode. Indica si cada uno está en esta máquina y si zn lo protege para tu usuario o solo para un proyecto. Usa la comprobación de instalación de
zn-gate checky no arranca ningún hook. - Archivos
.envde la carpeta: los nombres de sus secretos, nunca los valores. Un archivo que es un enlace no se sigue. - Archivos de credenciales de tu carpeta personal, como
~/.aws/credentials, las claves SSH,~/.npmrcy~/.kube/config. zn solo comprueba si existen. Nunca los abre. - Variables de entorno cuyo nombre o valor parece un secreto: solo los nombres.
- Servidores MCP y configuración de los agentes de esta carpeta y de tu usuario, con las mismas reglas que
zn audit.
Ejemplo
En una máquina donde los tres agentes están protegidos, el informe es corto:
zn-gate reach: what can the coding agents on this machine reach?
Read: agent settings in your home folder and this folder, .env files here, names of environment variables. Nothing was sent anywhere.
AGENTS
Claude Code protected by zn (run `zn-gate check` to test it)
Codex CLI protected by zn (run `zn-gate check` to test it)
Cursor protected by zn (run `zn-gate check` to test it)
OpenCode not found on this machine
Nothing to fix. Your agents run with zn-gate.
Cuando hay algo que revisar, cada hallazgo tiene una gravedad, una explicación corta y el comando que lo corrige. Esta es la salida real de una ejecución en un proyecto de prueba (secretos y archivo de credenciales de AWS falsos):
zn-gate reach: what can the coding agents on this machine reach?
Read: agent settings in your home folder and this folder, .env files here, names of environment variables. Nothing was sent anywhere.
AGENTS
Claude Code not protected
Codex CLI not found on this machine
Cursor not found on this machine
OpenCode not found on this machine
HIGH Claude Code is on this machine and zn does not protect it
It can read any file and run any command you allow.
Fix: npx -y zn-gate init
WHAT THEY CAN REACH (secrets and credential files an agent could read; names only, never values)
HIGH .env in this folder has 2 secrets (OPENAI_API_KEY, DATABASE_URL)
Claude Code can read them today.
Fix: npx -y zn-gate env shadow .env
MEDIUM 1 credential file in your home folder (~/.aws/credentials)
Claude Code can read them today.
Fix: npx -y zn-gate init
NEXT: fix the high ones
1. npx -y zn-gate init
2. npx -y zn-gate env shadow .env
2 high, 1 medium, 0 low.
La gravedad depende de la instalación. Un .env o un archivo de credenciales es high o medium cuando hay en la máquina un agente que zn todavía no protege. Es low cuando aún no hay ningún agente instalado, y solo informativo cuando zn protege todos los agentes que encuentra. Las variables de entorno son siempre low.
Opciones
| Opción | Qué hace |
|---|---|
[path] |
La carpeta a revisar. Por defecto, la carpeta actual |
--json |
El mismo informe en JSON |
--sarif |
El informe en SARIF 2.1.0, para code scanning. Los hallazgos sobre archivos de la carpeta revisada son resultados (un .env con secretos que un agente puede leer es ZNR002). Los agentes, los archivos de credenciales y las variables de entorno son notificaciones de la ejecución |
--fail-on high|medium|low|none |
Sale con código 1 si encuentra un hallazgo de ese nivel o superior. Por defecto, none: reach es un informe que sale con 0. Un error de uso o un fallo sale con 2 |
--remember |
Guarda los recuentos de esta ejecución (high, medium, low y la fecha) en ~/.zn/reach-last.json, para que la siguiente ejecución con --remember muestre cómo estaban. Sin esta opción, reach no escribe nada |
Lo que nunca hace
- Nunca muestra un valor secreto y nunca abre un archivo de credenciales.
- No envía nada por la red y no arranca ningún hook.
- No escribe nada, salvo que pases
--remember.
Si la comprobación se queda sin tiempo en una carpeta grande, el informe lo indica. npx -y zn-gate audit --include-home las comprueba todas.
Dónde encaja en la puesta en marcha
zn-gate reachmuestra lo que tus agentes pueden alcanzar hoy.npx -y zn-gate initprotege cada agente. Inicio rápidonpx -y zn-gate checkcomprueba que zn impide a tu agente leer un.envde prueba. Checknpx -y zn-gate env shadow .envpasa los secretos en texto plano de un.enva la bóveda local.
Para corregir un hallazgo, ejecuta el comando que muestra. Para los agentes que no están protegidos, es npx -y zn-gate init. Para las variables de entorno, ejecuta npx -y zn-gate secret set NAME en tu propia terminal y escribe __ZN_NAME__ donde va el valor.