El archivo puede estar en tu ordenador, pero el agente puede no estar ejecutándose en tu ordenador. Esa es la razón principal por la que ChatGPT Agent no empieza con acceso automático a cualquier carpeta local. Puede trabajar con archivos que subes, elementos de Library, conectores, fuentes de datos o repositorios GitHub autorizados.
Codex local y Claude Code local empiezan desde otra premisa. Trabajan cerca del proyecto, del directorio actual o de la sesión local, por eso pueden leer un repositorio, aplicar cambios y ejecutar pruebas en el entorno donde está el código. Aun así, no son permisos infinitos: sandbox, approval policy, writable roots, Bash rules, allow/deny y bypass siguen definiendo el alcance real.
A 23 de mayo de 2026, la pregunta útil no es qué agente es más potente. La pregunta útil es qué superficie posee la ruta del archivo, cómo llegó el archivo a esa superficie y qué autoridad recibe después: lectura, escritura, comandos, red o control de interfaz.
| Estado del archivo | Ruta adecuada | Primer paso | Evita | | Documento o CSV único | ChatGPT upload / Library | subir solo lo necesario | subir toda la carpeta | | Repo local con pruebas | Codex local / Claude Code local | trabajar dentro del workspace | suponer que ChatGPT ve cambios sin push | | Branch en GitHub | GitHub / cloud clone | autorizar repo y branch concretos | mezclar estado local y remoto | | secrets, .env, datos privados | fixture redactado / entorno aislado | reducir acceso primero | mandar secretos al chat |
Respuesta corta: el agente necesita una ruta al archivo
ChatGPT Agent es una superficie de ChatGPT con herramientas. Su terminal, navegador o entorno de análisis no prueban que esté dentro de tu carpeta local. Un archivo se convierte en entrada cuando lo subes, lo reutilizas desde Library, lo expones con un conector o autorizas un repositorio GitHub.
Si la tarea es leer un informe, la subida es una ruta estrecha y correcta. Si la tarea necesita modificar un repo, ejecutar tests, usar dependencias locales, ver un diff sin commit o consultar un servicio local, la ruta correcta suele ser Codex local o Claude Code local.
El orden seguro es elegir superficie, elegir ruta de archivo y después elegir autoridad. Lectura, escritura, comandos, red y GUI no son el mismo permiso. Separarlos evita dar acceso a secretos o carpetas irrelevantes solo para resolver una duda pequeña.
| Estado | Ruta | Motivo | | PDF, CSV, log | ChatGPT upload | basta una copia | | Repo con tests | agente local | necesita entorno real | | Cambios sin push | local | la nube no los ve | | Repo con branch | GitHub/cloud | se autoriza de forma explícita | | Secrets | fixture/aislamiento | primero se reduce exposición |
Límite de ChatGPT Agent: subir, conectar o autorizar
ChatGPT Agent puede usar herramientas, pero esas herramientas viven en la superficie del producto. Que exista un terminal no significa que sea tu zsh, tu .venv, tus node_modules o tu checkout con cambios locales.
Por eso conviene nombrar la ruta de datos. Para un contrato, sube el contrato. Para un material reutilizable, usa Library. Para datos cloud, conecta la app adecuada. Para código que debe estar en GitHub, autoriza el repositorio y branch correctos.
La regla práctica es entregar el mínimo. No subas .env, exports de clientes, carpetas personales o repos completos si la pregunta necesita un solo archivo. Hacer visible un archivo ya es una decisión de permisos.

