@leaflow/sdk 0.5.1 → 0.6.0

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.
Files changed (122) hide show
  1. package/dist/generated/assistant/index.d.ts +8 -7
  2. package/dist/generated/assistant/index.js +6 -5
  3. package/dist/generated/assistant/models/bindingCodeResponseBody.d.ts +34 -0
  4. package/dist/generated/assistant/models/bindingCodeResponseBody.js +31 -0
  5. package/dist/generated/assistant/models/bindingResource.d.ts +4 -1
  6. package/dist/generated/assistant/models/bindingResourceConnState.d.ts +37 -0
  7. package/dist/generated/assistant/models/bindingResourceConnState.js +37 -0
  8. package/dist/generated/assistant/models/bindingResourceStatus.d.ts +36 -0
  9. package/dist/generated/assistant/models/bindingResourceStatus.js +36 -0
  10. package/dist/generated/assistant/models/channelResource.d.ts +10 -2
  11. package/dist/generated/assistant/models/channelResourceConnState.d.ts +40 -0
  12. package/dist/generated/assistant/models/channelResourceConnState.js +37 -0
  13. package/dist/generated/assistant/models/channelResourceRuntimeState.d.ts +38 -0
  14. package/dist/generated/assistant/models/channelResourceRuntimeState.js +35 -0
  15. package/dist/generated/assistant/models/channelResourceSenderPolicy.d.ts +35 -0
  16. package/dist/generated/assistant/models/channelResourceSenderPolicy.js +35 -0
  17. package/dist/generated/assistant/models/channelResourceStatus.d.ts +36 -0
  18. package/dist/generated/assistant/models/channelResourceStatus.js +36 -0
  19. package/dist/generated/assistant/models/channelWithSecretResponseBody.d.ts +57 -0
  20. package/dist/generated/assistant/models/channelWithSecretResponseBody.js +1 -0
  21. package/dist/generated/assistant/models/channelWithSecretResponseBodyAllowFrom.d.ts +31 -0
  22. package/dist/generated/assistant/models/channelWithSecretResponseBodyAllowFrom.js +31 -0
  23. package/dist/generated/assistant/models/channelWithSecretResponseBodyConnState.d.ts +40 -0
  24. package/dist/generated/assistant/models/channelWithSecretResponseBodyConnState.js +37 -0
  25. package/dist/generated/assistant/models/channelWithSecretResponseBodyRuntimeState.d.ts +38 -0
  26. package/dist/generated/assistant/models/channelWithSecretResponseBodyRuntimeState.js +35 -0
  27. package/dist/generated/assistant/models/channelWithSecretResponseBodySenderPolicy.d.ts +35 -0
  28. package/dist/generated/assistant/models/channelWithSecretResponseBodySenderPolicy.js +35 -0
  29. package/dist/generated/assistant/models/channelWithSecretResponseBodyStatus.d.ts +36 -0
  30. package/dist/generated/assistant/models/channelWithSecretResponseBodyStatus.js +36 -0
  31. package/dist/generated/assistant/models/channelWithSecretResponseBodyWebhookSecret.d.ts +34 -0
  32. package/dist/generated/assistant/models/channelWithSecretResponseBodyWebhookSecret.js +31 -0
  33. package/dist/generated/assistant/models/channelWithSecretResponseBodyWebhookUrl.d.ts +34 -0
  34. package/dist/generated/assistant/models/channelWithSecretResponseBodyWebhookUrl.js +31 -0
  35. package/dist/generated/assistant/models/createChannelRequestBody.d.ts +3 -2
  36. package/dist/generated/assistant/models/createChannelRequestBodySenderPolicy.d.ts +35 -0
  37. package/dist/generated/assistant/models/createChannelRequestBodySenderPolicy.js +35 -0
  38. package/dist/generated/assistant/models/index.d.ts +17 -1
  39. package/dist/generated/assistant/models/index.js +17 -1
  40. package/dist/generated/assistant/models/itemResourceStatus.d.ts +1 -1
  41. package/dist/generated/assistant/models/itemResourceStatus.js +1 -1
  42. package/dist/generated/assistant/models/itemResourceType.d.ts +1 -0
  43. package/dist/generated/assistant/models/itemResourceType.js +1 -0
  44. package/dist/generated/assistant/models/loginResource.d.ts +5 -2
  45. package/dist/generated/assistant/models/loginResource.js +0 -30
  46. package/dist/generated/assistant/models/loginResourceStatus.d.ts +39 -0
  47. package/dist/generated/assistant/models/loginResourceStatus.js +39 -0
  48. package/dist/generated/assistant/models/updateChannelRequestBodySenderPolicy.d.ts +2 -2
  49. package/dist/generated/assistant/models/updateChannelRequestBodySenderPolicy.js +2 -2
  50. package/dist/generated/tunnel/index.d.ts +142 -0
  51. package/dist/generated/tunnel/index.js +149 -0
  52. package/dist/generated/tunnel/models/actOnTunnelRequestBody.d.ts +28 -0
  53. package/dist/generated/tunnel/models/actOnTunnelRequestBody.js +1 -0
  54. package/dist/generated/tunnel/models/actOnTunnelRequestBodyAction.d.ts +29 -0
  55. package/dist/generated/tunnel/models/actOnTunnelRequestBodyAction.js +29 -0
  56. package/dist/generated/tunnel/models/changeTunnelPlanRequestBody.d.ts +27 -0
  57. package/dist/generated/tunnel/models/changeTunnelPlanRequestBody.js +25 -0
  58. package/dist/generated/tunnel/models/error.d.ts +31 -0
  59. package/dist/generated/tunnel/models/error.js +1 -0
  60. package/dist/generated/tunnel/models/errorMeta.d.ts +27 -0
  61. package/dist/generated/tunnel/models/errorMeta.js +25 -0
  62. package/dist/generated/tunnel/models/index.d.ts +54 -0
  63. package/dist/generated/tunnel/models/index.js +54 -0
  64. package/dist/generated/tunnel/models/lengthAwarePageOperationLogResource.d.ts +35 -0
  65. package/dist/generated/tunnel/models/lengthAwarePageOperationLogResource.js +1 -0
  66. package/dist/generated/tunnel/models/listTunnelOperationLogsParams.d.ts +43 -0
  67. package/dist/generated/tunnel/models/listTunnelOperationLogsParams.js +25 -0
  68. package/dist/generated/tunnel/models/listTunnelUsageSeriesParams.d.ts +32 -0
  69. package/dist/generated/tunnel/models/listTunnelUsageSeriesParams.js +25 -0
  70. package/dist/generated/tunnel/models/openTunnelRequestBody.d.ts +38 -0
  71. package/dist/generated/tunnel/models/openTunnelRequestBody.js +25 -0
  72. package/dist/generated/tunnel/models/operationLogResource.d.ts +38 -0
  73. package/dist/generated/tunnel/models/operationLogResource.js +1 -0
  74. package/dist/generated/tunnel/models/operationLogResourceActor.d.ts +28 -0
  75. package/dist/generated/tunnel/models/operationLogResourceActor.js +25 -0
  76. package/dist/generated/tunnel/models/operationLogResourcePayload.d.ts +27 -0
  77. package/dist/generated/tunnel/models/operationLogResourcePayload.js +25 -0
  78. package/dist/generated/tunnel/models/subscriptionResource.d.ts +33 -0
  79. package/dist/generated/tunnel/models/subscriptionResource.js +1 -0
  80. package/dist/generated/tunnel/models/subscriptionResourceStatus.d.ts +32 -0
  81. package/dist/generated/tunnel/models/subscriptionResourceStatus.js +29 -0
  82. package/dist/generated/tunnel/models/tunnelPlanListResponseBody.d.ts +28 -0
  83. package/dist/generated/tunnel/models/tunnelPlanListResponseBody.js +1 -0
  84. package/dist/generated/tunnel/models/tunnelPlanResource.d.ts +33 -0
  85. package/dist/generated/tunnel/models/tunnelPlanResource.js +25 -0
  86. package/dist/generated/tunnel/models/tunnelResource.d.ts +54 -0
  87. package/dist/generated/tunnel/models/tunnelResource.js +1 -0
  88. package/dist/generated/tunnel/models/tunnelResourceEmail.d.ts +28 -0
  89. package/dist/generated/tunnel/models/tunnelResourceEmail.js +25 -0
  90. package/dist/generated/tunnel/models/tunnelResourceFailure.d.ts +28 -0
  91. package/dist/generated/tunnel/models/tunnelResourceFailure.js +25 -0
  92. package/dist/generated/tunnel/models/tunnelResourceStatus.d.ts +32 -0
  93. package/dist/generated/tunnel/models/tunnelResourceStatus.js +29 -0
  94. package/dist/generated/tunnel/models/tunnelResourceSubscriptionStatus.d.ts +32 -0
  95. package/dist/generated/tunnel/models/tunnelResourceSubscriptionStatus.js +29 -0
  96. package/dist/generated/tunnel/models/tunnelResourceSuspendedAt.d.ts +28 -0
  97. package/dist/generated/tunnel/models/tunnelResourceSuspendedAt.js +25 -0
  98. package/dist/generated/tunnel/models/tunnelUsageSnapshot.d.ts +38 -0
  99. package/dist/generated/tunnel/models/tunnelUsageSnapshot.js +1 -0
  100. package/dist/generated/tunnel/models/tunnelUsageSnapshotSyncedAt.d.ts +28 -0
  101. package/dist/generated/tunnel/models/tunnelUsageSnapshotSyncedAt.js +25 -0
  102. package/dist/generated/tunnel/models/updateTunnelProfileRequestBody.d.ts +34 -0
  103. package/dist/generated/tunnel/models/updateTunnelProfileRequestBody.js +1 -0
  104. package/dist/generated/tunnel/models/updateTunnelProfileRequestBodyEmail.d.ts +29 -0
  105. package/dist/generated/tunnel/models/updateTunnelProfileRequestBodyEmail.js +25 -0
  106. package/dist/generated/tunnel/models/usageDayResource.d.ts +30 -0
  107. package/dist/generated/tunnel/models/usageDayResource.js +25 -0
  108. package/dist/generated/tunnel/models/usageResource.d.ts +43 -0
  109. package/dist/generated/tunnel/models/usageResource.js +1 -0
  110. package/dist/generated/tunnel/models/usageResourceQuotaExceededAt.d.ts +28 -0
  111. package/dist/generated/tunnel/models/usageResourceQuotaExceededAt.js +25 -0
  112. package/dist/generated/tunnel/models/usageSeriesResource.d.ts +30 -0
  113. package/dist/generated/tunnel/models/usageSeriesResource.js +1 -0
  114. package/dist/index.d.ts +14 -0
  115. package/dist/index.js +18 -3
  116. package/openapi/assistant.version +1 -1
  117. package/openapi/assistant.yaml +147 -25
  118. package/openapi/compute.version +1 -1
  119. package/openapi/monitoring.version +1 -1
  120. package/openapi/tunnel.version +1 -0
  121. package/openapi/tunnel.yaml +773 -0
  122. package/package.json +1 -1
