@aituber-onair/chat 0.30.0 → 0.32.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 (75) hide show
  1. package/README.ja.md +262 -2
  2. package/README.md +280 -2
  3. package/dist/cjs/agent.d.ts +3 -0
  4. package/dist/cjs/agent.d.ts.map +1 -0
  5. package/dist/cjs/agent.js +21 -0
  6. package/dist/cjs/agent.js.map +1 -0
  7. package/dist/cjs/services/providers/agent/ClaudeAgentSDKChatService.d.ts +39 -0
  8. package/dist/cjs/services/providers/agent/ClaudeAgentSDKChatService.d.ts.map +1 -0
  9. package/dist/cjs/services/providers/agent/ClaudeAgentSDKChatService.js +103 -0
  10. package/dist/cjs/services/providers/agent/ClaudeAgentSDKChatService.js.map +1 -0
  11. package/dist/cjs/services/providers/agent/ClaudeAgentSDKChatServiceProvider.d.ts +14 -0
  12. package/dist/cjs/services/providers/agent/ClaudeAgentSDKChatServiceProvider.d.ts.map +1 -0
  13. package/dist/cjs/services/providers/agent/ClaudeAgentSDKChatServiceProvider.js +31 -0
  14. package/dist/cjs/services/providers/agent/ClaudeAgentSDKChatServiceProvider.js.map +1 -0
  15. package/dist/cjs/services/providers/agent/CodexSDKChatService.d.ts +29 -0
  16. package/dist/cjs/services/providers/agent/CodexSDKChatService.d.ts.map +1 -0
  17. package/dist/cjs/services/providers/agent/CodexSDKChatService.js +65 -0
  18. package/dist/cjs/services/providers/agent/CodexSDKChatService.js.map +1 -0
  19. package/dist/cjs/services/providers/agent/CodexSDKChatServiceProvider.d.ts +14 -0
  20. package/dist/cjs/services/providers/agent/CodexSDKChatServiceProvider.d.ts.map +1 -0
  21. package/dist/cjs/services/providers/agent/CodexSDKChatServiceProvider.js +31 -0
  22. package/dist/cjs/services/providers/agent/CodexSDKChatServiceProvider.js.map +1 -0
  23. package/dist/cjs/services/providers/agent/CopilotSDKChatService.d.ts +48 -0
  24. package/dist/cjs/services/providers/agent/CopilotSDKChatService.d.ts.map +1 -0
  25. package/dist/cjs/services/providers/agent/CopilotSDKChatService.js +79 -0
  26. package/dist/cjs/services/providers/agent/CopilotSDKChatService.js.map +1 -0
  27. package/dist/cjs/services/providers/agent/CopilotSDKChatServiceProvider.d.ts +14 -0
  28. package/dist/cjs/services/providers/agent/CopilotSDKChatServiceProvider.d.ts.map +1 -0
  29. package/dist/cjs/services/providers/agent/CopilotSDKChatServiceProvider.js +31 -0
  30. package/dist/cjs/services/providers/agent/CopilotSDKChatServiceProvider.js.map +1 -0
  31. package/dist/cjs/services/providers/agent/index.d.ts +24 -0
  32. package/dist/cjs/services/providers/agent/index.d.ts.map +1 -0
  33. package/dist/cjs/services/providers/agent/index.js +33 -0
  34. package/dist/cjs/services/providers/agent/index.js.map +1 -0
  35. package/dist/cjs/services/providers/agent/shared.d.ts +36 -0
  36. package/dist/cjs/services/providers/agent/shared.d.ts.map +1 -0
  37. package/dist/cjs/services/providers/agent/shared.js +122 -0
  38. package/dist/cjs/services/providers/agent/shared.js.map +1 -0
  39. package/dist/esm/agent.d.ts +3 -0
  40. package/dist/esm/agent.d.ts.map +1 -0
  41. package/dist/esm/agent.js +5 -0
  42. package/dist/esm/agent.js.map +1 -0
  43. package/dist/esm/services/providers/agent/ClaudeAgentSDKChatService.d.ts +39 -0
  44. package/dist/esm/services/providers/agent/ClaudeAgentSDKChatService.d.ts.map +1 -0
  45. package/dist/esm/services/providers/agent/ClaudeAgentSDKChatService.js +99 -0
  46. package/dist/esm/services/providers/agent/ClaudeAgentSDKChatService.js.map +1 -0
  47. package/dist/esm/services/providers/agent/ClaudeAgentSDKChatServiceProvider.d.ts +14 -0
  48. package/dist/esm/services/providers/agent/ClaudeAgentSDKChatServiceProvider.d.ts.map +1 -0
  49. package/dist/esm/services/providers/agent/ClaudeAgentSDKChatServiceProvider.js +27 -0
  50. package/dist/esm/services/providers/agent/ClaudeAgentSDKChatServiceProvider.js.map +1 -0
  51. package/dist/esm/services/providers/agent/CodexSDKChatService.d.ts +29 -0
  52. package/dist/esm/services/providers/agent/CodexSDKChatService.d.ts.map +1 -0
  53. package/dist/esm/services/providers/agent/CodexSDKChatService.js +61 -0
  54. package/dist/esm/services/providers/agent/CodexSDKChatService.js.map +1 -0
  55. package/dist/esm/services/providers/agent/CodexSDKChatServiceProvider.d.ts +14 -0
  56. package/dist/esm/services/providers/agent/CodexSDKChatServiceProvider.d.ts.map +1 -0
  57. package/dist/esm/services/providers/agent/CodexSDKChatServiceProvider.js +27 -0
  58. package/dist/esm/services/providers/agent/CodexSDKChatServiceProvider.js.map +1 -0
  59. package/dist/esm/services/providers/agent/CopilotSDKChatService.d.ts +48 -0
  60. package/dist/esm/services/providers/agent/CopilotSDKChatService.d.ts.map +1 -0
  61. package/dist/esm/services/providers/agent/CopilotSDKChatService.js +75 -0
  62. package/dist/esm/services/providers/agent/CopilotSDKChatService.js.map +1 -0
  63. package/dist/esm/services/providers/agent/CopilotSDKChatServiceProvider.d.ts +14 -0
  64. package/dist/esm/services/providers/agent/CopilotSDKChatServiceProvider.d.ts.map +1 -0
  65. package/dist/esm/services/providers/agent/CopilotSDKChatServiceProvider.js +27 -0
  66. package/dist/esm/services/providers/agent/CopilotSDKChatServiceProvider.js.map +1 -0
  67. package/dist/esm/services/providers/agent/index.d.ts +24 -0
  68. package/dist/esm/services/providers/agent/index.d.ts.map +1 -0
  69. package/dist/esm/services/providers/agent/index.js +19 -0
  70. package/dist/esm/services/providers/agent/index.js.map +1 -0
  71. package/dist/esm/services/providers/agent/shared.d.ts +36 -0
  72. package/dist/esm/services/providers/agent/shared.d.ts.map +1 -0
  73. package/dist/esm/services/providers/agent/shared.js +116 -0
  74. package/dist/esm/services/providers/agent/shared.js.map +1 -0
  75. package/package.json +6 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CopilotSDKChatService.js","sourceRoot":"","sources":["../../../../../src/services/providers/agent/CopilotSDKChatService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { ChatService } from '../../ChatService';
