Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

A setting to turn off the models.dev catalog download (offline and strict-network use)

Abierto Apto para principiantes
#4,714 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
72/100
Tipo de issue
Nueva funcionalidad
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
docker, go
Área
backend

Línea de trabajo

Empieza en pkg/modelsdev/store.go: lee fetchFromAPI, loadDatabase y getDatabase para ver cómo la flag allowFetch ya controla la ruta de red y cómo funcionan la caché y el snapshot embebido como fallbacks. La propuesta es añadir una variable de entorno (por ejemplo, DOCKER_AGENT_OFFLINE o DOCKER_AGENT_MODELS_DEV=off) que haga que getDatabase se comporte como allowFetch=false. Comprueba cómo se parsean y documentan switches existentes como TELEMETRY_ENABLED, haz lo mismo y añade un test que verifique que el catálogo se sirve desde caché/snapshot sin ninguna llamada de red. Hecho: la configuración impide cualquier fetch de https://models.dev/api.json y los tests existentes siguen pasando.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

area/config area/models

What happens

On v1.152.0, docker-agent run downloads the public model catalog from https://models.dev/api.json. That's pkg/modelsdev/store.go, fetchFromAPI. It caches the catalog for 24 hours in $XDG_CACHE_HOME/cagent/models_dev.json. When a deployment gives each session its own HOME, which is common when docker-agent runs as a sandboxed agent runtime, that means one download per new session per day.

The other outbound paths each have a switch:

  • TELEMETRY_ENABLED=false for telemetry;
  • DOCKER_AGENT_AUTO_UPDATE for self-update;
  • DOCKER_AGENT_AUTO_INSTALL=false for tool install;
  • --otel is opt-in.

The catalog download is the one an operator can't turn off.

Why a switch would be enough

The store already handles a failed or blocked download. loadDatabase falls back to the cache, and then to the snapshot embedded at build time (the behaviour #3165 made explicit). So a setting that skips the download and goes straight to cache-or-embedded would only formalise a path that already works.

That matters for deployments that must not make outbound calls beyond the model provider they configured: air-gapped installs, strict egress policies, or self-hosters who want only the calls they asked for.

Proposal

Something like DOCKER_AGENT_OFFLINE=1, or a narrower DOCKER_AGENT_MODELS_DEV=off. It would make getDatabase behave as allowFetch=false: cache if present, otherwise the embedded snapshot, and never the network.

We run docker-agent as one of the agent runtimes in the open-source HarnessRouter. For now, our docs tell self-hosters that it fetches from models.dev and that the host can be blocked. A switch would let us turn it off by default. Thanks for considering it.

Lenguaje dominante
Go
Estrellas
4.6k
Forks
529
Merge medio
14 h 22 min
PR fusionados (30 d)
181

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

  • Incluye un Dockerfile o un archivo de Docker Compose
  • Sin plantilla de pull request
  • Sin guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de docker/docker-agent

Todos los issues de docker/docker-agent

Issues similares

Más issues de Go

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.