@@ -28,7 +28,7 @@ GET /v1/turns/{turn}/stream?ticket=<ticket>&cursor=<cursor>
28
28
  - 三种结束事件:`done` 本次 turn 完成(附带最终状态)、`paused` 助手在等待用户处理(重新取回对话文档读 `wait`)、`stalled` 执行已中断且不会恢复,不要重连。
29
29
  * OpenAPI spec version: 1.0.0
30
30
  */
31
- import type { AnswerRequestBody, BindingResource, ChannelResource, CheckSenderParams, ClaimCodeResponseBody, CreateChannelRequestBody, CreateThreadRequestBody, DecideRequestBody, DocumentResource, EarlierResponseBody, LengthAwarePageBindingResource, LengthAwarePageChannelResource, ListBindingsParams, ListChannelRejectionsParams, ListChannelsParams, ListEarlierItemsParams, ListThreadsParams, LoginResource, ModelListResponseBody, PlatformListResponseBody, RejectionListResponseBody, RevertRequestBody, RevertedCountResponseBody, RotateSecretRequestBody, SendMessageRequestBody, SenderCheckResource, ThreadListResponseBody, ThreadSummaryResource, TurnIDResponseBody, UpdateChannelRequestBody, UpdateThreadRequestBody, UploadedResource, VerifyCodeRequestBody, WebhookSecretResponseBody } from './models/index.js';
31
+ import type { AnswerRequestBody, BindingCodeResponseBody, BindingResource, ChannelResource, ChannelWithSecretResponseBody, CheckSenderParams, CreateChannelRequestBody, CreateThreadRequestBody, DecideRequestBody, DocumentResource, EarlierResponseBody, LengthAwarePageBindingResource, LengthAwarePageChannelResource, ListBindingsParams, ListChannelRejectionsParams, ListChannelsParams, ListEarlierItemsParams, ListThreadsParams, LoginResource, ModelListResponseBody, PlatformListResponseBody, RejectionListResponseBody, RevertRequestBody, RevertedCountResponseBody, RotateSecretRequestBody, SendMessageRequestBody, SenderCheckResource, ThreadListResponseBody, ThreadSummaryResource, TurnIDResponseBody, UpdateChannelRequestBody, UpdateThreadRequestBody, UploadedResource, VerifyCodeRequestBody, WebhookSecretResponseBody } from './models/index.js';
32
32
  import { request } from '../../http.js';
33
33
  type SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];
34
34
  /**
@@ -59,9 +59,10 @@ export declare const getBinding: (binding: string, options?: SecondParameter<typ
59
59
  */
