Sobre el proyecto

Downcity es un proyecto de infraestructura de agente para desarrolladores, creadores independientes y equipos que envían muchos productos y flujos de trabajo impulsados por IA. Su premisa es una capa de ejecución reutilizable que sirve a muchos agentes y productos, de modo que el enrutamiento de modelos, las herramientas, la memoria, las tareas, la autenticación, el uso, la facturación y las operaciones no necesitan ser reconstruidos para cada nuevo producto de IA. El repositorio es un monorepo de espacio de trabajo pnpm. El paquete público downcity expone dos superficies de comando: city/downcity, el contenedor local de la ciudad que gestiona y ejecuta agentes, y fed/downfed, un gestor de servidor de federación. Los paquetes de soporte incluyen @downcity/workspace (recursos del espacio de trabajo, herramientas de archivo y búsqueda enraizadas, entorno, almacenamiento privado y shell integrado), @downcity/agent (tiempo de ejecución del agente y contenedor de la ciudad con AgentWorkspace, Session, Plugin SDK, propiedad de múltiples agentes y transporte HTTP/RPC), @downcity/federation (tiempo de ejecución de federación y SDK de embajada para servicios, autenticación, entorno, oficina, acceso de usuario y administrador), @downcity/type (tipos de protocolo compartidos), @downcity/services (cuentas, saldo, uso, pago y flujos de Stripe) y @downcity/ui (componentes de React + Tailwind para la consola y aplicaciones de host). Las plantillas de inicio cubren escenarios de agente, federación de borde, federación local y UI de React, y un directorio de página de inicio contiene el sitio web y la documentación para el usuario final. Uso local típico: instala la CLI con npm o pnpm, conéctate a una federación a través de downcity federation use y federation status, registra un repositorio como un espacio de trabajo con downcity agent create ., luego inicia la ciudad local con downcity on e inspecciónala con downcity agent list o downcity status. La identidad y la configuración del agente viven en un directorio de nivel de usuario ~/.downcity (agents/, plugins/) mientras que el espacio de trabajo se ingresa en el momento de la ejecución. El README señala que los agentes no tienen un estado independiente de iniciado/detenido, y que el chat sigue funcionando mientras la CLI de la ciudad está apagada porque se crea y elimina un contenedor local temporal para la interacción. Las capacidades de agente integradas enumeradas son chat, tarea, memoria, shell, contacto, habilidad, web, sonido y tablero de trabajo. Se ofrece integración a varios niveles. El ejemplo de SDK construye un Workspace con un sandbox de Shell, crea un Agent y una Session, inyecta un modelo creado por la aplicación de host (el README afirma que @downcity/agent no resuelve por sí mismo los ID de proveedor o modelo), envía un prompt y espera el turno terminado. Una clase RemoteAgent se conecta a una ciudad en ejecución a través de HTTP por URL base. Las superficies de producto son la CLI de Downcity, el SDK de Agent, el SDK de City y el SDK de UI, además de complementos, servicios y componentes de UI de React. Soporte de plataforma y seguridad: macOS usa Seatbelt, Linux usa Bubblewrap, y Windows 11 24H2 y versiones posteriores (build 26100+) se describe como desarrollo/inestable a través de Microsoft MXC processcontainer con ejecución nativa de cmd.exe. El README dice que los fallos de preflight nunca retroceden a la ejecución sin restricciones, y que MXC está en vista previa pública en lugar de ser un límite de seguridad de producción. Los comandos de shell y script se ejecutan en el sandbox del agente de forma predeterminada, con un proyecto escribible, una red abierta y un hogar/caché de sandbox bajo .downcity/sandbox. Los consejos incluyen auditar cambios con git status y git diff, mantener secretos en variables de entorno locales o downcity env, usar tokens para los límites de consola, HTTP y chat, y señalar que las instalaciones de nivel de host y las escrituras en el directorio del sistema están fuera del sandbox. La documentación se publica en downcity.ai/docs con páginas separadas de SDK de City, SDK de Agent y SDK de UI, README de nivel de paquete, y una traducción al chino simplificado del README principal.