@bowenqt/qiniu-ai-sdk 0.42.0 → 0.44.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 (77) hide show
  1. package/README.md +35 -1
  2. package/README.zh-CN.md +35 -1
  3. package/dist/ai/graph/index.d.ts +0 -2
  4. package/dist/ai/graph/index.d.ts.map +1 -1
  5. package/dist/ai/graph/index.js +1 -4
  6. package/dist/ai/graph/index.js.map +1 -1
  7. package/dist/ai/graph/index.mjs +0 -2
  8. package/dist/ai/graph/postgres-checkpointer.d.ts +1 -1
  9. package/dist/ai/graph/postgres-checkpointer.js +1 -1
  10. package/dist/ai/graph/postgres-checkpointer.mjs +1 -1
  11. package/dist/ai/graph/redis-checkpointer.d.ts +1 -1
  12. package/dist/ai/graph/redis-checkpointer.js +1 -1
  13. package/dist/ai/graph/redis-checkpointer.mjs +1 -1
  14. package/dist/ai/guardrails/audit-logger.d.ts.map +1 -1
  15. package/dist/ai/guardrails/audit-logger.js +17 -3
  16. package/dist/ai/guardrails/audit-logger.js.map +1 -1
  17. package/dist/ai/guardrails/audit-logger.mjs +17 -3
  18. package/dist/ai/guardrails/index.d.ts +1 -1
  19. package/dist/ai/guardrails/index.d.ts.map +1 -1
  20. package/dist/ai/guardrails/index.js.map +1 -1
  21. package/dist/ai/guardrails/types.d.ts +16 -4
  22. package/dist/ai/guardrails/types.d.ts.map +1 -1
  23. package/dist/ai/guardrails/types.js.map +1 -1
  24. package/dist/client.d.ts +2 -25
  25. package/dist/client.d.ts.map +1 -1
  26. package/dist/client.js +10 -23
  27. package/dist/client.js.map +1 -1
  28. package/dist/client.mjs +1 -14
  29. package/dist/index.d.ts +0 -47
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +8 -69
  32. package/dist/index.js.map +1 -1
  33. package/dist/index.mjs +1 -37
  34. package/dist/lib/version.d.ts +1 -1
  35. package/dist/lib/version.js +1 -1
  36. package/dist/lib/version.mjs +1 -1
  37. package/dist/models.d.ts +0 -4
  38. package/dist/models.d.ts.map +1 -1
  39. package/dist/models.js +0 -4
  40. package/dist/models.js.map +1 -1
  41. package/dist/models.mjs +0 -4
  42. package/dist/modules/mcp/server.d.ts.map +1 -1
  43. package/dist/modules/mcp/server.js +3 -2
  44. package/dist/modules/mcp/server.js.map +1 -1
  45. package/dist/modules/mcp/server.mjs +3 -2
  46. package/dist/modules/sandbox/index.d.ts +1 -1
  47. package/dist/modules/sandbox/index.js +1 -1
  48. package/dist/modules/sandbox/index.mjs +1 -1
  49. package/dist/modules/tts/index.d.ts.map +1 -1
  50. package/dist/modules/tts/index.js +10 -3
  51. package/dist/modules/tts/index.js.map +1 -1
  52. package/dist/modules/tts/index.mjs +10 -3
  53. package/dist/node/index.d.ts +7 -3
  54. package/dist/node/index.d.ts.map +1 -1
  55. package/dist/node/index.js +5 -2
  56. package/dist/node/index.js.map +1 -1
  57. package/dist/node/index.mjs +3 -1
  58. package/dist/node/kodo-audit-sink.d.ts +7 -0
  59. package/dist/node/kodo-audit-sink.d.ts.map +1 -0
  60. package/dist/node/kodo-audit-sink.js +35 -0
  61. package/dist/node/kodo-audit-sink.js.map +1 -0
  62. package/dist/node/kodo-audit-sink.mjs +32 -0
  63. package/dist/{ai/graph → node}/kodo-checkpointer.d.ts +5 -26
  64. package/dist/node/kodo-checkpointer.d.ts.map +1 -0
  65. package/dist/node/kodo-checkpointer.js +107 -0
  66. package/dist/node/kodo-checkpointer.js.map +1 -0
  67. package/dist/node/kodo-checkpointer.mjs +103 -0
  68. package/dist/node/kodo-client.d.ts +35 -0
  69. package/dist/node/kodo-client.d.ts.map +1 -0
  70. package/dist/node/kodo-client.js +185 -0
  71. package/dist/node/kodo-client.js.map +1 -0
  72. package/dist/node/kodo-client.mjs +181 -0
  73. package/package.json +1 -1
  74. package/dist/ai/graph/kodo-checkpointer.d.ts.map +0 -1
  75. package/dist/ai/graph/kodo-checkpointer.js +0 -316
  76. package/dist/ai/graph/kodo-checkpointer.js.map +0 -1
  77. package/dist/ai/graph/kodo-checkpointer.mjs +0 -312
package/README.md CHANGED
@@ -65,6 +65,23 @@ import { createAgent, generateText } from '@bowenqt/qiniu-ai-sdk/core';
65
65
  import { createNodeQiniuAI, NodeMCPHost, FileTokenStore } from '@bowenqt/qiniu-ai-sdk/node';