60
60
  export declare const listChannels: (params?: ListChannelsParams, options?: SecondParameter<typeof request<LengthAwarePageChannelResource>>) => Promise<LengthAwarePageChannelResource>;
61
61
  /**
62
+ * 回调密钥归谁定由平台决定,见 list-platforms 的 secretSource:generated 的平台不要传 webhookSecret,我们生成的那把仅在本次响应中返回一次、之后无法再次取回,错过了只能调轮换接口换一把新的;supplied 的平台必须把平台后台那把传进来,此时响应里的webhookSecret 为 null。
62
63
  * @summary 创建通道
63
64
  */
64
- export declare const createChannel: (createChannelRequestBody: CreateChannelRequestBody, options?: SecondParameter<typeof request<ChannelResource>>) => Promise<ChannelResource>;
65
+ export declare const createChannel: (createChannelRequestBody: CreateChannelRequestBody, options?: SecondParameter<typeof request<ChannelWithSecretResponseBody>>) => Promise<ChannelWithSecretResponseBody>;
65
66
  /**
66
67
  * 删除后该通道不再接收入站消息,其上的绑定一并失效。项目处于停服或清理状态时本接口仍然可用。
67
68
  * @summary 删除通道
@@ -77,10 +78,10 @@ export declare const getChannel: (channel: string, options?: SecondParameter<typ
77
78
  */
78
79
  export declare const updateChannel: (channel: string, updateChannelRequestBody: UpdateChannelRequestBody, options?: SecondParameter<typeof request<ChannelResource>>) => Promise<ChannelResource>;
79
80
  /**
80
- * 生成一个一次性认领码交给待绑定的人,他在该平台上用自己的账号把这个码发给助手即完成绑定。绑定只能由本人以这种方式建立,不能直接指定平台账号。认领码有有效期,过期后需重新签发。
81
- * @summary 签发认领码
81
+ * 生成一个一次性绑定码交给待绑定的人,他在该平台上用自己的账号把这个码发给助手即完成绑定。绑定只能由本人以这种方式建立,不能直接指定平台账号。绑定码有有效期,过期后需重新签发。
82
+ * @summary 签发绑定码
82
83
  */
83
- export declare const createClaimCode: (channel: string, options?: SecondParameter<typeof request<ClaimCodeResponseBody>>) => Promise<ClaimCodeResponseBody>;
84
+ export declare const createBindingCode: (channel: string, options?: SecondParameter<typeof request<BindingCodeResponseBody>>) => Promise<BindingCodeResponseBody>;
84
85
  /**
85
86
  * 排查「发了消息但助手没有响应」时使用。按时间倒序返回最近被这条通道拒绝的入站消息及其拒绝原因,最常见的原因是发送方尚未绑定。
86
87
  * @summary 查看最近被拒绝的入站消息
@@ -92,7 +93,7 @@ export declare const listChannelRejections: (channel: string, params?: ListChann
92
93
  */
93
94
  export declare const rotateChannelSecret: (channel: string, rotateSecretRequestBody: RotateSecretRequestBody, options?: SecondParameter<typeof request<WebhookSecretResponseBody>>) => Promise<WebhookSecretResponseBody>;
94
95
  /**
95
- * 改完发件人策略之后用来自查,不发送任何消息、也不改变任何状态:它走的是和真实入站完全相同的那份判定,并说明结论由哪一条规则得出。无法推演认领码那一条——是否是认领码取决于对方发来的内容。
96
+ * 改完发件人策略之后用来自查,不发送任何消息、也不改变任何状态:它走的是和真实入站完全相同的那份判定,并说明结论由哪一条规则得出。无法推演绑定码那一条——是否是绑定码取决于对方发来的内容。
96
97
  * @summary 推演一个发件人会不会被放行
97
98
  */
98
99
  export declare const checkSender: (channel: string, params: CheckSenderParams, options?: SecondParameter<typeof request<SenderCheckResource>>) => Promise<SenderCheckResource>;
@@ -184,7 +185,7 @@ export type CreateChannelResult = NonNullable<Awaited<ReturnType<typeof createCh
184
185
  export type DeleteChannelResult = NonNullable<Awaited<ReturnType<typeof deleteChannel>>>;
185
186
  export type GetChannelResult = NonNullable<Awaited<ReturnType<typeof getChannel>>>;
186
187
  export type UpdateChannelResult = NonNullable<Awaited<ReturnType<typeof updateChannel>>>;
187
- export type CreateClaimCodeResult = NonNullable<Awaited<ReturnType<typeof createClaimCode>>>;
188
+ export type CreateBindingCodeResult = NonNullable<Awaited<ReturnType<typeof createBindingCode>>>;
188
189
  export type ListChannelRejectionsResult = NonNullable<Awaited<ReturnType<typeof listChannelRejections>>>;
189
190
  export type RotateChannelSecretResult = NonNullable<Awaited<ReturnType<typeof rotateChannelSecret>>>;
190
191
  export type CheckSenderResult = NonNullable<Awaited<ReturnType<typeof checkSender>>>;
@@ -49,6 +49,7 @@ export const listChannels = (params, options) => {
49
49
  }, options);
50
50
  };
51
51
  /**
52
+ * 回调密钥归谁定由平台决定,见 list-platforms 的 secretSource:generated 的平台不要传 webhookSecret,我们生成的那把仅在本次响应中返回一次、之后无法再次取回,错过了只能调轮换接口换一把新的;supplied 的平台必须把平台后台那把传进来,此时响应里的webhookSecret 为 null。
52
53
  * @summary 创建通道
53
54
  */
54
55
  export const createChannel = (createChannelRequestBody, options) => {
@@ -83,11 +84,11 @@ export const updateChannel = (channel, updateChannelRequestBody, options) => {
83
84
  }, options);
84
85
  };
85
86
  /**
86
- * 生成一个一次性认领码交给待绑定的人,他在该平台上用自己的账号把这个码发给助手即完成绑定。绑定只能由本人以这种方式建立,不能直接指定平台账号。认领码有有效期,过期后需重新签发。
87
- * @summary 签发认领码
87
+ * 生成一个一次性绑定码交给待绑定的人,他在该平台上用自己的账号把这个码发给助手即完成绑定。绑定只能由本人以这种方式建立,不能直接指定平台账号。绑定码有有效期,过期后需重新签发。
88
+ * @summary 签发绑定码
88
89
  */
