@tidblink/server 0.0.0-stage → 0.4.0-rc.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 (116) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +1182 -2
  3. package/dist/audio.d.ts +72 -0
  4. package/dist/audio.d.ts.map +1 -0
  5. package/dist/audio.js +168 -0
  6. package/dist/audio.js.map +1 -0
  7. package/dist/backend-connection.d.ts +89 -0
  8. package/dist/backend-connection.d.ts.map +1 -0
  9. package/dist/backend-connection.js +300 -0
  10. package/dist/backend-connection.js.map +1 -0
  11. package/dist/backend-pool.d.ts +93 -0
  12. package/dist/backend-pool.d.ts.map +1 -0
  13. package/dist/backend-pool.js +419 -0
  14. package/dist/backend-pool.js.map +1 -0
  15. package/dist/client-tool-executor.d.ts +31 -0
  16. package/dist/client-tool-executor.d.ts.map +1 -0
  17. package/dist/client-tool-executor.js +190 -0
  18. package/dist/client-tool-executor.js.map +1 -0
  19. package/dist/client-tools.d.ts +21 -0
  20. package/dist/client-tools.d.ts.map +1 -0
  21. package/dist/client-tools.js +48 -0
  22. package/dist/client-tools.js.map +1 -0
  23. package/dist/connector-callback.d.ts +92 -0
  24. package/dist/connector-callback.d.ts.map +1 -0
  25. package/dist/connector-callback.js +155 -0
  26. package/dist/connector-callback.js.map +1 -0
  27. package/dist/connectors.d.ts +66 -0
  28. package/dist/connectors.d.ts.map +1 -0
  29. package/dist/connectors.js +71 -0
  30. package/dist/connectors.js.map +1 -0
  31. package/dist/control.d.ts +17 -0
  32. package/dist/control.d.ts.map +1 -0
  33. package/dist/control.js +52 -0
  34. package/dist/control.js.map +1 -0
  35. package/dist/errors.d.ts +103 -0
  36. package/dist/errors.d.ts.map +1 -0
  37. package/dist/errors.js +115 -0
  38. package/dist/errors.js.map +1 -0
  39. package/dist/events.d.ts +158 -0
  40. package/dist/events.d.ts.map +1 -0
  41. package/dist/events.js +110 -0
  42. package/dist/events.js.map +1 -0
  43. package/dist/files.d.ts +129 -0
  44. package/dist/files.d.ts.map +1 -0
  45. package/dist/files.js +388 -0
  46. package/dist/files.js.map +1 -0
  47. package/dist/history.d.ts +279 -0
  48. package/dist/history.d.ts.map +1 -0
  49. package/dist/history.js +91 -0
  50. package/dist/history.js.map +1 -0
  51. package/dist/http.d.ts +88 -0
  52. package/dist/http.d.ts.map +1 -0
  53. package/dist/http.js +302 -0
  54. package/dist/http.js.map +1 -0
  55. package/dist/index.d.ts +39 -0
  56. package/dist/index.d.ts.map +1 -0
  57. package/dist/index.js +18 -0
  58. package/dist/index.js.map +1 -0
  59. package/dist/organization.d.ts +87 -0
  60. package/dist/organization.d.ts.map +1 -0
  61. package/dist/organization.js +112 -0
  62. package/dist/organization.js.map +1 -0
  63. package/dist/realtime.d.ts +90 -0
  64. package/dist/realtime.d.ts.map +1 -0
  65. package/dist/realtime.js +111 -0
  66. package/dist/realtime.js.map +1 -0
  67. package/dist/session-connection.d.ts +144 -0
  68. package/dist/session-connection.d.ts.map +1 -0
  69. package/dist/session-connection.js +334 -0
  70. package/dist/session-connection.js.map +1 -0
  71. package/dist/session-send.d.ts +49 -0
  72. package/dist/session-send.d.ts.map +1 -0
  73. package/dist/session-send.js +179 -0
  74. package/dist/session-send.js.map +1 -0
  75. package/dist/session.d.ts +165 -0
  76. package/dist/session.d.ts.map +1 -0
  77. package/dist/session.js +253 -0
  78. package/dist/session.js.map +1 -0
  79. package/dist/skills.d.ts +103 -0
  80. package/dist/skills.d.ts.map +1 -0
  81. package/dist/skills.js +98 -0
  82. package/dist/skills.js.map +1 -0
  83. package/dist/sse.d.ts +10 -0
  84. package/dist/sse.d.ts.map +1 -0
  85. package/dist/sse.js +50 -0
  86. package/dist/sse.js.map +1 -0
  87. package/dist/template-switch.d.ts +51 -0
  88. package/dist/template-switch.d.ts.map +1 -0
  89. package/dist/template-switch.js +81 -0
  90. package/dist/template-switch.js.map +1 -0
  91. package/dist/templates.d.ts +129 -0
  92. package/dist/templates.d.ts.map +1 -0
  93. package/dist/templates.js +92 -0
  94. package/dist/templates.js.map +1 -0
  95. package/dist/turn.d.ts +47 -0
  96. package/dist/turn.d.ts.map +1 -0
  97. package/dist/turn.js +210 -0
  98. package/dist/turn.js.map +1 -0
  99. package/dist/usage.d.ts +278 -0
  100. package/dist/usage.d.ts.map +1 -0
  101. package/dist/usage.js +22 -0
  102. package/dist/usage.js.map +1 -0
  103. package/dist/user.d.ts +55 -0
  104. package/dist/user.d.ts.map +1 -0
  105. package/dist/user.js +52 -0
  106. package/dist/user.js.map +1 -0
  107. package/examples/control-turn.mjs +53 -0
  108. package/examples/create-session.mjs +82 -0
  109. package/examples/http-connector.mjs +127 -0
  110. package/examples/lamp-backend.mjs +175 -0
  111. package/examples/prepare-realtime-connection.mjs +72 -0
  112. package/examples/read-usage.mjs +44 -0
  113. package/examples/send-message.mjs +48 -0
  114. package/examples/submit-audio.mjs +57 -0
  115. package/examples/upload-file.mjs +58 -0
  116. package/package.json +59 -4
