TypeScript 最小示例
本文示例适合用来验证三件事:
- AgentOS 网关可访问
- SDK 初始化和 bundle 注册正常
- ModelKit chat 能返回有效结果
如果你在用 AI 编程工具,这一页更适合作为“参考真值”而不是长篇教程。
也就是说,当 AI 写出的接入代码和文档说法不一致时,应优先回到这里核对最小骨架。
推荐提示词
text
请参考 AgentOS 文档里的 TypeScript 最小示例,在我的项目里生成一个尽量贴近该示例结构的最小接入实现。
要求:
- 使用 agentos-sdk-ts
- 先 registerBundle
- 再 subscribe 一个最小事件处理器
- 再调用 modelkit.chat.create 完成一次最小消息请求
- 尽量保留示例的执行顺序和代码骨架,不要臆造新的初始化流程
- 如果需要模型名,优先支持通过环境变量传入,并给出默认回退值示例代码
示例来源:agentos-sdk-ts/example/agentos_sdk_example.mjs
ts
import { AgentOSEventHandler, AgentOSSDK, ModelTask } from 'agentos-sdk-ts';
const sdk = new AgentOSSDK({
baseUrl: process.env.AGENTOS_BASE_URL ?? 'http://127.0.0.1:8888'
});
class DemoEventHandler extends AgentOSEventHandler {
async onWelcome(welcome) {
console.log('Welcome bundleId:', welcome.bundleId);
}
}
async function main() {
await sdk.agentos.registerBundle({
bundleId: 'com.example.minimal.ts',
appGroupId: 'com.example.minimal'
});
await sdk.agentos.subscribe(new DemoEventHandler());
const models = await sdk.modelkit.listModelsByTask(ModelTask.chat);
const completion = await sdk.modelkit.chat.create({
model: process.env.AGENTOS_LLM_MODEL ?? models[0]?.id ?? 'qwen3-1.7b',
messages: [
{
role: 'user',
content: 'Say hello from the TypeScript minimal app.'
}
]
});
console.log(completion.choices?.[0]?.message?.content);
}
main().catch(console.error);运行方式
bash
npm install agentos-sdk-ts
AGENTOS_BASE_URL=http://127.0.0.1:8888 node app.mjs你应该看到什么
- 首次注册成功,没有鉴权错误
- SSE 订阅建立成功
- 终端输出一条模型返回的文本消息
AI 最容易写错的地方
- 跳过
registerBundle(...),直接假设已经有 token - 把 AgentOS 当成默认 OpenAI 官方地址,而不是独立网关
- 臆造不存在的 SDK 初始化参数或事件名
- 没有先验证最小链路就直接引入额外抽象
人工验收清单
- 代码结构是否仍然是
SDK 初始化 -> registerBundle -> subscribe -> chat.create - 是否支持通过
AGENTOS_BASE_URL指定网关地址 - 是否至少打印出一条可见的模型返回内容
