@downcity/type 0.1.7 → 0.1.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/index.d.ts CHANGED
@@ -6,7 +6,6 @@
6
6
  * - 不放 Agent SDK 自己的组合类型,也不放 City SDK 的具体实现类。
7
7
  * - 运行时可执行能力通过隐藏 symbol 暴露,避免污染用户可见的模型目录字段。
8
8
  */
9
- import type { UIMessage, UIMessageChunk } from "ai";
10
9
  /**
11
10
  * City model 的公开协议标识。
12
11
  */
@@ -96,42 +95,42 @@ export interface CityModelDescriptor {
96
95
  default_modalities?: string[];
97
96
  }
98
97
  /**
99
- * City 模型执行输入。
98
+ * City 模型连接信息。
99
+ *
100
+ * 关键点(中文)
101
+ * - 该结构只给 SDK 内部消费,不作为模型目录的公开展示字段。
102
+ * - Agent SDK 会基于这些信息自行创建 AI SDK LanguageModel。
100
103
  */
101
- export interface CityModelInvokeInput {
102
- /**
103
- * 单轮 prompt 文本。
104
- */
105
- prompt?: string;
104
+ export interface CityModelConnection {
106
105
  /**
107
- * 多轮 UIMessage 消息列表。
106
+ * OpenAI-compatible 服务端点根地址,例如 `https://example.com/v1/ai`。
108
107
  */
109
- messages?: UIMessage[];
108
+ base_url: string;
110
109
  /**
111
- * 模型可调用工具定义。
110
+ * 当前 user token;Agent 会把它作为 provider apiKey 使用。
112
111
  */
113
- tools?: unknown;
112
+ api_key?: string;
114
113
  /**
115
- * provider 级扩展选项。
114
+ * 当前模型的调用 ID,默认写入 OpenAI-compatible 请求体的 `model` 字段。
116
115
  */
117
- providerOptions?: unknown;
116
+ model_id: string;
118
117
  /**
119
- * 其他透传给 City AIService action 的输入字段。
118
+ * 每次请求都需要额外合并到请求体的 City 上下文字段,例如 `town_id`。
120
119
  */
121
- [key: string]: unknown;
120
+ request_body: Record<string, unknown>;
122
121
  }
123
122
  /**
124
123
  * City 模型隐藏调用器。
125
124
  */
126
125
  export interface CityModelInvoker {
127
126
  /**
128
- * 使用当前 City 模型执行一次非流式文本调用。
129
- */
130
- text(input: CityModelInvokeInput): Promise<UIMessage>;
131
- /**
132
- * 使用当前 City 模型执行一次流式调用。
127
+ * 返回当前 City 模型的运行时连接信息。
128
+ *
129
+ * 关键点(中文)
130
+ * - CityModel 公开字段仍然是模型目录信息。
131
+ * - Agent SDK 负责把连接信息转换为 AI SDK LanguageModel。
133
132
  */
134
- stream(input: CityModelInvokeInput): Promise<ReadableStream<UIMessageChunk>>;
133
+ connection(): CityModelConnection;
135
134
  }
136
135
  /**
137
136
  * 可执行 City 模型。
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,IAAI,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,eAAe,EAAG,qBAA8B,CAAC;AAE9D;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,EAAE,OAAO,MAE9B,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,UAAU,EAAE,MAAM,EAAE,CAAC;IAErB;;OAEG;IACH,IAAI,EAAE,MAAM,EAAE,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE9B;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,uBAAuB,EAAE,CAAC;IAE7C;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAEzB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAC;IAEvB;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,IAAI,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAEtD;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC;CAC9E;AAED;;;;;;GAMG;AACH,MAAM,WAAW,SAAU,SAAQ,mBAAmB;IACpD;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,OAAO,eAAe,CAAC;IAEtC;;OAEG;IACH,QAAQ,CAAC,CAAC,kBAAkB,CAAC,EAAE,gBAAgB,CAAC;CACjD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,SAAS,CAS9D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;GAEG;AACH,eAAO,MAAM,eAAe,EAAG,qBAA8B,CAAC;AAE9D;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,EAAE,OAAO,MAE9B,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,UAAU,EAAE,MAAM,EAAE,CAAC;IAErB;;OAEG;IACH,IAAI,EAAE,MAAM,EAAE,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE9B;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,uBAAuB,EAAE,CAAC;IAE7C;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAEzB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;OAMG;IACH,UAAU,IAAI,mBAAmB,CAAC;CACnC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,SAAU,SAAQ,mBAAmB;IACpD;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,OAAO,eAAe,CAAC;IAEtC;;OAEG;IACH,QAAQ,CAAC,CAAC,kBAAkB,CAAC,EAAE,gBAAgB,CAAC;CACjD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,SAAS,CAa9D"}
package/bin/index.js CHANGED
@@ -25,9 +25,11 @@ export function isCityModel(value) {
25
25
  if (!value || typeof value !== "object")
26
26
  return false;
27
27
  const record = value;
28
+ const invoker = record[CITY_MODEL_INVOKER];
28
29
  return (record.kind === CITY_MODEL_KIND &&
29
30
  typeof record.id === "string" &&
30
- typeof record[CITY_MODEL_INVOKER] === "object" &&
31
- record[CITY_MODEL_INVOKER] !== null);
31
+ typeof invoker === "object" &&
32
+ invoker !== null &&
33
+ typeof invoker.connection === "function");
32
34
  }
33
35
  //# sourceMappingURL=index.js.map
package/bin/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,qBAA8B,CAAC;AAE9D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAkB,MAAM,CAAC,GAAG,CACzD,6BAA6B,CACrB,CAAC;AA2JX;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,MAAM,GAAG,KAAqC,CAAC;IACrD,OAAO,CACL,MAAM,CAAC,IAAI,KAAK,eAAe;QAC/B,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ;QAC7B,OAAO,MAAM,CAAC,kBAAkB,CAAC,KAAK,QAAQ;QAC9C,MAAM,CAAC,kBAAkB,CAAC,KAAK,IAAI,CACpC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,qBAA8B,CAAC;AAE9D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAkB,MAAM,CAAC,GAAG,CACzD,6BAA6B,CACrB,CAAC;AAyJX;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,MAAM,GAAG,KAAqC,CAAC;IACrD,MAAM,OAAO,GAAG,MAAM,CAAC,kBAAkB,CAE5B,CAAC;IACd,OAAO,CACL,MAAM,CAAC,IAAI,KAAK,eAAe;QAC/B,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ;QAC7B,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,KAAK,IAAI;QAChB,OAAO,OAAO,CAAC,UAAU,KAAK,UAAU,CACzC,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@downcity/type",
3
- "version": "0.1.7",
3
+ "version": "0.1.12",
4
4
  "description": "Downcity shared protocol types for cross-package SDK boundaries.",
5
5
  "type": "module",
6
6
  "main": "./bin/index.js",