Remove `ate-env-api` and use the Substrate API directly
Los mantenedores suelen responder en 1 día
@rakyll ya está trabajando en esto.
Desde el 26/10/2026.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
Consider removing the ate-env-api service and have clients (the ate-env CLI and the Go and Python libraries) talk to Substrate directly. The environment-shaped surface (process, filesystem, MCP) would live in the client libraries and the in-actor guest daemon, not in a second server.
Problem
ate-env-api is a second control plane in front of Substrate, with its own API, auth surface, and notion of identity. This causes several problems:
- Security capabilities must be aligned twice. Any authn/authz, audit, quota, or policy that Substrate enforces has to be re-implemented in
ate-env-api, or it is bypassed. Today callers are trusted based on network reachability to the service. - Identity is lost at the hop. Substrate sees the API service as the caller, not the user or agent. It can't attribute, authorize, or audit per caller.
- Confused-deputy risk. The service holds broad credentials and exposes them to anything that can reach it. Per-environment authorization has to be re-invented, and a mistake means cross-tenant access.
- Duplicated and drifting semantics. We re-map Substrate concepts (actors, status, atespaces, templates, errors) and track Substrate changes in two places.
- More to build and operate. There is an extra deployment, image, and release, plus a second API for users to learn.
Proposal
- Delete
ate-env-apiand stop publishing its image. - The CLI and client libraries call Substrate directly for lifecycle, and call the guest daemon through the Substrate router for process, filesystem, and MCP operations, all using Substrate's identity.
- Move the "environment" abstraction (ID mapping, defaults, status mapping, wake-on-call) into the client library.
ate-env manifestdeploys only the namespace and worker pool.
Open questions
- Where should MCP be served: the guest daemon, or a Substrate-native gateway?
Acceptance criteria
- No dual control plane components in
ate-env-apibinary. - The CLI and clients work against a cluster with only Substrate.
- Lenguaje dominante
- Go
- Estrellas
- 71
- Forks
- 17
- Merge medio
- 21 h 36 min
- PR fusionados (30 d)
- 19
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de agent-substrate/env
-
Dificultad 4/5 3-5 días Aptitud para principiantes 42/100
agent-substrate/env#123 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 74/100
agent-substrate/env#121 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 42/100
agent-substrate/env#119 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
agent-substrate/env#118 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 57/100
agent-substrate/env#117 ·
Los mantenedores suelen responder en 1 día
Todos los issues de agent-substrate/env
Issues similares
-
area:sampler tech-debt
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
jmbarzee/temporal-architect#302 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
riverqueue/river#1576 ·
Los mantenedores suelen responder en 1 día
-
NFS StorageProvider renders a missing nfsSubDir as "<no value>"Posiblemente ocupada @ldming la tomó hoy. Abiertokind/bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
apecloud/kubeblocks#11067 ·
Los mantenedores suelen responder en 1 día
-
area:ui bug priority:low
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
Los mantenedores suelen responder en 1 día
-
RTX payload type is not found when the RTX fmtp line has rtx-timePosiblemente ocupada @RaphaelFakhri la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día