@@ -0,0 +1,58 @@
1
+ import { readFile } from "node:fs/promises";
2
+ import { basename } from "node:path";
3
+ import { pathToFileURL } from "node:url";
4
+ import { OrganizationClient } from "@tidblink/server";
5
+
6
+ /** Persist both identities and exact file/message input before calling. */
7
+ export async function uploadFileWorkflow({
8
+ baseUrl,
9
+ organizationApiKey,
10
+ userId,
11
+ sessionId,
12
+ originalName,
13
+ bytes,
14
+ idempotencyKey,
15
+ clientEventId,
16
+ text = "Read the attached file.",
17
+ timeoutMs,
18
+ }) {
19
+ const user = new OrganizationClient({
20
+ baseUrl,
21
+ apiKey: organizationApiKey,
22
+ }).user(userId);
23
+ const file = await user.files.upload({ originalName, bytes, idempotencyKey });
24
+ const result = await user
25
+ .session(sessionId)
26
+ .turn(
27
+ { clientEventId, text, userFileIds: [file.fileId] },
28
+ { ...(timeoutMs === undefined ? {} : { timeoutMs }) },
29
+ );
30
+ return { file, result };
31
+ }
32
+
33
+ if (
34
+ process.argv[1] &&
35
+ import.meta.url === pathToFileURL(process.argv[1]).href
36
+ ) {
37
+ try {
38
+ if (!process.env.FILE_PATH)
39
+ throw new Error("Set FILE_PATH to the file to attach");
40
+ const { result } = await uploadFileWorkflow({
41
+ baseUrl: process.env.AGENT_SERVICE_URL,
42
+ organizationApiKey: process.env.ORGANIZATION_API_KEY,
43
+ userId: process.env.END_USER_ID,
44
+ sessionId: process.env.SESSION_ID,
45
+ originalName: basename(process.env.FILE_PATH),
46
+ bytes: await readFile(process.env.FILE_PATH),
47
+ idempotencyKey: process.env.UPLOAD_IDEMPOTENCY_KEY,
48
+ clientEventId: process.env.CLIENT_EVENT_ID,
49
+ text: process.env.MESSAGE_TEXT,
50
+ });
51
+ console.log(result.text);
52
+ } catch (error) {
53
+ console.error(
54
+ error instanceof Error ? error.message : "File workflow failed",
55
+ );
56
+ process.exitCode = 1;
57
+ }
58
+ }
package/package.json CHANGED
@@ -1,6 +1,61 @@
1
1
  {
2
2
  "name": "@tidblink/server",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
6
- }
3
+ "version": "0.4.0-rc.0",
4
+ "description": "Official TypeScript SDK for TiDB Link",
5
+ "license": "Apache-2.0",
6
+ "type": "module",
7
+ "engines": {
8
+ "node": ">=22.12"
9
+ },
10
+ "tidbLinkApiVersion": "0.0.1",
11
+ "tidbLinkRevision": "4305ef67daebf23c416badf806217a7c11dcef37",
12
+ "tidbLinkOpenApiSha256": "6f5ff6f025eef80fbd9d5b80fb798e5db159aaa006e7d34866e9c3b6843dfe58",
13
+ "exports": {
14
+ ".": {
15
+ "types": "./dist/index.d.ts",
16
+ "import": "./dist/index.js"
17
+ },
18
+ "./examples/prepare-realtime-connection.mjs": "./examples/prepare-realtime-connection.mjs",
19
+ "./examples/create-session.mjs": "./examples/create-session.mjs",
20
+ "./examples/send-message.mjs": "./examples/send-message.mjs",
21
+ "./examples/control-turn.mjs": "./examples/control-turn.mjs",
22
+ "./examples/read-usage.mjs": "./examples/read-usage.mjs",
23
+ "./examples/upload-file.mjs": "./examples/upload-file.mjs",
24
+ "./examples/submit-audio.mjs": "./examples/submit-audio.mjs",
25
+ "./examples/http-connector.mjs": "./examples/http-connector.mjs",
26
+ "./examples/lamp-backend.mjs": "./examples/lamp-backend.mjs"
27
+ },
28
+ "files": [
29
+ "dist",
30
+ "README.md",
31
+ "examples/prepare-realtime-connection.mjs",
32
+ "examples/create-session.mjs",
33
+ "examples/send-message.mjs",
34
+ "examples/control-turn.mjs",
35
+ "examples/read-usage.mjs",
36
+ "examples/upload-file.mjs",
37
+ "examples/submit-audio.mjs",
38
+ "examples/http-connector.mjs",
39
+ "examples/lamp-backend.mjs"
40
+ ],
41
+ "scripts": {
42
+ "build": "node --eval \"require('node:fs').rmSync('dist',{recursive:true,force:true})\" && tsc -p tsconfig.json",
43
+ "typecheck": "npm run build",
44
+ "test": "npm run build && node --test 'test/**/*.test.mjs'",
45
+ "test:service-contract": "node --test 'service-contract/**/*.test.mjs'",
46
+ "pack:check": "npm pack --dry-run",
47
+ "test:service": "npm run build && node test/service/run.mjs"
48
+ },
49
+ "publishConfig": {
50
+ "access": "public"
51
+ },
52
+ "repository": {
53
+ "type": "git",
54
+ "url": "git+https://github.com/mem9-ai/tidblink-sdk.git",
55
+ "directory": "typescript"
56
+ },
57
+ "bugs": {
58
+ "url": "https://github.com/mem9-ai/tidblink-sdk/issues"
59
+ },
60
+ "homepage": "https://github.com/mem9-ai/tidblink-sdk#readme"
61
+ }