@ captra-ai/ 核心
Captra后面的打出合同和执行运行时间:能力、代理、工具、范围内存、批准、预算、持久运行、取消、检查站、效果收据、遥测、重播和评价.
使用 chat() 保持同样的保证 它发出 chat.delta 事件,执行符和成本保留,记录提供者使用,支持范围内存,并仍然是普通可发现的Captra能力.
设定 durable:true 将信息历史 持续通过运行时间的租户安全 ConversationStore。 。 。 . InMemoryConversationStore 支持本地开发和光标 pagination; 生产适配器执行相同的小接口.
对话合同也暴露出元数据查询,存档,恢复,以及永久删除操作. 已归档的谈话仍可读取, 但拒绝新信件直至恢复 .
runtime.usage 通过运行、能力、用户、租户、供应商或模型,记录每个模式提供者的尝试,并总结成本、标志、可靠性和耐用性。 使用 InMemoryUsageStore 当地和 PostgresUsageStore 用于持久部署.
npm install @captra-ai/core zod
import { capability, capabilityViews, createRuntime, defineApp } from '@captra-ai/core'
import { z } from 'zod'
const greet = capability({
name: 'greet', description: 'Greet a user',
input: z.object({ name: z.string() }),
output: z.object({ message: z.string() }),
run: async ({ name }) => ({ message: `Hello, ${name}!` }),
view: { name: 'Greeting' },
})
const app = defineApp({ name: 'Demo', scopes: [], capabilities: [greet], surface: capabilityViews() })
const runtime = createRuntime(app)
外部写作应该被宣布为具有稳定的写作工具 idempotencyKey. 人类批准记录独立批准人身份,并默认拒绝请求人自行批准.
结构化生成在支持时使用提供者- 本地 JSON Schema, 然后将栅栏正常化, 与 Zod 验证, 并在返回打入的字前进行一次限定范围的修复尝试 StructuredOutputError。 。 。 .
评价套件支持便携式的JSON/JSONL数据集,独立的受计划约束的模型法官,重复运行,95%的置信间隔,持续的历史,以及包括JUnit和GitHub Actions说明在内的CI格式.
网络工具是选入的 。 使用 createFetchJsonTool({allowedOrigins:[...]})· ; builtinTools 仅包含范围内存操作.
使用 createModelFallback() 将命名为型号的适配器编成有边框回放、超时、总期限、断路、粘接续发状态以及使用意识回落历史.