| Ruta ChatGPT | Uso | Límite | | Upload | documento, PDF, CSV, log | ve la copia subida | | Library | reutilización | no es espejo del disco local | | Connectors | datos cloud | depende de cuenta y permisos | | GitHub app | repos seleccionados | no ve diff local | | Agent tools | flujos web | no es acceso filesystem genérico |
Límite de Codex: local, cloud y control móvil
Codex local empieza con un proyecto. En la app eliges una carpeta, en el IDE el agente trabaja dentro del project directory y en CLI parte del current directory. Por eso parece que ve archivos locales donde ChatGPT Agent no ve nada.
Ese punto de partida no elimina el control. Sandbox modes, permission profiles, writable roots, network policy y approvals siguen decidiendo si puede escribir, ejecutar comandos o salir a la red. Workspace-first es una mejor primera opción que danger-full-access.
Codex cloud cambia la ruta. Clona un repository en un entorno aislado, útil para branch review o trabajo remoto, pero no adivina cambios sin push. El móvil tampoco vuelve disponibles los archivos del teléfono; funciona como controlador de un host o tarea cloud.
| Forma Codex | Origen del archivo | Control | | Local app / IDE / CLI | workspace elegido | sandbox y approvals | | Cloud thread | repo clonado | branch contiene el estado | | Mobile | host/cloud conectado | el móvil controla | | Computer Use | UI visible | solo cuando la UI es evidencia |
Límite de Claude Code: poder local con reglas explícitas
Claude Code local se parece más a Codex local que a ChatGPT Agent. Trabaja con el repo local, lee archivos, edita y ejecuta comandos. Eso lo hace adecuado para tareas con tests, build, servicios locales y diff real.
Pero el alcance real depende de reglas. Read access, additional directories, deny rules, prompts de edición, Bash allow/ask/deny, defaultMode, acceptEdits, auto, dontAsk y bypassPermissions cambian lo que puede pasar sin confirmación.
Bypass no debe ser el primer arreglo para visibilidad. Si hay .env, llaves SSH, exports privados o dumps de base de datos, usa fixture redactado, checkout temporal o deny patterns antes de reducir prompts.
| Pregunta | Control Claude Code | Consecuencia | | Qué path lee | read/additional dirs/deny | ajusta alcance de lectura | | Qué archivo edita | edit prompt/mode | diff como frontera | | Qué comando ejecuta | Bash rules | tests también son permiso | | Salta prompts | dontAsk/bypass | solo con aislamiento |
Capas de permisos: visibilidad no es autoridad
Visibilidad significa que el agente puede leer contenido. Autoridad significa qué puede hacer después. Leer un README, editar código de pagos, ejecutar shell, salir a la red o manejar la GUI son permisos distintos.
En ChatGPT Agent, la escritura suele aparecer como archivo generado o acción de conector. En Codex local, depende de workspace write y approvals. En Claude Code local, depende de edit modes, prompts y Bash rules. La GUI es otra capa.
Una buena frontera se puede explicar antes de empezar: este agente lee solo este repo, escribe solo en src/ y tests, pregunta antes de comandos de red y se detiene si encuentra .env. Si no puedes decirlo, el alcance aún es demasiado amplio.

| Capa | ChatGPT Agent | Codex local | Claude Code local | | Descubrimiento | upload/Library/connector/GitHub | workspace/current dir | session/rules | | Escritura | generated output/action | workspace write/approval | edit mode/prompt | | Comandos | product tool | local shell sandbox | Bash allow/ask/deny | | Red | connected service | profile/approval | tool environment | | Escalada | más datos conectados | profile/sandbox | mode/bypass |
Cinco estados de archivo y el primer movimiento
No todos los archivos locales son iguales. Un PDF en el escritorio, un repo con tests, un diff sin commit, un branch en GitHub y un config con secrets requieren rutas distintas.
Documento único: upload. Repo: agente local. Diff sin push: local o push intencional. Repo ya subido: GitHub o cloud clone. Secrets: fixture redactado o workspace aislado. Esta clasificación resuelve casi toda la elección.
Si dudas, crea una reproducción mínima. Quita credenciales, escribe el resultado esperado y pide análisis read-only. Luego amplía escritura o comandos solo cuando el radio de riesgo sea explicable.

