@ cloudconfig/ core (中文(简体) )
@cloudconfig/core 提供 CloudConfig 配置 API,服务器运行时间,
已键入客户端、数据库驱动程序、 MCP 服务器以及 cloudconfig 命令.
CloudConfig 将一个类型Script配置转换成 Cloudflare, Vercel 或 Azure 上的后端: a 数据库、迁移、验证的 REST 路径、访问规则、登录、输入、输入 客户端 和部署.
CloudConfig 0.2 可用在地图上
latestnpm dist-tag. (英语).
创建本地 API
你需要22.12节节点或更新:
pnpm dlx @cloudconfig/core@latest init blog-api --target standalone
cd blog-api
pnpm install
pnpm db:generate
pnpm db:migrate
pnpm dev
打开 http://localhost:3000/api/_docs 来探索生成的 API.
引用是一个自成一体的 HTML 页面,它跟随您的系统的光或者
黑暗主题 。 模型 API 的 OpenAPI 3. 1 文档在
http://localhost:3000/api/openapi.json; 将其导入 Swagger UI、 Postman 或 a
客户端生成器。 两个URL都跟随 server.basePath 并因
server.docs: false。 。 。 .
规格包括模型输入、响应计划、平面图、过滤器、, 还有错误 写入有效载荷使用关系ID;答复包含嵌入关系 对象。 PUT和PACH都进行部分更新. 更好的认证端点和 自定义应用程序路由是独立的API,不包含在本导出中.
对于未启动服务器的导出, 请使用
buildOpenApiDocument(compileConfig(config)) 从 @cloudconfig/core/server。 。 。 .
定义模型
import { defineBackend, model, t } from '@cloudconfig/core'
export const config = defineBackend({
models: {
post: model(
{
title: t.text().required(),
body: t.textarea(),
published: t.boolean().default(false),
},
{
access: {
list: ({ where }) => where('published', 'eq', true),
},
},
),
},
})
CloudConfig在数据库计划,迁移,验证, REST路由,打入客户端,API文档,以及MCP工具.
使用输入客户端
import { createClient } from '@cloudconfig/core/client'
import type { config } from './cloud.config'
const api = createClient<typeof config>({
baseUrl: 'http://localhost:3000/api',
})
const posts = await api.post.list({ page: 1, pageSize: 20 })
存储代理定义
特工是选入的核心能力 将内置模型组成您的配置 :
import { defineBackend } from '@cloudconfig/core'
import { agentModels } from '@cloudconfig/core/agents'
export const config = defineBackend({ models: { ...agentModels } })
生成并应用迁移, 然后使用 api.agent 从输入的客户端.
每个定义存储Markdown指令,一个提供者和模型ID,草稿/活性
状态、工具选择和工具声明. runtime 选择 api, (中文(简体) ), codex,或
claude· ; localModel 独立于 API 模型,默认为 CLI
默认。 主机执行CLI执行,部署时使用API提供者/模型.
进入范围为注册所有人;
钩子从第一个"Markdown"所有权中取出名称并强制执行所有权.
createAgentDefinition(name) 范围、界限、决策和
工具使用模板. serializeAgentMarkdown 财务报告和审定财务报表 parseAgentMarkdown 保护
在 Markdown 前题中设置和完整的工具声明. agentToolSchema
导出 OpenAI 响应、 Anthropic 或 Google 声明; 它不执行
工具。 主机提供供应商证书,工具处理器和执行.
部署代理人和自动化
Nuxt 项目可以声明 deploy.agent 财务报告和审定财务报表 deploy.automations 在他们的配置.
CloudConfig 选择 Cloudflare 持久对象和提醒、 Vercel 工作流程或 a
将 Azure 持久函数应用程序与私人 Blob 执行状态分开.
自动化任务支持持续 检查站,时间表,延误,事件等待,
并取消。 连接可以将已验证的 Webhooks 交给持久任务并运行
预定的代号刷新和加密密钥维护.
Vercel 默认为已存在的 Turso 数据库; Cloudflare 默认为 D1. 选择 D1,Turso,或libSQL明确保持数据库选择独立于应用程序托管. 在部署前提供选定的提供者的证书.
见 部署人员, (中文(简体) ), 部署自动化,以及 平台支持 运行时间 依赖性、储存地点和剩余限度.
以 Cloudflare 的 CLI (β) 部署
当项目有参考文献时 cloudflare.config.ts 和没有Wrangler配置,
cloudconfig deploy 运行 cf build,飞行前并适用D1迁移,以及
将工人的秘密通过上传 cf deploy --prebuilt扩展
源自 cloud.config.ts 进入工人的环境:
// cloudflare.config.ts
import { defineConfig } from 'cf/config'
import { cloudflareBindings } from '@cloudconfig/core/cloudflare'
import config from './cloud.config.ts'
export default defineConfig({
worker: {
name: 'blog-api',
compatibilityDate: '2026-10-14',
entrypoint: './src/index.ts',
env: { ...cloudflareBindings(config) },
},
})
Nuxt 本地开发、代理、自动化、工作流程、Turnstile和远程
libSQL 仍然需要 wrangler.jsonc。见
部署到云浮。 。 。 .
生成 Void (审查) 的后端
CloudConfig 0.0.0 包括: 与麻省理工学院许可证相同的Void入境点 云相会. 此集成预览针对 Void 1.1.11, 需要 节点.js 24.210.0或更新.
保留 cloud.config.ts 作为模型、访问规则、认证和连接的来源.
衍生出Void的资源申报:
// void.config.ts
import { createVoidBackendConfig } from '@cloudconfig/core/void/config'
import { config } from './cloud.config'
export default createVoidBackendConfig(config, {
name: 'my-void-backend',
compatibilityDate: '2026-10-14',
})
生成 SQL 以 cloudconfig db generate 在开始Void之前。 然后准备
构建 Void 的 Vite 插件前的后端 :
// vite.config.ts
import { defineConfig } from 'vite'
import { voidPlugin } from 'void'
import { cloudconfigVoid } from '@cloudconfig/core/void/vite'
export default defineConfig({
plugins: [await cloudconfigVoid(), voidPlugin()],
})
运行 cloudconfig void prepare 分别出口或检查这些文物.
保持"维特"帮手"本土发展身份和"工人"出口接线.
通过编译应用程序、认证和连接表准备导出
db/schema.ts,将权威 SQL 和 Drizzle 的快照镜像成
db/migrations中,通过 env.ts,以及
在下方生成本地 API 路由 routes/ 时间 server.basePath (默认) /api) (中文(简体) ).
显形相 sourceDir 移动这些切入点与应用程序
路线和工作。 生成的执行保留在 .cloudconfig/void/。 。 。 .
既不打开数据库,也不提供资源,也不应用SQL.
Void拥有这些步骤。 在模型改变后用 CloudConfig 重生 SQL;
生成的 Void 计划不是第二个迁移源.
Void的破坏性出行护卫仍然适用于入行历史. 核准
不编辑现有的 CloudConfig 分类账而审查历史 SQL, 导出
cloudconfigApprovedDestructiveMigrations 从 void.config.ts 作为 SQL 的地图
确切的SHA-256源码的文件名 准备加Void的
-- void:allow-destructive 仅在生成的镜像中注释。 已更改来源
字节失败准备; 未批准的文件保持不变 。 同样的地图可以是
以 approvedDestructiveMigrations 给 Vite 帮助者或准备 API.
这需要单独的镜像:共享权威的SQL从未被附加注释.
何时 deploy.agent, (中文(简体) ), deploy.automations 或者说 deploy.workflows 已配置,
vite 帮助者还将生成的工人输出附加到 Void 的本地条目上.
它创建了 Cloudflare 代理和自动化适配器,并保留 Connect for
自动化执行, 注册代理平台, 以及名为 Workflow 的转发
课程。 这些声明必须存在的只引用服务器的条目文件
在准备之前。 准备 CLI 生成适配器模块, 但是
需要维特的帮助 这个钩子目前跟随Void 1.11的
生成 .void/entry.ts; SDK 更新需要符合性检查.
框架应用程序保留其现有的 CloudConfig 挂载: set
appType: 'framework' 在配置助手中,或通过 --framework 准备.
它们的框架一体化继续拥有工人的出口.
帮助者正面标记本地开发请求 只针对Vite serve
命令。 构建和预览保留生产环境,包括:
发展身份提供者在发展之外通常拒绝.
Vite 助手在配置评价时间准备文件; 它不监视
计划改变。 在再生成SQL后重新启动开发过程.
准备保护被撰写的文件和迁移目录. 如果你已经
保持权威迁移 db/migrations设置 db.migrationsDir 给那个
直接共享历史的路径。 保留现有的 env.ts,通过
environment: 'external' 转到 Vite 帮助器或运行
cloudconfig void prepare --external-env,然后编写生成的验证符 :
// env.ts
import { defineEnv, string } from 'void/env'
import { environmentSchema } from './.cloudconfig/void/env'
export default defineEnv({
...environmentSchema,
APPLICATION_KEY: string(),
})
添加 .cloudconfig/void/ 并生成切入点到 .gitignore 当他们是
设置时重建. 生成的环境文件包含可变名称
和验证规则,而不是秘密值。 通过 Void 上传所需值
部署前的秘密工作流程。 使用不同的资源名称进行评价;
准备不会从另一个部署中传输数据.
createVoidBackend(config) 从 @cloudconfig/core/void/server 也提供
为自定义挂载。 转发原始的 Web 请求并绑定到
backend.fetch(request, env)后端用途 config.db.binding (默认) DB(中文(简体) )
并保留验证、访问规则、钩子、更好的Auth、连接、OpenAPI和
API参考.
使用 createVoidServerClient(config, context) 从同一切入点
在 Void 处理器或任务内输入服务器操作。 它的背景包括:
原始Web请求和平台绑定.
createVoidTools(config, context) 从 @cloudconfig/core/void/tools 生成
schema的工具定义,操作动作, JSON schemas, Zod schemas 和执行器. 执行者
返回时 OpResult,验证论据并使用公共操作边界,
因此,只使用服务器的字段不使用工具输入和结果。 供应 getUser 改为
使用主机身份提供者; 配置的 CloudConfig 认证块解决其
默认为自有会话。 该应用程序仍然拥有其模型提供者
审查/核准政策.
createVoidMcpServer(config, options) 从 @cloudconfig/core/void/mcp 曝光情况
相同的模型词汇通过MCP. 供应 env 装订D1
一种明确的认证模式。 需要网络运输 getUser; 已修正
匿名负责人仍限于当地交通工具。 工厂确实如此
不安装未经认证的 HTTP 端点 .
Nuxt Agentic 预览带一个版本绑定的 Void 补丁来保存工人
输出和现有事件处理者,创造本地工作,并允许明确
root Wrangler 配置与 Void 生成的文件并列 。 这些修正是:
仍然是上游贡献的候选者;这个适配器没有安装.
保留已存在的 CloudConfig root Wrangler 文件需要此补丁
preserveWranglerConfig: true 内 createVoidBackendConfig没有它,Void的
正常根 Wrangler 迁移要求仍然适用.
补丁也支持 preserveEnvExample: true 只保留文档
.env.example。该文件没有被装入;其他本地 dotenv 变体依然存在
受Void正常限制.
这些适配器有TypeScript覆盖. 模拟运行时间和部署符合规定 ;不要将预览视为一个全面的支持发布.
学习更多
执行工作由私人存放处负责。 公众 GitHub 存储器主机为产品概览和社区问题.
麻省理工学院.