66
66
  ```
67
67
 
68
+ ### v0.44 Migration
69
+
70
+ | Removed from `@bowenqt/qiniu-ai-sdk` | Import from now |
71
+ |--------------------------------------|-----------------|
72
+ | `auditLogger`, `AuditLoggerCollector` | `@bowenqt/qiniu-ai-sdk/node` |
73
+ | `new QiniuAI({ sandbox })` | `createNodeQiniuAI({ sandbox })` from `@bowenqt/qiniu-ai-sdk/node` |
74
+ | `QiniuSandbox`, sandbox types | `@bowenqt/qiniu-ai-sdk/node` |
75
+ | `SkillLoader`, `SkillRegistry`, `RegistryProtocolStub` | `@bowenqt/qiniu-ai-sdk/node` |
76
+ | `MCPHttpTransport`, OAuth helpers, token stores, `QiniuMCPServer` | `@bowenqt/qiniu-ai-sdk/node` |
77
+ | `RedisCheckpointer`, `PostgresCheckpointer`, `KodoCheckpointer` | `@bowenqt/qiniu-ai-sdk/node` |
78
+ | `auditLogger({ sink: 'kodo://...' })` | `auditLogger({ sink: createKodoAuditSink(...) })` from `@bowenqt/qiniu-ai-sdk/node` |
79
+
80
+ | Removed model alias | Use instead |
81
+ |---------------------|-------------|
82
+ | `VIDEO_MODELS.VEO_3_0_GENERATE_PREVIEW` | `VIDEO_MODELS.VEO_3_0_GENERATE_001` |
83
+ | `VIDEO_MODELS.VEO_3_0_FAST_GENERATE_PREVIEW` | `VIDEO_MODELS.VEO_3_0_FAST_GENERATE_001` |
84
+
68
85
  ### Optional Peer Dependencies
69
86
 
70
87
  ```bash
@@ -84,6 +101,23 @@ npm install ioredis
84
101
  npm install pg
85
102
  ```
86
103
 
104
+ ### Kodo Audit Sink
105
+
106
+ ```typescript
107
+ import { auditLogger } from '@bowenqt/qiniu-ai-sdk/node';
108
+ import { createKodoAuditSink } from '@bowenqt/qiniu-ai-sdk/node';
109
+
110
+ const logger = auditLogger({
111
+ sink: createKodoAuditSink({
112
+ bucket: 'my-audit-bucket',
113
+ accessKey: process.env.QINIU_ACCESS_KEY!,
114
+ secretKey: process.env.QINIU_SECRET_KEY!,
115
+ region: 'z0',
116
+ prefix: 'guardrail/audit',
117
+ }),
118
+ });
119
+ ```
120
+
87
121
  ---
88
122
 
89
123
  ## 🚀 Quick Start
@@ -427,7 +461,7 @@ await instance.kill();
427
461
 
428
462
  | Entry Point | Description |
429
463
  |-------------|-------------|
430
- | `@bowenqt/qiniu-ai-sdk` | Compatibility entry (legacy mixed surface) |
464
+ | `@bowenqt/qiniu-ai-sdk` | Compatibility entry for the common cross-platform surface |
431
465
  | `@bowenqt/qiniu-ai-sdk/core` | Provider-agnostic agent/runtime APIs |
432
466
  | `@bowenqt/qiniu-ai-sdk/qiniu` | Qiniu client and cloud API surface |
433
467
  | `@bowenqt/qiniu-ai-sdk/node` | Node.js-only runtime integrations (MCP, OAuth, token stores, sandbox, checkpointers) |
package/README.zh-CN.md CHANGED
@@ -65,6 +65,23 @@ import { createAgent, generateText } from '@bowenqt/qiniu-ai-sdk/core';
65
65
  import { createNodeQiniuAI, NodeMCPHost, FileTokenStore } from '@bowenqt/qiniu-ai-sdk/node';
66
66
  ```
67
67
 
68
+ ### v0.44 迁移表
69
+
70
+ | 从 `@bowenqt/qiniu-ai-sdk` 移除 | 现在改用 |
71
+ |--------------------------------|----------|
72
+ | `auditLogger`、`AuditLoggerCollector` | `@bowenqt/qiniu-ai-sdk/node` |
73
+ | `new QiniuAI({ sandbox })` | 从 `@bowenqt/qiniu-ai-sdk/node` 改用 `createNodeQiniuAI({ sandbox })` |
74
+ | `QiniuSandbox` 与 sandbox 相关类型 | `@bowenqt/qiniu-ai-sdk/node` |
75
+ | `SkillLoader`、`SkillRegistry`、`RegistryProtocolStub` | `@bowenqt/qiniu-ai-sdk/node` |
76
+ | `MCPHttpTransport`、OAuth 工具、token store、`QiniuMCPServer` | `@bowenqt/qiniu-ai-sdk/node` |
77
+ | `RedisCheckpointer`、`PostgresCheckpointer`、`KodoCheckpointer` | `@bowenqt/qiniu-ai-sdk/node` |
78
+ | `auditLogger({ sink: 'kodo://...' })` | 从 `@bowenqt/qiniu-ai-sdk/node` 改用 `auditLogger({ sink: createKodoAuditSink(...) })` |
79
+
80
+ | 被删除的模型别名 | 请改用 |
81
+ |------------------|--------|
82
+ | `VIDEO_MODELS.VEO_3_0_GENERATE_PREVIEW` | `VIDEO_MODELS.VEO_3_0_GENERATE_001` |
83
+ | `VIDEO_MODELS.VEO_3_0_FAST_GENERATE_PREVIEW` | `VIDEO_MODELS.VEO_3_0_FAST_GENERATE_001` |
84
+
68
85
  ### 可选依赖
69
86
 
70
87
  ```bash
@@ -84,6 +101,23 @@ npm install ioredis
84
101
  npm install pg
85
102
  ```
86
103
 
104
+ ### Kodo 审计 Sink
105
+
106
+ ```typescript
107
+ import { auditLogger } from '@bowenqt/qiniu-ai-sdk/node';
108
+ import { createKodoAuditSink } from '@bowenqt/qiniu-ai-sdk/node';
109
+
110
+ const logger = auditLogger({
111
+ sink: createKodoAuditSink({
112
+ bucket: 'my-audit-bucket',
113
+ accessKey: process.env.QINIU_ACCESS_KEY!,
114
+ secretKey: process.env.QINIU_SECRET_KEY!,
115
+ region: 'z0',
116
+ prefix: 'guardrail/audit',
117
+ }),
118
+ });
119
+ ```
120
+
87
121
  ---
88
122
 
89
123
  ## 🚀 快速开始
@@ -433,7 +467,7 @@ await instance.kill();
433
467
 
