开源 Agent 基础设施
构建你自己的 Agent 应用体系。
Downcity 为独立 Builder 和小团队提供运行时、工具与界面基础,帮助你构建和管理 Agent 应用,并为下一次构建积累可复用的能力。
SDK 速览
先看 API,再看演示
选一个场景,直接看真实调用长什么样。这些代码跑的就是本仓库里的包。
Try the SDK
import { Agent, Workspace } from "@downcity/agent";const workspace = new Workspace({ id: "project", path: process.cwd() });const agent = new Agent({ id: "repo-helper", instruction: "You are a reliable project assistant.",});const session = await agent.sessions.create({ workspace });const turn = await session.prompt({ query: "Summarize this repository" });const result = await turn.finished;console.log(result.text);三套核心 SDK
从 Agent,到 City,再到 Federation。
Agent 使用 Bureau 身份下的 CityModel 与 Plugin,通过 Session 绑定 Workspace;多个 Agent 在 City 中通过 Group 协作,并经由 Embassy 使用 Federation 提供的共享 Service。
Agent
什么是 Agent Harness?
Agent Harness(智能体运行时)是包裹在模型外的那一层:它负责执行循环、工具调用、上下文与记忆、权限边界和失败恢复。模型负责推理,Harness 让推理变得可执行、可观测、可重复。Downcity 把这一层运行时和产品化 Kit —— City、Federation、SDK 与 UI —— 一起开源,让能跑起来的 Agent 真正成为可以持续运行的产品。
功能特性
构建自己的应用, 积累下一次的基础。
设计应用的业务流程,组织 Agent 与运行资源,再把适合共享的工具和服务用于下一个项目。以下能力为这些构建工作提供基础。
定义 Agent 的工作空间
为 Agent 指定文件、工具与权限边界,让它知道在哪里工作、可以执行什么,以及产物应该保存在哪里。
查看 Agent SDK 文档保持工作的连续性
Session 保存对话、工具调用、任务状态与执行结果,让 Agent 可以沿着已有上下文继续工作。
查看 Agent SDK 文档赋予 Agent 行动能力
通过 Tool、Skill 与 Plugin,让 Agent 能够搜索、编写、执行、记录,并连接产品需要的外部服务。
查看 Agent SDK 文档让工作持续发生
使用任务、记忆与调度能力,让 Agent 在一次对话结束后继续跟进、检查并完成长期工作。
查看 Agent SDK 文档组织多个 Agent 分工
在一座 City 中配置不同角色的 Agent,共享产品边界与服务,分别承担创建、分析、审查或运营任务。
查看 Agent SDK 文档连接界面并保持控制
通过 CLI、Console、SDK 或产品界面与 Agent 交互,同时查看状态、审批操作并管理运行过程。
查看 Agent SDK 文档产品形态
为一种工作,建造一座 City。
围绕明确的工作场景组织 Agent、能力与产品界面,让每座 City 成为可以持续运行的产品。
软件创造 City
让不同 Agent 承担开发、审查、测试与发布工作,共同推进软件从想法走向交付。
研究与知识 City
让 Agent 持续收集信息、分析材料、组织知识,并把研究转化为可用成果。
团队运营 City
让 Agent 负责监控、支持、任务协调与周期性工作,帮助团队保持稳定运转。
个人工作 City
围绕个人的文件、工具与日常流程组织 Agent,并由用户掌握数据和运行控制权。
npm install -g downcity
downcity agent create ./my-city
city federation login
city on