2
+ import { ChatServiceProvider, VisionSupportLevel } from '../ChatServiceProvider';
3
+ import { CopilotSDKChatServiceOptions, CopilotSDKLoader } from './CopilotSDKChatService';
4
+ export declare class CopilotSDKChatServiceProvider implements ChatServiceProvider<CopilotSDKChatServiceOptions> {
5
+ private loadSDK?;
6
+ constructor(loadSDK?: CopilotSDKLoader | undefined);
7
+ createChatService(options: CopilotSDKChatServiceOptions): ChatService;
8
+ getProviderName(): string;
9
+ getSupportedModels(): string[];
10
+ getDefaultModel(): string;
11
+ supportsVision(): boolean;
12
+ getVisionSupportLevel(): VisionSupportLevel;
13
+ }
14
+ //# sourceMappingURL=CopilotSDKChatServiceProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CopilotSDKChatServiceProvider.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/agent/CopilotSDKChatServiceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAEL,4BAA4B,EAC5B,gBAAgB,EAEjB,MAAM,yBAAyB,CAAC;AAGjC,qBAAa,6BACX,YAAW,mBAAmB,CAAC,4BAA4B,CAAC;IAEhD,OAAO,CAAC,OAAO,CAAC;gBAAR,OAAO,CAAC,EAAE,gBAAgB,YAAA;IAE9C,iBAAiB,CAAC,OAAO,EAAE,4BAA4B,GAAG,WAAW;IAKrE,eAAe,IAAI,MAAM;IAIzB,kBAAkB,IAAI,MAAM,EAAE;IAI9B,eAAe,IAAI,MAAM;IAIzB,cAAc,IAAI,OAAO;IAIzB,qBAAqB,IAAI,kBAAkB;CAG5C"}
@@ -0,0 +1,27 @@
1
+ import { CopilotSDKChatService, DEFAULT_COPILOT_SDK_MODEL, } from './CopilotSDKChatService';
2
+ import { rejectUnsupportedAgentOptions } from './shared';
3
+ export class CopilotSDKChatServiceProvider {
4
+ constructor(loadSDK) {
5
+ this.loadSDK = loadSDK;
6
+ }
7
+ createChatService(options) {
8
+ rejectUnsupportedAgentOptions(this.getProviderName(), options);
9
+ return new CopilotSDKChatService(options, this.loadSDK);
10
+ }
11
+ getProviderName() {
12
+ return 'copilot-sdk';
13
+ }
14
+ getSupportedModels() {
15
+ return [DEFAULT_COPILOT_SDK_MODEL];
16
+ }
17
+ getDefaultModel() {
18
+ return DEFAULT_COPILOT_SDK_MODEL;
19
+ }
20
+ supportsVision() {
21
+ return false;
22
+ }
23
+ getVisionSupportLevel() {
24
+ return 'unsupported';
25
+ }
26
+ }
27
+ //# sourceMappingURL=CopilotSDKChatServiceProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CopilotSDKChatServiceProvider.js","sourceRoot":"","sources":["../../../../../src/services/providers/agent/CopilotSDKChatServiceProvider.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,qBAAqB,EAGrB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,6BAA6B,EAAE,MAAM,UAAU,CAAC;AAEzD,MAAM,OAAO,6BAA6B;IAGxC,YAAoB,OAA0B;QAA1B,YAAO,GAAP,OAAO,CAAmB;IAAG,CAAC;IAElD,iBAAiB,CAAC,OAAqC;QACrD,6BAA6B,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,OAAO,CAAC,CAAC;QAC/D,OAAO,IAAI,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,eAAe;QACb,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,kBAAkB;QAChB,OAAO,CAAC,yBAAyB,CAAC,CAAC;IACrC,CAAC;IAED,eAAe;QACb,OAAO,yBAAyB,CAAC;IACnC,CAAC;IAED,cAAc;QACZ,OAAO,KAAK,CAAC;IACf,CAAC;IAED,qBAAqB;QACnB,OAAO,aAAa,CAAC;IACvB,CAAC;CACF"}
@@ -0,0 +1,24 @@
1
+ import { ChatService } from '../../ChatService';
2
+ import { ClaudeAgentSDKChatServiceOptions, ClaudeAgentSDKLoader } from './ClaudeAgentSDKChatService';
3
+ import { CodexSDKChatServiceOptions, CodexSDKLoader } from './CodexSDKChatService';
4
+ import { CopilotSDKChatServiceOptions, CopilotSDKLoader } from './CopilotSDKChatService';
5
+ export { ClaudeAgentSDKChatService, DEFAULT_CLAUDE_AGENT_SDK_MODEL, type ClaudeAgentSDKChatServiceOptions, type ClaudeAgentSDKLoader, } from './ClaudeAgentSDKChatService';
6
+ export { ClaudeAgentSDKChatServiceProvider } from './ClaudeAgentSDKChatServiceProvider';
7
+ export { CodexSDKChatService, DEFAULT_CODEX_SDK_MODEL, type CodexSDKChatServiceOptions, type CodexSDKLoader, } from './CodexSDKChatService';
8
+ export { CodexSDKChatServiceProvider } from './CodexSDKChatServiceProvider';
9
+ export { CopilotSDKChatService, DEFAULT_COPILOT_SDK_MODEL, type CopilotSDKChatServiceOptions, type CopilotSDKLoader, } from './CopilotSDKChatService';
10
+ export { CopilotSDKChatServiceProvider } from './CopilotSDKChatServiceProvider';
11
+ export type AgentChatProviderName = 'codex-sdk' | 'claude-agent-sdk' | 'copilot-sdk';
12
+ export type AgentChatServiceOptionsByProvider = {
13
+ 'codex-sdk': CodexSDKChatServiceOptions;
14
+ 'claude-agent-sdk': ClaudeAgentSDKChatServiceOptions;
15
+ 'copilot-sdk': CopilotSDKChatServiceOptions;
16
+ };
17
+ export type RegisterAgentChatProvidersOptions = {
18
+ codexSDKLoader?: CodexSDKLoader;
19
+ claudeAgentSDKLoader?: ClaudeAgentSDKLoader;
20
+ copilotSDKLoader?: CopilotSDKLoader;
21
+ };
22
+ export declare function registerAgentChatProviders(options?: RegisterAgentChatProvidersOptions): void;
23
+ export declare function createAgentChatService<TProvider extends AgentChatProviderName>(providerName: TProvider, options: AgentChatServiceOptionsByProvider[TProvider]): ChatService;
24
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/agent/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAKhD,OAAO,EACL,gCAAgC,EAChC,oBAAoB,EACrB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,0BAA0B,EAC1B,cAAc,EACf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,4BAA4B,EAC5B,gBAAgB,EACjB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,yBAAyB,EACzB,8BAA8B,EAC9B,KAAK,gCAAgC,EACrC,KAAK,oBAAoB,GAC1B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,KAAK,0BAA0B,EAC/B,KAAK,cAAc,GACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,KAAK,4BAA4B,EACjC,KAAK,gBAAgB,GACtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAEhF,MAAM,MAAM,qBAAqB,GAC7B,WAAW,GACX,kBAAkB,GAClB,aAAa,CAAC;AAElB,MAAM,MAAM,iCAAiC,GAAG;IAC9C,WAAW,EAAE,0BAA0B,CAAC;IACxC,kBAAkB,EAAE,gCAAgC,CAAC;IACrD,aAAa,EAAE,4BAA4B,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC,CAAC;AAEF,wBAAgB,0BAA0B,CACxC,OAAO,GAAE,iCAAsC,GAC9C,IAAI,CAUN;AAED,wBAAgB,sBAAsB,CAAC,SAAS,SAAS,qBAAqB,EAC5E,YAAY,EAAE,SAAS,EACvB,OAAO,EAAE,iCAAiC,CAAC,SAAS,CAAC,GACpD,WAAW,CAKb"}
@@ -0,0 +1,19 @@
1
+ import { ChatServiceFactory } from '../../ChatServiceFactory';
2
+ import { ClaudeAgentSDKChatServiceProvider } from './ClaudeAgentSDKChatServiceProvider';
3
+ import { CodexSDKChatServiceProvider } from './CodexSDKChatServiceProvider';
4
+ import { CopilotSDKChatServiceProvider } from './CopilotSDKChatServiceProvider';
5
+ export { ClaudeAgentSDKChatService, DEFAULT_CLAUDE_AGENT_SDK_MODEL, } from './ClaudeAgentSDKChatService';
6
+ export { ClaudeAgentSDKChatServiceProvider } from './ClaudeAgentSDKChatServiceProvider';
7
+ export { CodexSDKChatService, DEFAULT_CODEX_SDK_MODEL, } from './CodexSDKChatService';
8
+ export { CodexSDKChatServiceProvider } from './CodexSDKChatServiceProvider';
9
+ export { CopilotSDKChatService, DEFAULT_COPILOT_SDK_MODEL, } from './CopilotSDKChatService';
10
+ export { CopilotSDKChatServiceProvider } from './CopilotSDKChatServiceProvider';
11
+ export function registerAgentChatProviders(options = {}) {
12
+ ChatServiceFactory.registerProvider(new CodexSDKChatServiceProvider(options.codexSDKLoader));
13
+ ChatServiceFactory.registerProvider(new ClaudeAgentSDKChatServiceProvider(options.claudeAgentSDKLoader));
14
+ ChatServiceFactory.registerProvider(new CopilotSDKChatServiceProvider(options.copilotSDKLoader));
15
+ }
16
+ export function createAgentChatService(providerName, options) {
17
+ return ChatServiceFactory.createChatService(providerName, options);
18
+ }
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/services/providers/agent/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAchF,OAAO,EACL,yBAAyB,EACzB,8BAA8B,GAG/B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EACL,mBAAmB,EACnB,uBAAuB,GAGxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EACL,qBAAqB,EACrB,yBAAyB,GAG1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAmBhF,MAAM,UAAU,0BAA0B,CACxC,UAA6C,EAAE;IAE/C,kBAAkB,CAAC,gBAAgB,CACjC,IAAI,2BAA2B,CAAC,OAAO,CAAC,cAAc,CAAC,CACxD,CAAC;IACF,kBAAkB,CAAC,gBAAgB,CACjC,IAAI,iCAAiC,CAAC,OAAO,CAAC,oBAAoB,CAAC,CACpE,CAAC;IACF,kBAAkB,CAAC,gBAAgB,CACjC,IAAI,6BAA6B,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAC5D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,YAAuB,EACvB,OAAqD;IAErD,OAAO,kBAAkB,CAAC,iBAAiB,CACzC,YAAmB,EACnB,OAAyC,CAC1C,CAAC;AACJ,CAAC"}
@@ -0,0 +1,36 @@
1
+ import { ChatResponseLength } from '../../../constants';
2
+ import { ChatService } from '../../ChatService';
3
+ import { Message, MessageWithVision, ToolChatCompletion } from '../../../types';
4
+ export type AgentBaseChatServiceOptions = {
5
+ /** Subscription agent providers use local/CLI auth, not API keys. */
6
+ apiKey?: never;
7
+ /** Model name passed to the underlying SDK when supported. */
8
+ model?: string;
9
+ /** Soft response length instruction for SDKs without max-token controls. */
10
+ responseLength?: ChatResponseLength;
11
+ };
12
+ export type AgentTextChatOptions = AgentBaseChatServiceOptions & {
13
+ provider: string;
14
+ defaultModel: string;
15
+ getResponse: (prompt: string, stream: boolean, onPartialResponse: (text: string) => void) => Promise<string>;
16
+ };
17
+ export declare class AgentTextChatService implements ChatService {
18
+ readonly provider: string;
19
+ private model;
20
+ private responseLength?;
21
+ private getResponse;
22
+ constructor(options: AgentTextChatOptions);
23
+ getModel(): string;
24
+ getVisionModel(): string;
25
+ processChat(messages: Message[], onPartialResponse: (text: string) => void, onCompleteResponse: (text: string) => Promise<void>): Promise<void>;
26
+ processVisionChat(_messages: MessageWithVision[], _onPartialResponse: (text: string) => void, _onCompleteResponse: (text: string) => Promise<void>): Promise<void>;
27
+ chatOnce(messages: Message[], stream?: boolean, onPartialResponse?: (text: string) => void, maxTokens?: number): Promise<ToolChatCompletion>;
28
+ visionChatOnce(_messages: MessageWithVision[], _stream?: boolean, _onPartialResponse?: (text: string) => void, _maxTokens?: number): Promise<ToolChatCompletion>;
29
+ }
30
+ export declare function rejectUnsupportedAgentOptions(providerName: string, options: {
31
+ apiKey?: unknown;
32
+ tools?: unknown;
33
+ mcpServers?: unknown;
34
+ }): void;
35
+ export declare function wrapAgentProviderError(providerName: string, error: unknown): Error;
36
+ //# sourceMappingURL=shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/agent/shared.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAwB,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEhF,MAAM,MAAM,2BAA2B,GAAG;IACxC,qEAAqE;IACrE,MAAM,CAAC,EAAE,KAAK,CAAC;IACf,8DAA8D;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4EAA4E;IAC5E,cAAc,CAAC,EAAE,kBAAkB,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,2BAA2B,GAAG;IAC/D,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,OAAO,EACf,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,KACtC,OAAO,CAAC,MAAM,CAAC,CAAC;CACtB,CAAC;AAEF,qBAAa,oBAAqB,YAAW,WAAW;IACtD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,cAAc,CAAC,CAAqB;IAC5C,OAAO,CAAC,WAAW,CAAsC;gBAE7C,OAAO,EAAE,oBAAoB;IAOzC,QAAQ,IAAI,MAAM;IAIlB,cAAc,IAAI,MAAM;IAIlB,WAAW,CACf,QAAQ,EAAE,OAAO,EAAE,EACnB,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EACzC,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAClD,OAAO,CAAC,IAAI,CAAC;IAQV,iBAAiB,CACrB,SAAS,EAAE,iBAAiB,EAAE,EAC9B,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EAC1C,mBAAmB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GACnD,OAAO,CAAC,IAAI,CAAC;IAIV,QAAQ,CACZ,QAAQ,EAAE,OAAO,EAAE,EACnB,MAAM,GAAE,OAAc,EACtB,iBAAiB,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAe,EACpD,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC;IAcxB,cAAc,CAClB,SAAS,EAAE,iBAAiB,EAAE,EAC9B,OAAO,GAAE,OAAe,EACxB,kBAAkB,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAe,EACrD,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,kBAAkB,CAAC;CAG/B;AAED,wBAAgB,6BAA6B,CAC3C,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,GACnE,IAAI,CAcN;AAED,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,OAAO,GACb,KAAK,CAcP"}
@@ -0,0 +1,116 @@
1
+ import { MAX_TOKENS_BY_LENGTH } from '../../../constants';
2
+ export class AgentTextChatService {
3
+ constructor(options) {
4
+ this.provider = options.provider;
5
+ this.model = options.model ?? options.defaultModel;
6
+ this.responseLength = options.responseLength;
7
+ this.getResponse = options.getResponse;
8
+ }
9
+ getModel() {
10
+ return this.model;
11
+ }
12
+ getVisionModel() {
13
+ return this.model;
14
+ }
15
+ async processChat(messages, onPartialResponse, onCompleteResponse) {
16
+ const result = await this.chatOnce(messages, true, onPartialResponse);
17
+ const text = result.blocks
18
+ .map((block) => (block.type === 'text' ? block.text : ''))
19
+ .join('');
20
+ await onCompleteResponse(text);
21
+ }
22
+ async processVisionChat(_messages, _onPartialResponse, _onCompleteResponse) {
23
+ throw new Error(`${this.provider} does not support vision chat yet.`);
24
+ }
25
+ async chatOnce(messages, stream = true, onPartialResponse = () => { }, maxTokens) {
26
+ const prompt = buildTextPrompt(messages, this.responseLength, maxTokens);
27
+ const text = await this.getResponse(prompt, stream, onPartialResponse);
28
+ if (!stream) {
29
+ onPartialResponse(text);
30
+ }
31
+ return {
32
+ blocks: [{ type: 'text', text }],
33
+ stop_reason: 'end',
34
+ };
35
+ }
36
+ async visionChatOnce(_messages, _stream = false, _onPartialResponse = () => { }, _maxTokens) {
37
+ throw new Error(`${this.provider} does not support vision chat yet.`);
38
+ }
39
+ }
40
+ export function rejectUnsupportedAgentOptions(providerName, options) {
41
+ if (options.apiKey !== undefined) {
42
+ throw new Error(`${providerName} provider does not accept apiKey.`);
43
+ }
44
+ if (options.tools !== undefined) {
45
+ throw new Error(`${providerName} provider does not support tools yet.`);
46
+ }
47
+ if (options.mcpServers !== undefined) {
48
+ throw new Error(`${providerName} provider does not support mcpServers yet.`);
49
+ }
50
+ }
51
+ export function wrapAgentProviderError(providerName, error) {
52
+ if (error instanceof Error && error.message.includes(' provider requires ')) {
53
+ return error;
54
+ }
55
+ const detail = stringifyError(error);
56
+ const authHint = isLikelyAuthError(detail)
57
+ ? ' This looks like an authentication or subscription permission failure.'
58
+ : '';
59
+ const wrappedError = new Error(`${providerName} provider failed.${authHint}\n\nOriginal error:\n${detail}`);
60
+ wrappedError.cause = error;
61
+ return wrappedError;
62
+ }
63
+ function buildTextPrompt(messages, responseLength, maxTokens) {
64
+ const parts = [];
65
+ const lengthInstruction = buildLengthInstruction(responseLength, maxTokens);
66
+ if (lengthInstruction) {
67
+ parts.push(lengthInstruction);
68
+ }
69
+ parts.push(...messages.map((message) => {
70
+ const label = toRoleLabel(message.role);
71
+ return `${label}: ${message.content}`;
72
+ }));
73
+ return parts.join('\n\n');
74
+ }
75
+ function buildLengthInstruction(responseLength, maxTokens) {
76
+ const tokenLimit = maxTokens ??
77
+ (responseLength !== undefined
78
+ ? MAX_TOKENS_BY_LENGTH[responseLength]
79
+ : undefined);
80
+ if (!tokenLimit) {
81
+ return undefined;
82
+ }
83
+ return `Please keep your response within approximately ${tokenLimit} tokens.`;
84
+ }
85
+ function toRoleLabel(role) {
86
+ switch (role) {
87
+ case 'system':
88
+ return 'System';
89
+ case 'assistant':
90
+ return 'Assistant';
91
+ case 'tool':
92
+ return 'Tool';
93
+ case 'user':
94
+ return 'User';
95
+ }
96
+ }
97
+ function stringifyError(error) {
98
+ if (error instanceof Error) {
99
+ return [error.name, error.message, error.stack]
100
+ .filter((value) => Boolean(value))
101
+ .join('\n');
102
+ }
103
+ if (typeof error === 'string') {
104
+ return error;
105
+ }
106
+ try {
107
+ return JSON.stringify(error, null, 2);
108
+ }
109
+ catch {
110
+ return String(error);
111
+ }
112
+ }
113
+ function isLikelyAuthError(detail) {
114
+ return /auth|login|log in|logged in|unauthori[sz]ed|forbidden|permission|subscription|credential|token|401|403/i.test(detail);
115
+ }
116
+ //# sourceMappingURL=shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../../src/services/providers/agent/shared.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aituber-onair/chat",
3
- "version": "0.30.0",
3
+ "version": "0.32.0",
4
4
  "description": "Chat and LLM API integration library for AITuber OnAir",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",
@@ -12,6 +12,11 @@
12
12
  "import": "./dist/esm/index.js",
13
13
  "require": "./dist/cjs/index.js"
14
14
  },
15
+ "./agent": {
16
+ "types": "./dist/cjs/agent.d.ts",
17
+ "import": "./dist/esm/agent.js",
18
+ "require": "./dist/cjs/agent.js"
19
+ },
15
20
  "./dist/cjs/*": "./dist/cjs/*",
16
21
  "./dist/esm/*": "./dist/esm/*",
17
22
  "./umd": "./dist/umd/aituber-onair-chat.js"