434
468
  | 入口 | 说明 |
435
469
  |------|------|
436
- | `@bowenqt/qiniu-ai-sdk` | 兼容入口(保留历史混合导出) |
470
+ | `@bowenqt/qiniu-ai-sdk` | 兼容入口,只保留通用跨平台能力 |
437
471
  | `@bowenqt/qiniu-ai-sdk/core` | 与 provider 解耦的 Agent / Runtime API |
438
472
  | `@bowenqt/qiniu-ai-sdk/qiniu` | 七牛客户端与云能力 API |
439
473
  | `@bowenqt/qiniu-ai-sdk/node` | Node.js 专用运行时集成(MCP、OAuth、token store、sandbox、checkpointer) |
@@ -10,6 +10,4 @@ export { RedisCheckpointer } from './redis-checkpointer';
10
10
  export type { RedisClient, RedisCheckpointerConfig } from './redis-checkpointer';
11
11
  export { PostgresCheckpointer } from './postgres-checkpointer';
12
12
  export type { PostgresClient, PostgresCheckpointerConfig } from './postgres-checkpointer';
13
- export { KodoCheckpointer } from './kodo-checkpointer';
14
- export type { KodoCheckpointerConfig, KodoRegion } from './kodo-checkpointer';
15
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ai/graph/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAC9B,YAAY,EACR,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,SAAS,EACT,aAAa,EACb,aAAa,EACb,gBAAgB,GACnB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACH,kBAAkB,EAClB,qBAAqB,EAErB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,GACrB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACR,YAAY,EACZ,UAAU,EACV,kBAAkB,EAClB,oBAAoB,EAEpB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,wBAAwB,EACxB,YAAY,GACf,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,YAAY,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAGjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,YAAY,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAG1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,YAAY,EAAE,sBAAsB,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ai/graph/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAC9B,YAAY,EACR,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,SAAS,EACT,aAAa,EACb,aAAa,EACb,gBAAgB,GACnB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACH,kBAAkB,EAClB,qBAAqB,EAErB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,GACrB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACR,YAAY,EACZ,UAAU,EACV,kBAAkB,EAClB,oBAAoB,EAEpB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,wBAAwB,EACxB,YAAY,GACf,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,YAAY,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAGjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,YAAY,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC"}
@@ -3,7 +3,7 @@
3
3
  * Graph Runtime public exports.
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.KodoCheckpointer = exports.PostgresCheckpointer = exports.RedisCheckpointer = exports.resumeWithApproval = exports.getPendingApproval = exports.isPendingApproval = exports.deserializeCheckpoint = exports.MemoryCheckpointer = exports.END = exports.MaxGraphStepsError = exports.StateGraph = void 0;
6
+ exports.PostgresCheckpointer = exports.RedisCheckpointer = exports.resumeWithApproval = exports.getPendingApproval = exports.isPendingApproval = exports.deserializeCheckpoint = exports.MemoryCheckpointer = exports.END = exports.MaxGraphStepsError = exports.StateGraph = void 0;
7
7
  var state_graph_1 = require("./state-graph");
8
8
  Object.defineProperty(exports, "StateGraph", { enumerable: true, get: function () { return state_graph_1.StateGraph; } });
9
9
  Object.defineProperty(exports, "MaxGraphStepsError", { enumerable: true, get: function () { return state_graph_1.MaxGraphStepsError; } });