89
- export const createClaimCode = (channel, options) => {
90
- return request({ url: `/v1/channels/${channel}/claim-codes`, method: 'POST'
90
+ export const createBindingCode = (channel, options) => {
91
+ return request({ url: `/v1/channels/${channel}/binding-codes`, method: 'POST'
91
92
  }, options);
92
93
  };
93
94
  /**
@@ -110,7 +111,7 @@ export const rotateChannelSecret = (channel, rotateSecretRequestBody, options) =
110
111
  }, options);
111
112
  };
112
113
  /**
113
- * 改完发件人策略之后用来自查,不发送任何消息、也不改变任何状态:它走的是和真实入站完全相同的那份判定,并说明结论由哪一条规则得出。无法推演认领码那一条——是否是认领码取决于对方发来的内容。
114
+ * 改完发件人策略之后用来自查,不发送任何消息、也不改变任何状态:它走的是和真实入站完全相同的那份判定,并说明结论由哪一条规则得出。无法推演绑定码那一条——是否是绑定码取决于对方发来的内容。
114
115
  * @summary 推演一个发件人会不会被放行
115
116
  */
116
117
  export const checkSender = (channel, params, options) => {
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Assistant 用户 API
5
+ * 控制台里的 AI 助手:对话、消息、工具调用与审批、附件,以及把助手接到微信、飞书、Telegram 等即时通讯平台上。
6
+
7
+ ## 一次对话
8
+
9
+ 1. `POST /v1/threads` 创建对话;
10
+ 2. `POST /v1/threads/{thread}/messages` 发送消息,立即返回 `turnId`,助手的执行在后台进行;
11
+ 3. `GET /v1/threads/{thread}` 取回对话文档用于渲染,并按其中的 `stream` 连上实时输出;
12
+ 4. 助手需要用户参与时,文档中的 `wait` 会说明是哪一种:审批一批工具调用(`POST /v1/threads/{thread}/approvals/{batch}`),或回答几个问题(`POST /v1/threads/{thread}/questions/{item}`)。处理完成后助手自动继续。
13
+
14
+ 发送图片分两步:先 `POST /v1/attachments` 上传拿到 id,发送消息时放进 `attachmentIds`。
15
+
16
+ ## 实时输出
17
+
18
+ ```
19
+ GET /v1/turns/{turn}/stream?ticket=<ticket>&cursor=<cursor>
20
+ ```
21
+
22
+ 这是一条 Server-Sent Events 流,因此不在下方的接口列表中。
23
+
24
+ - `path` 与 `ticket` 都取自对话文档的 `stream`。`path` 是相对路径,按取回文档的地址解析;
25
+ - `cursor` 是起始位置,取自对话文档的 `cursor`。不传则从可用范围的开头开始;
26
+ - 推送的每一条都是对那份对话文档的一次增量编辑,套用同一套渲染逻辑即可;
27
+ - 连接有生存期,到时会正常关闭。使用 `EventSource` 时浏览器会自动携带 `Last-Event-ID` 重连并从断点续传,无需额外处理;
28
+ - 三种结束事件:`done` 本次 turn 完成(附带最终状态)、`paused` 助手在等待用户处理(重新取回对话文档读 `wait`)、`stalled` 执行已中断且不会恢复,不要重连。
29
+ * OpenAPI spec version: 1.0.0
30
+ */
31
+ export interface BindingCodeResponseBody {
32
+ code: string;
33
+ expiresAt: string;
34
+ }
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Assistant 用户 API
5
+ * 控制台里的 AI 助手:对话、消息、工具调用与审批、附件,以及把助手接到微信、飞书、Telegram 等即时通讯平台上。
6
+
7
+ ## 一次对话
8
+
9
+ 1. `POST /v1/threads` 创建对话;
10
+ 2. `POST /v1/threads/{thread}/messages` 发送消息,立即返回 `turnId`,助手的执行在后台进行;
11
+ 3. `GET /v1/threads/{thread}` 取回对话文档用于渲染,并按其中的 `stream` 连上实时输出;
12
+ 4. 助手需要用户参与时,文档中的 `wait` 会说明是哪一种:审批一批工具调用(`POST /v1/threads/{thread}/approvals/{batch}`),或回答几个问题(`POST /v1/threads/{thread}/questions/{item}`)。处理完成后助手自动继续。
13
+
14
+ 发送图片分两步:先 `POST /v1/attachments` 上传拿到 id,发送消息时放进 `attachmentIds`。
15
+
16
+ ## 实时输出
17
+
18
+ ```
19
+ GET /v1/turns/{turn}/stream?ticket=<ticket>&cursor=<cursor>
20
+ ```
21
+
22
+ 这是一条 Server-Sent Events 流,因此不在下方的接口列表中。
23
+
24
+ - `path` 与 `ticket` 都取自对话文档的 `stream`。`path` 是相对路径,按取回文档的地址解析;
25
+ - `cursor` 是起始位置,取自对话文档的 `cursor`。不传则从可用范围的开头开始;
26
+ - 推送的每一条都是对那份对话文档的一次增量编辑,套用同一套渲染逻辑即可;
27
+ - 连接有生存期,到时会正常关闭。使用 `EventSource` 时浏览器会自动携带 `Last-Event-ID` 重连并从断点续传,无需额外处理;
28
+ - 三种结束事件:`done` 本次 turn 完成(附带最终状态)、`paused` 助手在等待用户处理(重新取回对话文档读 `wait`)、`stalled` 执行已中断且不会恢复,不要重连。
29
+ * OpenAPI spec version: 1.0.0
30
+ */
31
+ export {};
@@ -28,13 +28,16 @@ GET /v1/turns/{turn}/stream?ticket=<ticket>&cursor=<cursor>
28
28
  - 三种结束事件:`done` 本次 turn 完成(附带最终状态)、`paused` 助手在等待用户处理(重新取回对话文档读 `wait`)、`stalled` 执行已中断且不会恢复,不要重连。
29
29
  * OpenAPI spec version: 1.0.0
30
30
  */
31
+ import type { BindingResourceConnState } from './bindingResourceConnState.js';
32
+ import type { BindingResourceStatus } from './bindingResourceStatus.js';
31
33
  import type { BindingResourceVerifiedAt } from './bindingResourceVerifiedAt.js';
32
34
  export interface BindingResource {
33
35
  channelId: string;
36
+ connState: BindingResourceConnState;
34
37
  createdAt: string;
35
38
  id: string;
36
39
  peerName: string;
37
40
  platform: string;
38
- status: string;
41
+ status: BindingResourceStatus;
39
42
  verifiedAt: BindingResourceVerifiedAt;
40
43
  }
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Assistant 用户 API
5
+ * 控制台里的 AI 助手:对话、消息、工具调用与审批、附件,以及把助手接到微信、飞书、Telegram 等即时通讯平台上。
6
+
7
+ ## 一次对话
8
+
9
+ 1. `POST /v1/threads` 创建对话;
10
+ 2. `POST /v1/threads/{thread}/messages` 发送消息,立即返回 `turnId`,助手的执行在后台进行;
11
+ 3. `GET /v1/threads/{thread}` 取回对话文档用于渲染,并按其中的 `stream` 连上实时输出;
12
+ 4. 助手需要用户参与时,文档中的 `wait` 会说明是哪一种:审批一批工具调用(`POST /v1/threads/{thread}/approvals/{batch}`),或回答几个问题(`POST /v1/threads/{thread}/questions/{item}`)。处理完成后助手自动继续。
13
+
14
+ 发送图片分两步:先 `POST /v1/attachments` 上传拿到 id,发送消息时放进 `attachmentIds`。
15
+
16
+ ## 实时输出
17
+
18
+ ```
19
+ GET /v1/turns/{turn}/stream?ticket=<ticket>&cursor=<cursor>
20
+ ```
21
+
22
+ 这是一条 Server-Sent Events 流,因此不在下方的接口列表中。
23
+
24
+ - `path` 与 `ticket` 都取自对话文档的 `stream`。`path` 是相对路径,按取回文档的地址解析;
25
+ - `cursor` 是起始位置,取自对话文档的 `cursor`。不传则从可用范围的开头开始;
26
+ - 推送的每一条都是对那份对话文档的一次增量编辑,套用同一套渲染逻辑即可;
27
+ - 连接有生存期,到时会正常关闭。使用 `EventSource` 时浏览器会自动携带 `Last-Event-ID` 重连并从断点续传,无需额外处理;
28
+ - 三种结束事件:`done` 本次 turn 完成(附带最终状态)、`paused` 助手在等待用户处理(重新取回对话文档读 `wait`)、`stalled` 执行已中断且不会恢复,不要重连。
29
+ * OpenAPI spec version: 1.0.0
30
+ */
31
+ export type BindingResourceConnState = typeof BindingResourceConnState[keyof typeof BindingResourceConnState];
32
+ export declare const BindingResourceConnState: {
33
+ readonly logged_out: "logged_out";
34
+ readonly qr_pending: "qr_pending";
35
+ readonly online: "online";
36
+ readonly expired: "expired";
37
+ };
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Assistant 用户 API
5
+ * 控制台里的 AI 助手:对话、消息、工具调用与审批、附件,以及把助手接到微信、飞书、Telegram 等即时通讯平台上。
6
+
7
+ ## 一次对话
8
+
9
+ 1. `POST /v1/threads` 创建对话;
10
+ 2. `POST /v1/threads/{thread}/messages` 发送消息,立即返回 `turnId`,助手的执行在后台进行;
11
+ 3. `GET /v1/threads/{thread}` 取回对话文档用于渲染,并按其中的 `stream` 连上实时输出;
12
+ 4. 助手需要用户参与时,文档中的 `wait` 会说明是哪一种:审批一批工具调用(`POST /v1/threads/{thread}/approvals/{batch}`),或回答几个问题(`POST /v1/threads/{thread}/questions/{item}`)。处理完成后助手自动继续。
13
+
14
+ 发送图片分两步:先 `POST /v1/attachments` 上传拿到 id,发送消息时放进 `attachmentIds`。
15
+
16
+ ## 实时输出
17
+
18
+ ```
19
+ GET /v1/turns/{turn}/stream?ticket=<ticket>&cursor=<cursor>
20
+ ```
21
+
22
+ 这是一条 Server-Sent Events 流,因此不在下方的接口列表中。
23
+
24
+ - `path` 与 `ticket` 都取自对话文档的 `stream`。`path` 是相对路径,按取回文档的地址解析;
25
+ - `cursor` 是起始位置,取自对话文档的 `cursor`。不传则从可用范围的开头开始;
26
+ - 推送的每一条都是对那份对话文档的一次增量编辑,套用同一套渲染逻辑即可;
27
+ - 连接有生存期,到时会正常关闭。使用 `EventSource` 时浏览器会自动携带 `Last-Event-ID` 重连并从断点续传,无需额外处理;
28
+ - 三种结束事件:`done` 本次 turn 完成(附带最终状态)、`paused` 助手在等待用户处理(重新取回对话文档读 `wait`)、`stalled` 执行已中断且不会恢复,不要重连。
29
+ * OpenAPI spec version: 1.0.0
30
+ */
31
+ // eslint-disable-next-line @typescript-eslint/no-redeclare
32
+ export const BindingResourceConnState = {
33
+ logged_out: 'logged_out',
34
+ qr_pending: 'qr_pending',
35
+ online: 'online',
36
+ expired: 'expired',
37
+ };
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Assistant 用户 API
5
+ * 控制台里的 AI 助手:对话、消息、工具调用与审批、附件,以及把助手接到微信、飞书、Telegram 等即时通讯平台上。
6
+
7
+ ## 一次对话
8
+
9
+ 1. `POST /v1/threads` 创建对话;
10
+ 2. `POST /v1/threads/{thread}/messages` 发送消息,立即返回 `turnId`,助手的执行在后台进行;
11
+ 3. `GET /v1/threads/{thread}` 取回对话文档用于渲染,并按其中的 `stream` 连上实时输出;
12
+ 4. 助手需要用户参与时,文档中的 `wait` 会说明是哪一种:审批一批工具调用(`POST /v1/threads/{thread}/approvals/{batch}`),或回答几个问题(`POST /v1/threads/{thread}/questions/{item}`)。处理完成后助手自动继续。
13
+
14
+ 发送图片分两步:先 `POST /v1/attachments` 上传拿到 id,发送消息时放进 `attachmentIds`。
15
+
16
+ ## 实时输出
17
+
18
+ ```
19
+ GET /v1/turns/{turn}/stream?ticket=<ticket>&cursor=<cursor>
20
+ ```
21
+
22
+ 这是一条 Server-Sent Events 流,因此不在下方的接口列表中。
23
+
24
+ - `path` 与 `ticket` 都取自对话文档的 `stream`。`path` 是相对路径,按取回文档的地址解析;
25
+ - `cursor` 是起始位置,取自对话文档的 `cursor`。不传则从可用范围的开头开始;
26
+ - 推送的每一条都是对那份对话文档的一次增量编辑,套用同一套渲染逻辑即可;
27
+ - 连接有生存期,到时会正常关闭。使用 `EventSource` 时浏览器会自动携带 `Last-Event-ID` 重连并从断点续传,无需额外处理;
28
+ - 三种结束事件:`done` 本次 turn 完成(附带最终状态)、`paused` 助手在等待用户处理(重新取回对话文档读 `wait`)、`stalled` 执行已中断且不会恢复,不要重连。
29
+ * OpenAPI spec version: 1.0.0
30
+ */
31
+ export type BindingResourceStatus = typeof BindingResourceStatus[keyof typeof BindingResourceStatus];
32
+ export declare const BindingResourceStatus: {
33
+ readonly pending: "pending";
34
+ readonly active: "active";
35
+ readonly revoked: "revoked";
36
+ };
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Assistant 用户 API
5
+ * 控制台里的 AI 助手:对话、消息、工具调用与审批、附件,以及把助手接到微信、飞书、Telegram 等即时通讯平台上。
6
+
7
+ ## 一次对话
8
+
9
+ 1. `POST /v1/threads` 创建对话;
10
+ 2. `POST /v1/threads/{thread}/messages` 发送消息,立即返回 `turnId`,助手的执行在后台进行;
11
+ 3. `GET /v1/threads/{thread}` 取回对话文档用于渲染,并按其中的 `stream` 连上实时输出;
12
+ 4. 助手需要用户参与时,文档中的 `wait` 会说明是哪一种:审批一批工具调用(`POST /v1/threads/{thread}/approvals/{batch}`),或回答几个问题(`POST /v1/threads/{thread}/questions/{item}`)。处理完成后助手自动继续。
13
+
14
+ 发送图片分两步:先 `POST /v1/attachments` 上传拿到 id,发送消息时放进 `attachmentIds`。
15
+
16
+ ## 实时输出
17
+
18
+ ```
19
+ GET /v1/turns/{turn}/stream?ticket=<ticket>&cursor=<cursor>
20
+ ```
21
+
22
+ 这是一条 Server-Sent Events 流,因此不在下方的接口列表中。
23
+
24
+ - `path` 与 `ticket` 都取自对话文档的 `stream`。`path` 是相对路径,按取回文档的地址解析;
25
+ - `cursor` 是起始位置,取自对话文档的 `cursor`。不传则从可用范围的开头开始;
26
+ - 推送的每一条都是对那份对话文档的一次增量编辑,套用同一套渲染逻辑即可;
27
+ - 连接有生存期,到时会正常关闭。使用 `EventSource` 时浏览器会自动携带 `Last-Event-ID` 重连并从断点续传,无需额外处理;
28
+ - 三种结束事件:`done` 本次 turn 完成(附带最终状态)、`paused` 助手在等待用户处理(重新取回对话文档读 `wait`)、`stalled` 执行已中断且不会恢复,不要重连。
29
+ * OpenAPI spec version: 1.0.0
30
+ */
31
+ // eslint-disable-next-line @typescript-eslint/no-redeclare
32
+ export const BindingResourceStatus = {
33
+ pending: 'pending',
34
+ active: 'active',
35
+ revoked: 'revoked',
36
+ };
@@ -29,15 +29,23 @@ GET /v1/turns/{turn}/stream?ticket=<ticket>&cursor=<cursor>
29
29
  * OpenAPI spec version: 1.0.0
30
30
  */
31
31
  import type { ChannelResourceAllowFrom } from './channelResourceAllowFrom.js';
32
+ import type { ChannelResourceConnState } from './channelResourceConnState.js';
33
+ import type { ChannelResourceRuntimeState } from './channelResourceRuntimeState.js';
34
+ import type { ChannelResourceSenderPolicy } from './channelResourceSenderPolicy.js';
35
+ import type { ChannelResourceStatus } from './channelResourceStatus.js';
32
36
  import type { ChannelResourceWebhookUrl } from './channelResourceWebhookUrl.js';
33
37
  export interface ChannelResource {
34
38
  allowFrom: ChannelResourceAllowFrom;
39
+ /** 平台接入状态。只有 online 才收得到消息、也才签得出绑定码 */
40
+ connState: ChannelResourceConnState;
35
41
  createdAt: string;
36
42
  id: string;
37
43
  name: string;
38
44
  platform: string;
39
- senderPolicy: string;
40
- status: string;
45
+ /** 常驻连接此刻的状态。回调型平台恒为 stopped */
46
+ runtimeState: ChannelResourceRuntimeState;
47
+ senderPolicy: ChannelResourceSenderPolicy;
48
+ status: ChannelResourceStatus;
41
49
  updatedAt: string;
42
50
  /** 回调路径,网关配置和排查时用 */
43
51
  webhookPath: string;
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Assistant 用户 API
5
+ * 控制台里的 AI 助手:对话、消息、工具调用与审批、附件,以及把助手接到微信、飞书、Telegram 等即时通讯平台上。
6
+
7
+ ## 一次对话
8
+
9
+ 1. `POST /v1/threads` 创建对话;
10
+ 2. `POST /v1/threads/{thread}/messages` 发送消息,立即返回 `turnId`,助手的执行在后台进行;
11
+ 3. `GET /v1/threads/{thread}` 取回对话文档用于渲染,并按其中的 `stream` 连上实时输出;
12
+ 4. 助手需要用户参与时,文档中的 `wait` 会说明是哪一种:审批一批工具调用(`POST /v1/threads/{thread}/approvals/{batch}`),或回答几个问题(`POST /v1/threads/{thread}/questions/{item}`)。处理完成后助手自动继续。
13
+
14
+ 发送图片分两步:先 `POST /v1/attachments` 上传拿到 id,发送消息时放进 `attachmentIds`。
15
+
16
+ ## 实时输出
17
+
18
+ ```
19
+ GET /v1/turns/{turn}/stream?ticket=<ticket>&cursor=<cursor>
20
+ ```
21
+
22
+ 这是一条 Server-Sent Events 流,因此不在下方的接口列表中。
23
+
24
+ - `path` 与 `ticket` 都取自对话文档的 `stream`。`path` 是相对路径,按取回文档的地址解析;
25
+ - `cursor` 是起始位置,取自对话文档的 `cursor`。不传则从可用范围的开头开始;
26
+ - 推送的每一条都是对那份对话文档的一次增量编辑,套用同一套渲染逻辑即可;
27
+ - 连接有生存期,到时会正常关闭。使用 `EventSource` 时浏览器会自动携带 `Last-Event-ID` 重连并从断点续传,无需额外处理;
28
+ - 三种结束事件:`done` 本次 turn 完成(附带最终状态)、`paused` 助手在等待用户处理(重新取回对话文档读 `wait`)、`stalled` 执行已中断且不会恢复,不要重连。
29
+ * OpenAPI spec version: 1.0.0
30
+ */
31
+ /**
32
+ * 平台接入状态。只有 online 才收得到消息、也才签得出绑定码
33
+ */
34
+ export type ChannelResourceConnState = typeof ChannelResourceConnState[keyof typeof ChannelResourceConnState];
35
+ export declare const ChannelResourceConnState: {
36
+ readonly logged_out: "logged_out";
37
+ readonly qr_pending: "qr_pending";
38
+ readonly online: "online";
39
+ readonly expired: "expired";
40
+ };
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Assistant 用户 API
5
+ * 控制台里的 AI 助手:对话、消息、工具调用与审批、附件,以及把助手接到微信、飞书、Telegram 等即时通讯平台上。
6
+
7
+ ## 一次对话
8
+
9
+ 1. `POST /v1/threads` 创建对话;
10
+ 2. `POST /v1/threads/{thread}/messages` 发送消息,立即返回 `turnId`,助手的执行在后台进行;
11
+ 3. `GET /v1/threads/{thread}` 取回对话文档用于渲染,并按其中的 `stream` 连上实时输出;
12
+ 4. 助手需要用户参与时,文档中的 `wait` 会说明是哪一种:审批一批工具调用(`POST /v1/threads/{thread}/approvals/{batch}`),或回答几个问题(`POST /v1/threads/{thread}/questions/{item}`)。处理完成后助手自动继续。
13
+
14
+ 发送图片分两步:先 `POST /v1/attachments` 上传拿到 id,发送消息时放进 `attachmentIds`。
15
+
16
+ ## 实时输出
17
+
18
+ ```
19
+ GET /v1/turns/{turn}/stream?ticket=<ticket>&cursor=<cursor>
20
+ ```
21
+
22
+ 这是一条 Server-Sent Events 流,因此不在下方的接口列表中。
23
+
24
+ - `path` 与 `ticket` 都取自对话文档的 `stream`。`path` 是相对路径,按取回文档的地址解析;
25
+ - `cursor` 是起始位置,取自对话文档的 `cursor`。不传则从可用范围的开头开始;
26
+ - 推送的每一条都是对那份对话文档的一次增量编辑,套用同一套渲染逻辑即可;
27
+ - 连接有生存期,到时会正常关闭。使用 `EventSource` 时浏览器会自动携带 `Last-Event-ID` 重连并从断点续传,无需额外处理;
28
+ - 三种结束事件:`done` 本次 turn 完成(附带最终状态)、`paused` 助手在等待用户处理(重新取回对话文档读 `wait`)、`stalled` 执行已中断且不会恢复,不要重连。
29
+ * OpenAPI spec version: 1.0.0
30
+ */
31
+ // eslint-disable-next-line @typescript-eslint/no-redeclare
32
+ export const ChannelResourceConnState = {
33
+ logged_out: 'logged_out',
34
+ qr_pending: 'qr_pending',
35
+ online: 'online',
36
+ expired: 'expired',
37
+ };
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Assistant 用户 API
5
+ * 控制台里的 AI 助手:对话、消息、工具调用与审批、附件,以及把助手接到微信、飞书、Telegram 等即时通讯平台上。
6
+
7
+ ## 一次对话
8
+
9
+ 1. `POST /v1/threads` 创建对话;
10
+ 2. `POST /v1/threads/{thread}/messages` 发送消息,立即返回 `turnId`,助手的执行在后台进行;
11
+ 3. `GET /v1/threads/{thread}` 取回对话文档用于渲染,并按其中的 `stream` 连上实时输出;
12
+ 4. 助手需要用户参与时,文档中的 `wait` 会说明是哪一种:审批一批工具调用(`POST /v1/threads/{thread}/approvals/{batch}`),或回答几个问题(`POST /v1/threads/{thread}/questions/{item}`)。处理完成后助手自动继续。
13
+
14
+ 发送图片分两步:先 `POST /v1/attachments` 上传拿到 id,发送消息时放进 `attachmentIds`。
15
+
16
+ ## 实时输出
17
+
18
+ ```
19
+ GET /v1/turns/{turn}/stream?ticket=<ticket>&cursor=<cursor>
20
+ ```
21
+
22
+ 这是一条 Server-Sent Events 流,因此不在下方的接口列表中。
23
+
24
+ - `path` 与 `ticket` 都取自对话文档的 `stream`。`path` 是相对路径,按取回文档的地址解析;
25
+ - `cursor` 是起始位置,取自对话文档的 `cursor`。不传则从可用范围的开头开始;
26
+ - 推送的每一条都是对那份对话文档的一次增量编辑,套用同一套渲染逻辑即可;
27
+ - 连接有生存期,到时会正常关闭。使用 `EventSource` 时浏览器会自动携带 `Last-Event-ID` 重连并从断点续传,无需额外处理;
28
+ - 三种结束事件:`done` 本次 turn 完成(附带最终状态)、`paused` 助手在等待用户处理(重新取回对话文档读 `wait`)、`stalled` 执行已中断且不会恢复,不要重连。
29
+ * OpenAPI spec version: 1.0.0
30
+ */
31
+ /**
32
+ * 常驻连接此刻的状态。回调型平台恒为 stopped
33
+ */
34
+ export type ChannelResourceRuntimeState = typeof ChannelResourceRuntimeState[keyof typeof ChannelResourceRuntimeState];
35
+ export declare const ChannelResourceRuntimeState: {
36
+ readonly stopped: "stopped";
37
+ readonly running: "running";
38
+ };
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Assistant 用户 API
5
+ * 控制台里的 AI 助手:对话、消息、工具调用与审批、附件,以及把助手接到微信、飞书、Telegram 等即时通讯平台上。
6
+
7
+ ## 一次对话
8
+
9
+ 1. `POST /v1/threads` 创建对话;
10
+ 2. `POST /v1/threads/{thread}/messages` 发送消息,立即返回 `turnId`,助手的执行在后台进行;
11
+ 3. `GET /v1/threads/{thread}` 取回对话文档用于渲染,并按其中的 `stream` 连上实时输出;
12
+ 4. 助手需要用户参与时,文档中的 `wait` 会说明是哪一种:审批一批工具调用(`POST /v1/threads/{thread}/approvals/{batch}`),或回答几个问题(`POST /v1/threads/{thread}/questions/{item}`)。处理完成后助手自动继续。
13
+
14
+ 发送图片分两步:先 `POST /v1/attachments` 上传拿到 id,发送消息时放进 `attachmentIds`。
15
+
16
+ ## 实时输出
17
+
18
+ ```
19
+ GET /v1/turns/{turn}/stream?ticket=<ticket>&cursor=<cursor>
20
+ ```
21
+
22
+ 这是一条 Server-Sent Events 流,因此不在下方的接口列表中。
23
+
24
+ - `path` 与 `ticket` 都取自对话文档的 `stream`。`path` 是相对路径,按取回文档的地址解析;
25
+ - `cursor` 是起始位置,取自对话文档的 `cursor`。不传则从可用范围的开头开始;
26
+ - 推送的每一条都是对那份对话文档的一次增量编辑,套用同一套渲染逻辑即可;
27
+ - 连接有生存期,到时会正常关闭。使用 `EventSource` 时浏览器会自动携带 `Last-Event-ID` 重连并从断点续传,无需额外处理;
28
+ - 三种结束事件:`done` 本次 turn 完成(附带最终状态)、`paused` 助手在等待用户处理(重新取回对话文档读 `wait`)、`stalled` 执行已中断且不会恢复,不要重连。
29
+ * OpenAPI spec version: 1.0.0
30
+ */
31
+ // eslint-disable-next-line @typescript-eslint/no-redeclare
32
+ export const ChannelResourceRuntimeState = {
33
+ stopped: 'stopped',
34
+ running: 'running',
35
+ };
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Assistant 用户 API
5
+ * 控制台里的 AI 助手:对话、消息、工具调用与审批、附件,以及把助手接到微信、飞书、Telegram 等即时通讯平台上。
6
+
7
+ ## 一次对话
8
+
9
+ 1. `POST /v1/threads` 创建对话;
10
+ 2. `POST /v1/threads/{thread}/messages` 发送消息,立即返回 `turnId`,助手的执行在后台进行;
11
+ 3. `GET /v1/threads/{thread}` 取回对话文档用于渲染,并按其中的 `stream` 连上实时输出;
12
+ 4. 助手需要用户参与时,文档中的 `wait` 会说明是哪一种:审批一批工具调用(`POST /v1/threads/{thread}/approvals/{batch}`),或回答几个问题(`POST /v1/threads/{thread}/questions/{item}`)。处理完成后助手自动继续。
13
+
14
+ 发送图片分两步:先 `POST /v1/attachments` 上传拿到 id,发送消息时放进 `attachmentIds`。
15
+
16
+ ## 实时输出
17
+
18
+ ```
19
+ GET /v1/turns/{turn}/stream?ticket=<ticket>&cursor=<cursor>
20
+ ```
21
+
22
+ 这是一条 Server-Sent Events 流,因此不在下方的接口列表中。
23
+
24
+ - `path` 与 `ticket` 都取自对话文档的 `stream`。`path` 是相对路径,按取回文档的地址解析;
25
+ - `cursor` 是起始位置,取自对话文档的 `cursor`。不传则从可用范围的开头开始;
26
+ - 推送的每一条都是对那份对话文档的一次增量编辑,套用同一套渲染逻辑即可;
27
+ - 连接有生存期,到时会正常关闭。使用 `EventSource` 时浏览器会自动携带 `Last-Event-ID` 重连并从断点续传,无需额外处理;
28
+ - 三种结束事件:`done` 本次 turn 完成(附带最终状态)、`paused` 助手在等待用户处理(重新取回对话文档读 `wait`)、`stalled` 执行已中断且不会恢复,不要重连。
29
+ * OpenAPI spec version: 1.0.0
30
+ */
31
+ export type ChannelResourceSenderPolicy = typeof ChannelResourceSenderPolicy[keyof typeof ChannelResourceSenderPolicy];
32
+ export declare const ChannelResourceSenderPolicy: {
33
+ readonly bound_only: "bound_only";
34
+ readonly open: "open";
35
+ };
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Assistant 用户 API
5
+ * 控制台里的 AI 助手:对话、消息、工具调用与审批、附件,以及把助手接到微信、飞书、Telegram 等即时通讯平台上。
6
+
7
+ ## 一次对话
8
+
9
+ 1. `POST /v1/threads` 创建对话;
10
+ 2. `POST /v1/threads/{thread}/messages` 发送消息,立即返回 `turnId`,助手的执行在后台进行;
11
+ 3. `GET /v1/threads/{thread}` 取回对话文档用于渲染,并按其中的 `stream` 连上实时输出;
12
+ 4. 助手需要用户参与时,文档中的 `wait` 会说明是哪一种:审批一批工具调用(`POST /v1/threads/{thread}/approvals/{batch}`),或回答几个问题(`POST /v1/threads/{thread}/questions/{item}`)。处理完成后助手自动继续。
13
+
14
+ 发送图片分两步:先 `POST /v1/attachments` 上传拿到 id,发送消息时放进 `attachmentIds`。
15
+
16
+ ## 实时输出
17
+
18
+ ```
19
+ GET /v1/turns/{turn}/stream?ticket=<ticket>&cursor=<cursor>
20
+ ```
21
+
22
+ 这是一条 Server-Sent Events 流,因此不在下方的接口列表中。
23
+
24
+ - `path` 与 `ticket` 都取自对话文档的 `stream`。`path` 是相对路径,按取回文档的地址解析;
25
+ - `cursor` 是起始位置,取自对话文档的 `cursor`。不传则从可用范围的开头开始;
26
+ - 推送的每一条都是对那份对话文档的一次增量编辑,套用同一套渲染逻辑即可;
27
+ - 连接有生存期,到时会正常关闭。使用 `EventSource` 时浏览器会自动携带 `Last-Event-ID` 重连并从断点续传,无需额外处理;
28
+ - 三种结束事件:`done` 本次 turn 完成(附带最终状态)、`paused` 助手在等待用户处理(重新取回对话文档读 `wait`)、`stalled` 执行已中断且不会恢复,不要重连。
29
+ * OpenAPI spec version: 1.0.0
30
+ */
31
+ // eslint-disable-next-line @typescript-eslint/no-redeclare
32
+ export const ChannelResourceSenderPolicy = {
33
+ bound_only: 'bound_only',
34
+ open: 'open',
35
+ };
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow Assistant 用户 API
5
+ * 控制台里的 AI 助手:对话、消息、工具调用与审批、附件,以及把助手接到微信、飞书、Telegram 等即时通讯平台上。
6
+
7
+ ## 一次对话
8
+
9
+ 1. `POST /v1/threads` 创建对话;
10
+ 2. `POST /v1/threads/{thread}/messages` 发送消息,立即返回 `turnId`,助手的执行在后台进行;
11
+ 3. `GET /v1/threads/{thread}` 取回对话文档用于渲染,并按其中的 `stream` 连上实时输出;
12
+ 4. 助手需要用户参与时,文档中的 `wait` 会说明是哪一种:审批一批工具调用(`POST /v1/threads/{thread}/approvals/{batch}`),或回答几个问题(`POST /v1/threads/{thread}/questions/{item}`)。处理完成后助手自动继续。
13
+
14
+ 发送图片分两步:先 `POST /v1/attachments` 上传拿到 id,发送消息时放进 `attachmentIds`。
15
+
16
+ ## 实时输出
17
+
18
+ ```
19
+ GET /v1/turns/{turn}/stream?ticket=<ticket>&cursor=<cursor>
20
+ ```
21
+
22
+ 这是一条 Server-Sent Events 流,因此不在下方的接口列表中。
23
+
24
+ - `path` 与 `ticket` 都取自对话文档的 `stream`。`path` 是相对路径,按取回文档的地址解析;
25
+ - `cursor` 是起始位置,取自对话文档的 `cursor`。不传则从可用范围的开头开始;
26
+ - 推送的每一条都是对那份对话文档的一次增量编辑,套用同一套渲染逻辑即可;
27
+ - 连接有生存期,到时会正常关闭。使用 `EventSource` 时浏览器会自动携带 `Last-Event-ID` 重连并从断点续传,无需额外处理;
28
+ - 三种结束事件:`done` 本次 turn 完成(附带最终状态)、`paused` 助手在等待用户处理(重新取回对话文档读 `wait`)、`stalled` 执行已中断且不会恢复,不要重连。
29
+ * OpenAPI spec version: 1.0.0
30
+ */
31
+ export type ChannelResourceStatus = typeof ChannelResourceStatus[keyof typeof ChannelResourceStatus];
32
+ export declare const ChannelResourceStatus: {
33
+ readonly active: "active";
34
+ readonly suspended: "suspended";
35
+ readonly disabled: "disabled";
36
+ };