- Documento: subir solo lo necesario.
- Repo: trabajar con diff y evidencia de tests.
- Sin push: no esperar visibilidad cloud.
- GitHub: autorizar repo y branch.
- Secrets: redactar, negar, aislar.
Atajos peligrosos que parecen arreglar archivos
danger-full-access y bypassPermissions pueden ser herramientas útiles, pero no explican la ruta del archivo. Si el problema es que no has decidido qué superficie debe ver el archivo, abrir todos los permisos solo agranda el error.
Los permisos amplios tienen sentido en un clone desechable, un container, una VM temporal o una cuenta de prueba sin credenciales reales. En el portátil principal, con navegador logueado, repos privados y datos de clientes, no son el primer paso.
Computer Use sigue la misma lógica. Úsalo cuando la interfaz visible es la evidencia: un ajuste, un flujo web, un simulador, una app de escritorio. Para archivos normales, repos, logs o respuestas API, usa una ruta estructurada primero.
| Atajo | Puede servir | Debe parar | | danger-full-access | workspace desechable | máquina principal con secrets | | bypassPermissions | entorno aislado | solo reducir prompts | | folder upload | bundle redactado | carpetas privadas mezcladas | | GUI control | UI como evidencia | lectura normal de archivos |
Checklist local antes de ejecutar
Antes de empezar, pregunta: ¿es un archivo o un repo? ¿Necesita tests? ¿Hay cambios sin commit? ¿Hay credenciales? ¿Necesita shell? ¿Necesita red? ¿La GUI es la evidencia? Las respuestas dictan la ruta.
Para análisis de contenido, upload es ligero. Para cambiar código y probar, Codex local o Claude Code local. Para revisión remota, push de un branch limpio. Para secrets de producción, aislamiento antes de permisos.
El objetivo no es que el agente vea más. El objetivo es que vea suficiente y tenga solo la autoridad verificable. Eso hace que el trabajo sea más fácil de revisar, revertir y explicar.
| Comprobación | Si sí | Acción | | single file | sí | upload / Library | | tests required | sí | local coding agent | | uncommitted diff | sí | local or push branch | | secrets nearby | sí | redact / deny / isolate | | GUI evidence | sí | narrow Computer Use |
Convertir la decisión de permisos en un registro transferible
En trabajo real, el riesgo no es solo que el agente no vea un archivo. El riesgo mayor es que después nadie pueda explicar qué vio, dónde se ejecutó y qué autoridad recibió. Un buen registro de permisos separa cuatro piezas: ruta del archivo, lugar de ejecución, acciones permitidas y condiciones de parada. Así otra persona distingue uploaded copy, GitHub branch, Codex local workspace, Claude Code session y cloud clone sin adivinar.
Para una ruta ChatGPT, registra los materiales entregados. Si subiste un log redactado y un PDF, no escribas la tarea como si el agente hubiera visto toda la carpeta del proyecto. Si usaste GitHub app, anota repository, branch y que el diff local sin push no forma parte de esa ruta. ChatGPT tiene entradas explícitas; la confusión aparece cuando sus herramientas de producto se interpretan como permisos sobre el disco local.
Para Codex local, registra workspace, sandbox o permission profile, alcance de escritura, network policy, comandos ejecutados y comandos que exigen approval. En una tarea de código, esa nota es más útil que decir 'Codex revisó el proyecto', porque la revisión posterior puede seguir diff, test output e historial de comandos. Si usas Codex cloud, añade qué branch fue clonado y qué archivos generados o cambios locales no viajaron con él.
Para Claude Code, registra mode y rules. Si activas auto, dontAsk o bypassPermissions, escribe también las condiciones de aislamiento: checkout desechable, .env real eliminado, deny patterns y cuenta de prueba en lugar de credenciales de producción. Saltar confirmaciones solo es razonable cuando el entorno externo ya limita el daño. Sin eso, bypass convierte un problema de visibilidad en una ejecución difícil de auditar.
El registro puede ser breve, pero debe permitir una transferencia: por qué upload no bastaba, por qué hacía falta un agente local, por qué la red se permite o se bloquea, y qué directorio o secreto detiene el trabajo. Si no puedes decirlo antes de ejecutar, el alcance sigue siendo demasiado amplio. Reduce el sample, empieza con análisis read-only o mueve la tarea a un workspace aislado.
| Registro | Qué escribir | Riesgo que reduce | | Ruta de archivo | upload, Library, GitHub, workspace o GUI | confundir archivo entregado con disco completo | | Lugar de ejecución | ChatGPT product, local shell, cloud clone, connected host | mezclar estado local y cloud | | Autoridad | read, write, command, network, GUI | tratar visibilidad como control total | | Parada | .env, secrets, datos de cliente, diff privado | ampliar permisos por comodidad |
Preguntas frecuentes
¿Por qué ChatGPT Agent tiene terminal pero no lee mi carpeta local?
Porque ese terminal pertenece al entorno de producto de ChatGPT. No es tu shell local dentro del proyecto. Debes usar upload, Library, conector o autorización GitHub.
¿ChatGPT Agent puede trabajar con un repo completo?
Sí, si lo entregas por una ruta soportada como GitHub. Pero cambios sin push, tests locales, archivos generados y variables privadas suelen pedir un agente local.
¿Codex local es seguro por estar en mi máquina?
No automáticamente. La seguridad depende de sandbox, permission profile, approvals, writable roots, red y disciplina del entorno.
¿Codex mobile ve archivos del teléfono?
No como regla general. Funciona como controlador de un host o tarea cloud. Los archivos del teléfono necesitan otra ruta explícita.
¿bypassPermissions en Claude Code significa ver todo?
No. Significa reducir prompts normales en un modo de alta confianza. Debe usarse con workspace aislado y sin secretos reales.
¿Qué hago con .env?
No lo subas a ChatGPT. En agentes locales usa deny rules, fixtures redactados o comandos que prueben comportamiento sin imprimir secretos.
¿Cuándo uso Computer Use?
Cuando la interfaz visible es la evidencia: ajustes, flujo de navegador, app de escritorio o bug visual. No es la ruta normal para leer archivos.