@@ -23,7 +23,4 @@ Object.defineProperty(exports, "RedisCheckpointer", { enumerable: true, get: fun
23
23
  // Postgres Checkpointer (optional - requires pg)
24
24
  var postgres_checkpointer_1 = require("./postgres-checkpointer");
25
25
  Object.defineProperty(exports, "PostgresCheckpointer", { enumerable: true, get: function () { return postgres_checkpointer_1.PostgresCheckpointer; } });
26
- // Kodo Checkpointer (Phase 7 - Qiniu Object Storage)
27
- var kodo_checkpointer_1 = require("./kodo-checkpointer");
28
- Object.defineProperty(exports, "KodoCheckpointer", { enumerable: true, get: function () { return kodo_checkpointer_1.KodoCheckpointer; } });
29
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ai/graph/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,6CAA+D;AAAtD,yGAAA,UAAU,OAAA;AAAE,iHAAA,kBAAkB,OAAA;AACvC,iCAA8B;AAArB,4FAAA,GAAG,OAAA;AAWZ,gBAAgB;AAChB,+CAOwB;AANpB,kHAAA,kBAAkB,OAAA;AAClB,qHAAA,qBAAqB,OAAA;AACrB,kCAAkC;AAClC,iHAAA,iBAAiB,OAAA;AACjB,kHAAA,kBAAkB,OAAA;AAClB,kHAAA,kBAAkB,OAAA;AAetB,mDAAmD;AACnD,2DAAyD;AAAhD,uHAAA,iBAAiB,OAAA;AAG1B,iDAAiD;AACjD,iEAA+D;AAAtD,6HAAA,oBAAoB,OAAA;AAG7B,qDAAqD;AACrD,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ai/graph/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,6CAA+D;AAAtD,yGAAA,UAAU,OAAA;AAAE,iHAAA,kBAAkB,OAAA;AACvC,iCAA8B;AAArB,4FAAA,GAAG,OAAA;AAWZ,gBAAgB;AAChB,+CAOwB;AANpB,kHAAA,kBAAkB,OAAA;AAClB,qHAAA,qBAAqB,OAAA;AACrB,kCAAkC;AAClC,iHAAA,iBAAiB,OAAA;AACjB,kHAAA,kBAAkB,OAAA;AAClB,kHAAA,kBAAkB,OAAA;AAetB,mDAAmD;AACnD,2DAAyD;AAAhD,uHAAA,iBAAiB,OAAA;AAG1B,iDAAiD;AACjD,iEAA+D;AAAtD,6HAAA,oBAAoB,OAAA"}
@@ -11,6 +11,4 @@ isPendingApproval, getPendingApproval, resumeWithApproval, } from './checkpointe
11
11
  export { RedisCheckpointer } from './redis-checkpointer.mjs';
12
12
  // Postgres Checkpointer (optional - requires pg)
13
13
  export { PostgresCheckpointer } from './postgres-checkpointer.mjs';
14
- // Kodo Checkpointer (Phase 7 - Qiniu Object Storage)
15
- export { KodoCheckpointer } from './kodo-checkpointer.mjs';
16
14
  //# sourceMappingURL=index.js.map
@@ -5,7 +5,7 @@
5
5
  * @example
6
6
  * ```typescript
7
7
  * import { Pool } from 'pg';
8
- * import { PostgresCheckpointer } from '@bowenqt/qiniu-ai-sdk';
8
+ * import { PostgresCheckpointer } from '@bowenqt/qiniu-ai-sdk/node';
9
9
  *
10
10
  * const pool = new Pool({ connectionString: process.env.DATABASE_URL });
11
11
  * const checkpointer = new PostgresCheckpointer(pool, { tableName: 'checkpoints' });
@@ -6,7 +6,7 @@
6
6
  * @example
7
7
  * ```typescript
8
8
  * import { Pool } from 'pg';
9
- * import { PostgresCheckpointer } from '@bowenqt/qiniu-ai-sdk';
9
+ * import { PostgresCheckpointer } from '@bowenqt/qiniu-ai-sdk/node';
10
10
  *
11
11
  * const pool = new Pool({ connectionString: process.env.DATABASE_URL });
12
12
  * const checkpointer = new PostgresCheckpointer(pool, { tableName: 'checkpoints' });
@@ -5,7 +5,7 @@
5
5
  * @example
6
6
  * ```typescript
7
7
  * import { Pool } from 'pg';
8
- * import { PostgresCheckpointer } from '@bowenqt/qiniu-ai-sdk';
8
+ * import { PostgresCheckpointer } from '@bowenqt/qiniu-ai-sdk/node';
9
9
  *
10
10
  * const pool = new Pool({ connectionString: process.env.DATABASE_URL });
11
11
  * const checkpointer = new PostgresCheckpointer(pool, { tableName: 'checkpoints' });
@@ -5,7 +5,7 @@
5
5
  * @example
6
6
  * ```typescript
7
7
  * import Redis from 'ioredis';
8
- * import { RedisCheckpointer } from '@bowenqt/qiniu-ai-sdk';
8
+ * import { RedisCheckpointer } from '@bowenqt/qiniu-ai-sdk/node';
9
9
  *
10
10
  * const redis = new Redis('redis://localhost:6379');
11
11
  * const checkpointer = new RedisCheckpointer(redis, { prefix: 'myapp:' });
@@ -6,7 +6,7 @@
6
6
  * @example
7
7
  * ```typescript
8
8
  * import Redis from 'ioredis';
9
- * import { RedisCheckpointer } from '@bowenqt/qiniu-ai-sdk';
9
+ * import { RedisCheckpointer } from '@bowenqt/qiniu-ai-sdk/node';
10
10
  *
11
11
  * const redis = new Redis('redis://localhost:6379');
12
12
  * const checkpointer = new RedisCheckpointer(redis, { prefix: 'myapp:' });
@@ -5,7 +5,7 @@
5
5
  * @example
6
6
  * ```typescript
7
7
  * import Redis from 'ioredis';
8
- * import { RedisCheckpointer } from '@bowenqt/qiniu-ai-sdk';
8
+ * import { RedisCheckpointer } from '@bowenqt/qiniu-ai-sdk/node';
9
9
  *
10
10
  * const redis = new Redis('redis://localhost:6379');
11
11
  * const checkpointer = new RedisCheckpointer(redis, { prefix: 'myapp:' });
@@ -1 +1 @@
1
- {"version":3,"file":"audit-logger.d.ts","sourceRoot":"","sources":["../../../src/ai/guardrails/audit-logger.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACR,SAAS,EACT,gBAAgB,EAEhB,iBAAiB,EAEjB,eAAe,EAClB,MAAM,SAAS,CAAC;AASjB;;;GAGG;AACH,qBAAa,oBAAoB;IAC7B,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,QAAQ,CAAW;gBAEf,MAAM,EAAE,iBAAiB;IAKrC;;;;;;OAMG;IACG,GAAG,CACL,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,KAAK,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,eAAe,CAAC;QACxB,MAAM,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC,EACF,YAAY,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC;CA6BnB;AAMD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,SAAS,CAoDhE;AAqFD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAcnD"}
1
+ {"version":3,"file":"audit-logger.d.ts","sourceRoot":"","sources":["../../../src/ai/guardrails/audit-logger.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACR,SAAS,EACT,gBAAgB,EAEhB,iBAAiB,EAEjB,eAAe,EAGlB,MAAM,SAAS,CAAC;AAYjB;;;GAGG;AACH,qBAAa,oBAAoB;IAC7B,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,QAAQ,CAAW;gBAEf,MAAM,EAAE,iBAAiB;IAKrC;;;;;;OAMG;IACG,GAAG,CACL,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,KAAK,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,eAAe,CAAC;QACxB,MAAM,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC,EACF,YAAY,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC;CA6BnB;AAMD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,SAAS,CAoDhE;AAoGD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAcnD"}
@@ -45,6 +45,8 @@ exports.auditLogger = auditLogger;
45
45
  exports.resolveFileUrlPath = resolveFileUrlPath;
46
46
  /** Placeholder for redacted content */
47
47
  const REDACTED_PLACEHOLDER = '[CONTENT_REDACTED]';
48
+ const KODO_SINK_MIGRATION_MESSAGE = 'AuditLogger: kodo:// string sinks are no longer supported. ' +
49
+ 'Use createKodoAuditSink() from "@bowenqt/qiniu-ai-sdk/node" instead.';
48
50
  // ============================================================================
49
51
  // Audit Logger Collector
50
52
  // ============================================================================
@@ -148,11 +150,17 @@ function auditLogger(config) {
148
150
  };
149
151
  }
150
152
  function parseSink(sink) {
153
+ if (typeof sink !== 'string') {
154
+ return {
155
+ type: 'custom',
156
+ sink,
157
+ };
158
+ }
151
159
  if (sink.startsWith('kodo://')) {
152
160
  const path = sink.slice(7);
153
161
  const [bucket, ...rest] = path.split('/');
154
162
  return {
155
- type: 'kodo',
163
+ type: 'deprecated-kodo',
156
164
  bucket,
157
165
  prefix: rest.join('/'),
158
166
  };
@@ -181,8 +189,14 @@ async function flushLogs(sink, entries) {
181
189
  case 'file':
182
190
  await appendEntriesToFile(sink.path, entries);
183
191
  break;
184
- case 'kodo':
185
- throw new Error('AuditLogger: kodo:// sink is experimental and not yet implemented. Use "console" or "file://" instead.');
192
+ case 'custom':
193
+ if (!sink.sink) {
194
+ throw new Error('AuditLogger: custom sink is missing a write() implementation.');
195
+ }
196
+ await sink.sink.write(entries);
197
+ break;
198
+ case 'deprecated-kodo':
199
+ throw new Error(KODO_SINK_MIGRATION_MESSAGE);
186
200
  }
187
201
  }
188
202
  async function appendEntriesToFile(filePath, entries) {
@@ -1 +1 @@
1
- {"version":3,"file":"audit-logger.js","sourceRoot":"","sources":["../../../src/ai/guardrails/audit-logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"audit-logger.js","sourceRoot":"","sources":["../../../src/ai/guardrails/audit-logger.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,8 @@
7
7
  */
8
8
  /** Placeholder for redacted content */
9
9
  const REDACTED_PLACEHOLDER = '[CONTENT_REDACTED]';
10
+ const KODO_SINK_MIGRATION_MESSAGE = 'AuditLogger: kodo:// string sinks are no longer supported. ' +
11
+ 'Use createKodoAuditSink() from "@bowenqt/qiniu-ai-sdk/node" instead.';
10
12
  // ============================================================================
11
13
  // Audit Logger Collector
12
14
  // ============================================================================
@@ -109,11 +111,17 @@ export function auditLogger(config) {
109
111
  };
110
112
  }
111
113
  function parseSink(sink) {
114
+ if (typeof sink !== 'string') {
115
+ return {
116
+ type: 'custom',
117
+ sink,
118
+ };
119
+ }
112
120
  if (sink.startsWith('kodo://')) {
113
121
  const path = sink.slice(7);
114
122
  const [bucket, ...rest] = path.split('/');
115
123
  return {
116
- type: 'kodo',
124
+ type: 'deprecated-kodo',
117
125
  bucket,
118
126
  prefix: rest.join('/'),
119
127
  };
@@ -142,8 +150,14 @@ async function flushLogs(sink, entries) {
142
150
  case 'file':
143
151
  await appendEntriesToFile(sink.path, entries);
144
152
  break;
145
- case 'kodo':
146
- throw new Error('AuditLogger: kodo:// sink is experimental and not yet implemented. Use "console" or "file://" instead.');
153
+ case 'custom':
154
+ if (!sink.sink) {
155
+ throw new Error('AuditLogger: custom sink is missing a write() implementation.');
156
+ }
157
+ await sink.sink.write(entries);
158
+ break;
159
+ case 'deprecated-kodo':
160
+ throw new Error(KODO_SINK_MIGRATION_MESSAGE);
147
161
  }
148
162
  }
149
163
  async function appendEntriesToFile(filePath, entries) {
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Guardrails Module - Public exports
3
3
  */
4
- export type { Guardrail, GuardrailPhase, GuardrailAction, GuardrailContext, GuardrailResult, GuardrailChainResult, ContentFilterConfig, ContentCategory, TokenLimiterConfig, GuardrailTokenStore, AuditLoggerConfig, AuditLogEntry, } from './types';
4
+ export type { Guardrail, GuardrailPhase, GuardrailAction, GuardrailContext, GuardrailResult, GuardrailChainResult, ContentFilterConfig, ContentCategory, TokenLimiterConfig, GuardrailTokenStore, AuditLoggerConfig, AuditLogEntry, AuditSinkLike, AuditLoggerSink, } from './types';
5
5
  export { ACTION_PRIORITY } from './types';
6
6
  export { GuardrailChain, GuardrailBlockedError } from './chain';
7
7
  export { inputFilter } from './input-filter';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ai/guardrails/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EACR,SAAS,EACT,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,GAChB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG1C,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAGhE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ai/guardrails/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EACR,SAAS,EACT,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,eAAe,GAClB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG1C,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAGhE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ai/guardrails/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAkBH,iCAA0C;AAAjC,wGAAA,eAAe,OAAA;AAExB,QAAQ;AACR,iCAAgE;AAAvD,uGAAA,cAAc,OAAA;AAAE,8GAAA,qBAAqB,OAAA;AAE9C,sBAAsB;AACtB,+CAA6C;AAApC,2GAAA,WAAW,OAAA;AACpB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,+CAAmE;AAA1D,2GAAA,WAAW,OAAA;AAAE,oHAAA,oBAAoB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ai/guardrails/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAoBH,iCAA0C;AAAjC,wGAAA,eAAe,OAAA;AAExB,QAAQ;AACR,iCAAgE;AAAvD,uGAAA,cAAc,OAAA;AAAE,8GAAA,qBAAqB,OAAA;AAE9C,sBAAsB;AACtB,+CAA6C;AAApC,2GAAA,WAAW,OAAA;AACpB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,+CAAmE;AAA1D,2GAAA,WAAW,OAAA;AAAE,oHAAA,oBAAoB,OAAA"}
@@ -83,19 +83,31 @@ export interface GuardrailTokenStore {
83
83
  set(key: string, value: number, ttlMs: number): Promise<void>;
84
84
  increment(key: string, amount: number, ttlMs: number): Promise<number>;
85
85
  }
86
+ /**
87
+ * Explicit audit sink contract for non-string integrations.
88
+ */
89
+ export interface AuditSinkLike {
90
+ write(entries: AuditLogEntry[]): Promise<void>;
91
+ }
92
+ /**
93
+ * Accepted sink input for audit logging.
94
+ */
95
+ export type AuditLoggerSink = string | AuditSinkLike;
86
96
  /**
87
97
  * Audit logger configuration.
88
98
  */
89
99
  export interface AuditLoggerConfig {
90
100
  /**
91
- * Sink URL for audit logs.
92
- * Supported:
101
+ * Audit sink target.
102
+ *
103
+ * Supported string sinks:
93
104
  * - 'console'
94
105
  * - 'file:///absolute/path/to/audit.log' (Node.js runtime)
95
106
  *
96
- * Other sink schemes are reserved for future integrations and are currently unsupported.
107
+ * For Node-only integrations such as Kodo, pass an explicit sink object
108
+ * created by `createKodoAuditSink()` from `@bowenqt/qiniu-ai-sdk/node`.
97
109
  */
98
- sink: string;
110
+ sink: AuditLoggerSink;
99
111
  /** Content to log */
100
112
  content?: 'original' | 'redacted';
101
113
  /** Error handling behavior */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ai/guardrails/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ai/guardrails/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/ai/guardrails/types.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAkKH;;;GAGG;AACU,QAAA,eAAe,GAAoC;IAC5D,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,CAAC;IACT,KAAK,EAAE,CAAC;CACX,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/ai/guardrails/types.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAgLH;;;GAGG;AACU,QAAA,eAAe,GAAoC;IAC5D,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,CAAC;IACT,KAAK,EAAE,CAAC;CACX,CAAC"}
package/dist/client.d.ts CHANGED
@@ -1,26 +1,3 @@
1
- import { QiniuAI as BaseQiniuAI } from './qiniu/client';
2
- import type { QiniuAIOptions as BaseQiniuAIOptions } from './qiniu/client';
3
- import { Sandbox } from './modules/sandbox';
4
- import type { SandboxConfig } from './modules/sandbox';
5
- export interface QiniuAIOptions extends BaseQiniuAIOptions {
6
- /**
7
- * @deprecated Root-entry sandbox access is a compatibility path.
8
- * Use `createNodeQiniuAI()` from `@bowenqt/qiniu-ai-sdk/node` instead.
9
- */
10
- sandbox?: SandboxConfig;
11
- }
12
- /**
13
- * Root-entry compatibility client.
14
- * Prefer importing `QiniuAI` from `@bowenqt/qiniu-ai-sdk/qiniu` for browser-safe usage.
15
- */
16
- export declare class QiniuAI extends BaseQiniuAI {
17
- /**
18
- * @deprecated Root-entry sandbox access is a compatibility path.
19
- * Use `createNodeQiniuAI()` from `@bowenqt/qiniu-ai-sdk/node` instead.
20
- */
21
- sandbox: Sandbox;
22
- constructor(options: QiniuAIOptions);
23
- }
24
- export { consoleLogger, noopLogger, createFilteredLogger, defaultFetchAdapter, composeMiddleware, retryMiddleware, headersMiddleware, timingMiddleware, } from './qiniu/client';
25
- export type { Logger, LogLevel, FetchAdapter, Middleware, MiddlewareRequest, MiddlewareResponse, RequestOptions, } from './qiniu/client';
1
+ export { QiniuAI, consoleLogger, noopLogger, createFilteredLogger, defaultFetchAdapter, composeMiddleware, retryMiddleware, headersMiddleware, timingMiddleware, } from './qiniu/client';
2
+ export type { QiniuAIOptions, Logger, LogLevel, FetchAdapter, Middleware, MiddlewareRequest, MiddlewareResponse, RequestOptions, } from './qiniu/client';
26
3
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,IAAI,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAC3E,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,MAAM,WAAW,cAAe,SAAQ,kBAAkB;IACtD;;;OAGG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;CAC3B;AAED;;;GAGG;AACH,qBAAa,OAAQ,SAAQ,WAAW;IACpC;;;OAGG;IACI,OAAO,EAAE,OAAO,CAAC;gBAEZ,OAAO,EAAE,cAAc;CAKtC;AAED,OAAO,EACH,aAAa,EACb,UAAU,EACV,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,GACnB,MAAM,gBAAgB,CAAC;AAExB,YAAY,EACR,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,GACjB,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,OAAO,EACP,aAAa,EACb,UAAU,EACV,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,GACnB,MAAM,gBAAgB,CAAC;AAExB,YAAY,EACR,cAAc,EACd,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,GACjB,MAAM,gBAAgB,CAAC"}
package/dist/client.js CHANGED
@@ -1,27 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.timingMiddleware = exports.headersMiddleware = exports.retryMiddleware = exports.composeMiddleware = exports.defaultFetchAdapter = exports.createFilteredLogger = exports.noopLogger = exports.consoleLogger = exports.QiniuAI = void 0;
4
- const client_1 = require("./qiniu/client");
5
- const sandbox_1 = require("./modules/sandbox");
6
- /**
7
- * Root-entry compatibility client.
8
- * Prefer importing `QiniuAI` from `@bowenqt/qiniu-ai-sdk/qiniu` for browser-safe usage.
9
- */
10
- class QiniuAI extends client_1.QiniuAI {
11
- constructor(options) {
12
- const { sandbox, ...clientOptions } = options;
13
- super(clientOptions);
14
- this.sandbox = new sandbox_1.Sandbox(this, sandbox);
15
- }
16
- }
17
- exports.QiniuAI = QiniuAI;
18
- var client_2 = require("./qiniu/client");
19
- Object.defineProperty(exports, "consoleLogger", { enumerable: true, get: function () { return client_2.consoleLogger; } });
20
- Object.defineProperty(exports, "noopLogger", { enumerable: true, get: function () { return client_2.noopLogger; } });
21
- Object.defineProperty(exports, "createFilteredLogger", { enumerable: true, get: function () { return client_2.createFilteredLogger; } });
22
- Object.defineProperty(exports, "defaultFetchAdapter", { enumerable: true, get: function () { return client_2.defaultFetchAdapter; } });
23
- Object.defineProperty(exports, "composeMiddleware", { enumerable: true, get: function () { return client_2.composeMiddleware; } });
24
- Object.defineProperty(exports, "retryMiddleware", { enumerable: true, get: function () { return client_2.retryMiddleware; } });
25
- Object.defineProperty(exports, "headersMiddleware", { enumerable: true, get: function () { return client_2.headersMiddleware; } });
26
- Object.defineProperty(exports, "timingMiddleware", { enumerable: true, get: function () { return client_2.timingMiddleware; } });
4
+ var client_1 = require("./qiniu/client");
5
+ Object.defineProperty(exports, "QiniuAI", { enumerable: true, get: function () { return client_1.QiniuAI; } });
6
+ Object.defineProperty(exports, "consoleLogger", { enumerable: true, get: function () { return client_1.consoleLogger; } });
7
+ Object.defineProperty(exports, "noopLogger", { enumerable: true, get: function () { return client_1.noopLogger; } });
8
+ Object.defineProperty(exports, "createFilteredLogger", { enumerable: true, get: function () { return client_1.createFilteredLogger; } });
9
+ Object.defineProperty(exports, "defaultFetchAdapter", { enumerable: true, get: function () { return client_1.defaultFetchAdapter; } });
10
+ Object.defineProperty(exports, "composeMiddleware", { enumerable: true, get: function () { return client_1.composeMiddleware; } });
11
+ Object.defineProperty(exports, "retryMiddleware", { enumerable: true, get: function () { return client_1.retryMiddleware; } });
12
+ Object.defineProperty(exports, "headersMiddleware", { enumerable: true, get: function () { return client_1.headersMiddleware; } });
13
+ Object.defineProperty(exports, "timingMiddleware", { enumerable: true, get: function () { return client_1.timingMiddleware; } });
27
14
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":";;;AAAA,2CAAwD;AAExD,+CAA4C;AAW5C;;;GAGG;AACH,MAAa,OAAQ,SAAQ,gBAAW;IAOpC,YAAY,OAAuB;QAC/B,MAAM,EAAE,OAAO,EAAE,GAAG,aAAa,EAAE,GAAG,OAAO,CAAC;QAC9C,KAAK,CAAC,aAAa,CAAC,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,IAAI,iBAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;CACJ;AAZD,0BAYC;AAED,yCASwB;AARpB,uGAAA,aAAa,OAAA;AACb,oGAAA,UAAU,OAAA;AACV,8GAAA,oBAAoB,OAAA;AACpB,6GAAA,mBAAmB,OAAA;AACnB,2GAAA,iBAAiB,OAAA;AACjB,yGAAA,eAAe,OAAA;AACf,2GAAA,iBAAiB,OAAA;AACjB,0GAAA,gBAAgB,OAAA"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":";;;AAAA,yCAUwB;AATpB,iGAAA,OAAO,OAAA;AACP,uGAAA,aAAa,OAAA;AACb,oGAAA,UAAU,OAAA;AACV,8GAAA,oBAAoB,OAAA;AACpB,6GAAA,mBAAmB,OAAA;AACnB,2GAAA,iBAAiB,OAAA;AACjB,yGAAA,eAAe,OAAA;AACf,2GAAA,iBAAiB,OAAA;AACjB,0GAAA,gBAAgB,OAAA"}
package/dist/client.mjs CHANGED
@@ -1,15 +1,2 @@
1
- import { QiniuAI as BaseQiniuAI } from './qiniu/client.mjs';
2
- import { Sandbox } from './modules/sandbox/index.mjs';
3
- /**
4
- * Root-entry compatibility client.
5
- * Prefer importing `QiniuAI` from `@bowenqt/qiniu-ai-sdk/qiniu` for browser-safe usage.
6
- */
7
- export class QiniuAI extends BaseQiniuAI {
8
- constructor(options) {
9
- const { sandbox, ...clientOptions } = options;
10
- super(clientOptions);
11
- this.sandbox = new Sandbox(this, sandbox);
12
- }
13
- }
14
- export { consoleLogger, noopLogger, createFilteredLogger, defaultFetchAdapter, composeMiddleware, retryMiddleware, headersMiddleware, timingMiddleware, } from './qiniu/client.mjs';
1
+ export { QiniuAI, consoleLogger, noopLogger, createFilteredLogger, defaultFetchAdapter, composeMiddleware, retryMiddleware, headersMiddleware, timingMiddleware, } from './qiniu/client.mjs';
15
2
  //# sourceMappingURL=client.js.map
package/dist/index.d.ts CHANGED
@@ -11,14 +11,6 @@ export { AgentExpert, A2ARateLimiter, RateLimitError, validateSchema, sanitizeAr
11
11
  export type { A2AMessage, A2AError, A2AErrorCode, AgentExpertConfig, RateLimitConfig, CallToolRequest, RunTaskRequest, RunTaskResult, ValidationResult, JsonSchema, } from './ai/a2a';
12
12
  export { GuardrailChain, GuardrailBlockedError, inputFilter, outputFilter, tokenLimiter, ACTION_PRIORITY, } from './ai/guardrails';
13
13
  export type { Guardrail, GuardrailPhase, GuardrailAction, GuardrailContext, GuardrailResult, GuardrailChainResult, ContentFilterConfig, ContentCategory, TokenLimiterConfig, GuardrailTokenStore, } from './ai/guardrails';
14
- /**
15
- * @deprecated Import from '@bowenqt/qiniu-ai-sdk/node' instead.
16
- */
17
- export { auditLogger, AuditLoggerCollector } from './ai/guardrails';
18
- /**
19
- * @deprecated Import from '@bowenqt/qiniu-ai-sdk/node' instead.
20
- */
21
- export type { AuditLoggerConfig, AuditLogEntry } from './ai/guardrails';
22
14
  export { createCrew, createSequentialCrew, createParallelCrew, createHierarchicalCrew, } from './ai/crew';
23
15
  export type { OrchestrationMode, CrewConfig, CrewKickoffOptions, AgentResult, CrewResult, Crew, } from './ai/crew';
24
16
  export * from './lib/types';
@@ -55,18 +47,6 @@ export { ResponseAPI } from './modules/response';
55
47
  export type { ResponseCreateRequest, ResponseCreateResponse, ResponseInputMessage, ResponseOutput, ResponseContentBlock, } from './modules/response';
56
48
  export { Log } from './modules/log';
57
49
  export type { LogExportRequest, LogEntry, } from './modules/log';
58
- /**
59
- * @deprecated Import from '@bowenqt/qiniu-ai-sdk/node' instead.
60
- * Root-entry sandbox exports are kept for compatibility during the v0.42 window.
61
- */
62
- export { Sandbox as QiniuSandbox } from './modules/sandbox';
63
- export { SandboxInstance, CommandHandle, SandboxPty } from './modules/sandbox';
64
- export { Templates as SandboxTemplates, TemplateCreateResponse } from './modules/sandbox';
65
- export { ChildTransport } from './lib/child-transport';
66
- /**
67
- * @deprecated Import from '@bowenqt/qiniu-ai-sdk/node' instead.
68
- */
69
- export type { SandboxConfig, CreateSandboxParams, SandboxInfo, SandboxState, CommandResult, EntryInfo, ListSandboxParams, ListedSandbox, RunCommandOptions, WaitUntilReadyOptions, StreamCommandOptions, ProcessEvent, ProcessInfo, PtySize, PtyOptions, TemplateInfo, TemplateBuildInfo, TemplateBuildLogs, CreateTemplateParams, UpdateTemplateParams, WaitForBuildOptions, } from './modules/sandbox';
70
50
  export type { VideoTaskHandle } from './modules/video';
71
51
  export { generateTextWithGraph } from './ai/generate-text';
72
52
  export type { GenerateTextWithGraphOptions, GenerateTextWithGraphResult } from './ai/generate-text';
@@ -93,35 +73,8 @@ export { Censor } from './modules/censor';
93
73
  export type { CensorScene, CensorSuggestion, ImageCensorRequest, ImageCensorResponse, VideoCensorRequest, VideoCensorJobResponse, VideoCensorStatus, VideoCensorResult, SceneResult, } from './modules/censor';
94
74
  export { QINIU_TOOLS, getQiniuToolsArray, getQiniuToolSchemas, qiniuOcrTool, qiniuImageCensorTool, qiniuVideoCensorTool, qiniuVframeTool, } from './ai-tools/qiniu-tools';
95
75
  export type { QiniuToolContext, OcrToolParams, OcrToolResult, ImageCensorToolParams, ImageCensorToolResult, VideoCensorToolParams, VideoCensorToolResult, VframeToolParams, VframeToolResult, } from './ai-tools/qiniu-tools';
96
- /**
97
- * @deprecated Import from '@bowenqt/qiniu-ai-sdk/node' instead.
98
- * Kept on the root entry for one compatibility window.
99
- */
100
- export { SkillLoader } from './modules/skills';
101
- export { RegistryProtocolStub } from './modules/skills';
102
- export { SkillRegistry } from './modules/skills';
103
- export type { Skill } from './modules/skills';
104
- export type { SkillRegistryConfig, RemoteSkillSource } from './modules/skills';
105
- export type { SkillRegistryProtocol, RegistrySkillEntry, RegistrySearchOptions } from './modules/skills';
106
- /**
107
- * @deprecated Import from '@bowenqt/qiniu-ai-sdk/node' instead.
108
- * Kept on the root entry for one compatibility window.
109
- */
110
- export { MCPHttpTransport, MCPHttpTransportError, PKCEFlow, DeviceCodeFlow, OAuthError, generateCodeVerifier, generateCodeChallenge, generateState, refreshAccessToken, MemoryTokenStore, FileTokenStore, TokenManager, QiniuMCPServer, startFromEnv, } from './modules/mcp';
111
- /**
112
- * @deprecated Import from '@bowenqt/qiniu-ai-sdk/node' instead.
113
- */
114
- export type { MCPServerConfig, MCPStdioServerConfig, MCPHttpServerConfig, MCPOAuthConfig, MCPToolDefinition, MCPToolResult, MCPTransport, TokenProvider, OAuthTokens, TokenStore, FileTokenStoreConfig, QiniuMCPServerConfig, } from './modules/mcp';
115
76
  export { MemoryCheckpointer, deserializeCheckpoint, isPendingApproval, getPendingApproval, resumeWithApproval, } from './ai/graph';
116
77
  export type { Checkpointer, Checkpoint, CheckpointMetadata, SerializedAgentState, CheckpointStatus, CheckpointSaveOptions, PendingApproval, ResumeWithApprovalResult, ToolExecutor, } from './ai/graph';
117
- /**
118
- * @deprecated Import from '@bowenqt/qiniu-ai-sdk/node' instead.
119
- */
120
- export { RedisCheckpointer, PostgresCheckpointer, KodoCheckpointer, } from './ai/graph';
121
- /**
122
- * @deprecated Import from '@bowenqt/qiniu-ai-sdk/node' instead.
123
- */
124
- export type { RedisClient, RedisCheckpointerConfig, PostgresClient, PostgresCheckpointerConfig, KodoCheckpointerConfig, KodoRegion, } from './ai/graph';
125
78
  export { ToolRegistry, ToolConflictError } from './lib/tool-registry';
126
79
  export type { RegisteredTool, ToolSource, ToolSourceType, ToolParameters, ToolRegistryConfig, ConflictStrategy } from './lib/tool-registry';
127
80
  export { StateGraph, END, MaxGraphStepsError } from './ai/graph';