opc-agent 4.1.24 → 4.2.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 (103) hide show
  1. package/CHANGELOG.md +59 -119
  2. package/COMPETITIVE-GAP.md +92 -92
  3. package/CONTRIBUTING.md +36 -36
  4. package/README.md +290 -290
  5. package/README.zh-CN.md +269 -269
  6. package/dist/channels/telegram.d.ts +0 -5
  7. package/dist/channels/telegram.d.ts.map +1 -1
  8. package/dist/channels/telegram.js +0 -108
  9. package/dist/channels/telegram.js.map +1 -1
  10. package/dist/channels/voice.d.ts +97 -71
  11. package/dist/channels/voice.d.ts.map +1 -1
  12. package/dist/channels/voice.js +347 -369
  13. package/dist/channels/voice.js.map +1 -1
  14. package/dist/channels/web.d.ts.map +1 -1
  15. package/dist/channels/web.js +2 -8
  16. package/dist/channels/web.js.map +1 -1
  17. package/dist/channels/wechat.js +6 -6
  18. package/dist/cli/chat.d.ts +1 -4
  19. package/dist/cli/chat.d.ts.map +1 -1
  20. package/dist/cli/chat.js +73 -680
  21. package/dist/cli/chat.js.map +1 -1
  22. package/dist/cli/setup.js +1 -1
  23. package/dist/cli/setup.js.map +1 -1
  24. package/dist/cli.js +280 -373
  25. package/dist/cli.js.map +1 -1
  26. package/dist/core/agent.d.ts +0 -1
  27. package/dist/core/agent.d.ts.map +1 -1
  28. package/dist/core/agent.js +0 -3
  29. package/dist/core/agent.js.map +1 -1
  30. package/dist/core/runtime.d.ts.map +1 -1
  31. package/dist/core/runtime.js +22 -192
  32. package/dist/core/runtime.js.map +1 -1
  33. package/dist/deploy/index.js +56 -56
  34. package/dist/doctor.d.ts +0 -1
  35. package/dist/doctor.d.ts.map +1 -1
  36. package/dist/doctor.js +10 -155
  37. package/dist/doctor.js.map +1 -1
  38. package/dist/index.d.ts +3 -4
  39. package/dist/index.d.ts.map +1 -1
  40. package/dist/index.js +9 -9
  41. package/dist/index.js.map +1 -1
  42. package/dist/memory/deepbrain.d.ts +1 -1
  43. package/dist/memory/deepbrain.d.ts.map +1 -1
  44. package/dist/memory/deepbrain.js +4 -95
  45. package/dist/memory/deepbrain.js.map +1 -1
  46. package/dist/memory/index.d.ts +0 -2
  47. package/dist/memory/index.d.ts.map +1 -1
  48. package/dist/memory/index.js +1 -3
  49. package/dist/memory/index.js.map +1 -1
  50. package/dist/memory/user-profiler.d.ts +0 -8
  51. package/dist/memory/user-profiler.d.ts.map +1 -1
  52. package/dist/memory/user-profiler.js +0 -89
  53. package/dist/memory/user-profiler.js.map +1 -1
  54. package/dist/scheduler/cron-engine.d.ts.map +1 -1
  55. package/dist/scheduler/cron-engine.js +36 -3
  56. package/dist/scheduler/cron-engine.js.map +1 -1
  57. package/dist/skills/auto-learn.d.ts.map +1 -1
  58. package/dist/skills/auto-learn.js +11 -65
  59. package/dist/skills/auto-learn.js.map +1 -1
  60. package/dist/skills/builtin/index.d.ts.map +1 -1
  61. package/dist/skills/builtin/index.js +30 -163
  62. package/dist/skills/builtin/index.js.map +1 -1
  63. package/dist/skills/types.d.ts +1 -1
  64. package/dist/skills/types.d.ts.map +1 -1
  65. package/dist/skills/types.js +0 -1
  66. package/dist/skills/types.js.map +1 -1
  67. package/dist/studio/server.d.ts +0 -1
  68. package/dist/studio/server.d.ts.map +1 -1
  69. package/dist/studio/server.js +12 -142
  70. package/dist/studio/server.js.map +1 -1
  71. package/dist/studio-ui/index.html +40 -359
  72. package/dist/ui/components.js +105 -105
  73. package/examples/README.md +22 -22
  74. package/examples/basic-agent.ts +90 -90
  75. package/examples/brain-integration.ts +71 -71
  76. package/examples/multi-channel.ts +74 -74
  77. package/install.ps1 +127 -127
  78. package/install.sh +154 -154
  79. package/models.json +164 -164
  80. package/package.json +63 -66
  81. package/scripts/install.ps1 +31 -31
  82. package/scripts/install.sh +40 -40
  83. package/templates/ecommerce-assistant/README.md +45 -45
  84. package/templates/ecommerce-assistant/oad.yaml +47 -47
  85. package/templates/tech-support/README.md +43 -43
  86. package/templates/tech-support/oad.yaml +45 -45
  87. package/.opc/memory.db +0 -0
  88. package/dist/core/model-recommender.d.ts +0 -40
  89. package/dist/core/model-recommender.d.ts.map +0 -1
  90. package/dist/core/model-recommender.js +0 -186
  91. package/dist/core/model-recommender.js.map +0 -1
  92. package/dist/memory/evolve-engine.d.ts +0 -113
  93. package/dist/memory/evolve-engine.d.ts.map +0 -1
  94. package/dist/memory/evolve-engine.js +0 -549
  95. package/dist/memory/evolve-engine.js.map +0 -1
  96. package/dist/memory/sqlite-store.d.ts +0 -40
  97. package/dist/memory/sqlite-store.d.ts.map +0 -1
  98. package/dist/memory/sqlite-store.js +0 -269
  99. package/dist/memory/sqlite-store.js.map +0 -1
  100. package/dist/scheduler/proactive.d.ts +0 -62
  101. package/dist/scheduler/proactive.d.ts.map +0 -1
  102. package/dist/scheduler/proactive.js +0 -185
  103. package/dist/scheduler/proactive.js.map +0 -1
@@ -35,8 +35,6 @@ var __importStar = (this && this.__importStar) || (function () {
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.TelegramChannel = void 0;
37
37
  const index_1 = require("./index");
38
- const voice_1 = require("./voice");
39
- const path = __importStar(require("path"));
40
38
  class TelegramChannel extends index_1.BaseChannel {
41
39
  type = 'telegram';
42
40
  token;
@@ -59,9 +57,6 @@ class TelegramChannel extends index_1.BaseChannel {
59
57
  server = null;
60
58
  // Stream handler — set by runtime when provider supports streaming
61
59
  streamHandler;
62
- // Voice processor for STT/TTS
63
- voice = null;
64
- voiceReply = false;
65
60
  constructor(config = {}) {
66
61
  super();
67
62
  this.token = config.token ?? process.env.TELEGRAM_BOT_TOKEN ?? '';
@@ -77,17 +72,6 @@ class TelegramChannel extends index_1.BaseChannel {
77
72
  this.requireMention = config.requireMention ?? false;
78
73
  if (config.botUsername)
79
74
  this.botUsername = config.botUsername.replace('@', '').toLowerCase();
80
- // Initialize voice processor
81
- try {
82
- const voiceConfig = {};
83
- if (process.env.OPENAI_API_KEY)
84
- voiceConfig.openaiApiKey = process.env.OPENAI_API_KEY;
85
- if (process.env.OPENAI_BASE_URL)
86
- voiceConfig.openaiBaseUrl = process.env.OPENAI_BASE_URL;
87
- this.voice = new voice_1.VoiceProcessor(voiceConfig);
88
- this.voiceReply = config.voiceReply !== false; // default: reply with voice when user sends voice
89
- }
90
- catch { /* voice not available, silent fallback */ }
91
75
  }
92
76
  setStreamHandler(handler) {
93
77
  this.streamHandler = handler;
@@ -231,59 +215,6 @@ class TelegramChannel extends index_1.BaseChannel {
231
215
  }
232
216
  // Extract text from various message types
233
217
  const text = message.text || message.caption;
234
- // Handle voice messages — STT transcription
235
- if (!text && (message.voice || message.audio) && this.voice?.isSTTAvailable()) {
236
- try {
237
- const fileId = message.voice?.file_id || message.audio?.file_id;
238
- if (fileId) {
239
- // Get file path from Telegram
240
- const fileInfo = await this.apiCall('getFile', { file_id: fileId });
241
- const filePath = fileInfo?.result?.file_path;
242
- if (filePath) {
243
- const downloadUrl = `https://api.telegram.org/file/bot${this.token}/${filePath}`;
244
- const localPath = path.join('.opc/voice-tmp', `voice-${Date.now()}.ogg`);
245
- await this.voice.downloadFile(downloadUrl, localPath);
246
- // Transcribe
247
- const transcribedText = await this.voice.speechToText(localPath);
248
- if (transcribedText) {
249
- // Send transcription as a quiet indicator
250
- await this.apiCall('sendMessage', {
251
- chat_id: message.chat.id,
252
- text: `🎤 <i>${transcribedText}</i>`,
253
- parse_mode: 'HTML',
254
- reply_to_message_id: message.message_id,
255
- });
256
- // Process as normal text message, mark as voice for reply handling
257
- const voiceMsg = {
258
- id: `tg_${message.message_id}`,
259
- role: 'user',
260
- content: transcribedText,
261
- timestamp: message.date * 1000,
262
- metadata: {
263
- sessionId: this.getSessionId(message),
264
- chatId: message.chat.id,
265
- userId: message.from?.id,
266
- username: message.from?.username,
267
- firstName: message.from?.first_name,
268
- lastName: message.from?.last_name,
269
- platform: 'telegram',
270
- chatType: message.chat.type,
271
- messageThreadId: message.message_thread_id,
272
- replyToMessageId: message.message_id,
273
- isVoice: true,
274
- },
275
- };
276
- this.handler(voiceMsg);
277
- return;
278
- }
279
- }
280
- }
281
- }
282
- catch (err) {
283
- console.error('[Telegram] Voice STT failed:', err.message);
284
- // Fall through — if STT fails, ignore the voice message gracefully
285
- }
286
- }
287
218
  if (!text)
288
219
  return;
289
220
  // Group mention filtering
@@ -505,45 +436,6 @@ class TelegramChannel extends index_1.BaseChannel {
505
436
  async sendMessage(chatId, text) {
506
437
  await this.sendFormattedMessage(chatId, text);
507
438
  }
508
- /** Send a voice message (TTS) alongside or instead of text */
509
- async sendVoiceMessage(chatId, text, replyTo) {
510
- if (!this.voice || !this.voice.isTTSAvailable())
511
- return false;
512
- try {
513
- // Generate audio
514
- const audioPath = await this.voice.textToSpeech(text.substring(0, 500)); // TTS limit
515
- if (!audioPath)
516
- return false;
517
- // Send voice via Telegram multipart upload
518
- const audioData = (await Promise.resolve().then(() => __importStar(require('fs')))).readFileSync(audioPath);
519
- const boundary = '----OPCVoice' + Date.now();
520
- const parts = [];
521
- parts.push(Buffer.from(`--${boundary}\r\nContent-Disposition: form-data; name="chat_id"\r\n\r\n${chatId}\r\n`));
522
- if (replyTo) {
523
- parts.push(Buffer.from(`--${boundary}\r\nContent-Disposition: form-data; name="reply_to_message_id"\r\n\r\n${replyTo}\r\n`));
524
- }
525
- parts.push(Buffer.from(`--${boundary}\r\nContent-Disposition: form-data; name="voice"; filename="reply.ogg"\r\nContent-Type: audio/ogg\r\n\r\n`));
526
- parts.push(audioData);
527
- parts.push(Buffer.from(`\r\n--${boundary}--\r\n`));
528
- const body = Buffer.concat(parts);
529
- const url = `https://api.telegram.org/bot${this.token}/sendVoice`;
530
- const response = await fetch(url, {
531
- method: 'POST',
532
- headers: { 'Content-Type': `multipart/form-data; boundary=${boundary}` },
533
- body,
534
- });
535
- // Cleanup temp file
536
- try {
537
- (await Promise.resolve().then(() => __importStar(require('fs')))).unlinkSync(audioPath);
538
- }
539
- catch { /* ignore */ }
540
- return response.ok;
541
- }
542
- catch (err) {
543
- console.error('[Telegram] TTS reply failed:', err.message);
544
- return false;
545
- }
546
- }
547
439
  // ─── Reactions ──────────────────────────────────────────
548
440
  async setReaction(chatId, messageId, emoji) {
549
441
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"telegram.js","sourceRoot":"","sources":["../../src/channels/telegram.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"telegram.js","sourceRoot":"","sources":["../../src/channels/telegram.ts"],"names":[],"mappings":"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"}
@@ -1,76 +1,102 @@
1
- /**
2
- * Voice processing module — STT (Speech-to-Text) and TTS (Text-to-Speech)
3
- *
4
- * STT providers:
5
- * 1. Edge STT (free, via edge-stt or Whisper local)
6
- * 2. Volcano Engine / Doubao STT (best Chinese, ~¥0.01/req)
7
- * 3. OpenAI Whisper API ($0.006/min)
8
- * 4. Local Whisper (free, needs model download)
9
- *
10
- * TTS providers:
11
- * 1. edge-tts (free, Microsoft voices, excellent Chinese)
12
- * 2. Volcano Engine TTS (Doubao voices)
13
- * 3. OpenAI TTS ($0.015/1K chars)
14
- *
15
- * Default: Whisper API for STT + edge-tts for TTS (best quality/cost ratio)
16
- */
1
+ import { BaseChannel } from './index';
2
+ export interface STTProvider {
3
+ name: string;
4
+ transcribe(audio: Buffer, options?: STTOptions): Promise<string>;
5
+ }
6
+ export interface TTSProvider {
7
+ name: string;
8
+ synthesize(text: string, options?: TTSOptions): Promise<Buffer>;
9
+ }
10
+ export interface STTOptions {
11
+ language?: string;
12
+ model?: string;
13
+ }
14
+ export interface TTSOptions {
15
+ voice?: string;
16
+ speed?: number;
17
+ language?: string;
18
+ }
19
+ export interface VoiceChannelConfig {
20
+ sttProvider?: STTProvider;
21
+ ttsProvider?: TTSProvider;
22
+ sampleRate?: number;
23
+ language?: string;
24
+ }
17
25
  export interface VoiceConfig {
18
- sttProvider: 'whisper-api' | 'whisper-local' | 'volcano' | 'azure' | 'none';
19
- ttsProvider: 'edge-tts' | 'volcano' | 'openai-tts' | 'azure' | 'none';
20
- /** OpenAI API key for Whisper */
21
- openaiApiKey?: string;
22
- /** OpenAI base URL */
23
- openaiBaseUrl?: string;
24
- /** Volcano Engine credentials */
25
- volcanoAppId?: string;
26
- volcanoToken?: string;
27
- volcanoCluster?: string;
28
- /** Azure Speech credentials */
29
- azureSpeechKey?: string;
30
- azureSpeechRegion?: string;
31
- /** Whisper model for local inference */
32
- whisperModel?: string;
33
- /** TTS voice name */
34
- ttsVoice?: string;
35
- /** TTS language */
36
- ttsLang?: string;
37
- /** Temp directory for audio files */
38
- tempDir?: string;
39
- /** Ollama base URL for local Whisper */
40
- ollamaUrl?: string;
26
+ sttProvider: 'whisper' | 'web-speech' | 'deepgram';
27
+ ttsProvider: 'edge-tts' | 'openai-tts' | 'elevenlabs';
28
+ sttApiKey?: string;
29
+ ttsApiKey?: string;
30
+ voice?: string;
31
+ language?: string;
32
+ }
33
+ export declare class WhisperSTTProvider implements STTProvider {
34
+ name: string;
35
+ private apiKey;
36
+ constructor(apiKey: string);
37
+ transcribe(audio: Buffer, options?: STTOptions): Promise<string>;
38
+ }
39
+ export declare class DeepgramSTTProvider implements STTProvider {
40
+ name: string;
41
+ private apiKey;
42
+ constructor(apiKey: string);
43
+ transcribe(audio: Buffer, options?: STTOptions): Promise<string>;
44
+ }
45
+ export declare class EdgeTTSProvider implements TTSProvider {
46
+ name: string;
47
+ private defaultVoice;
48
+ constructor(voice?: string);
49
+ synthesize(text: string, options?: TTSOptions): Promise<Buffer>;
50
+ }
51
+ export declare class OpenAITTSProvider implements TTSProvider {
52
+ name: string;
53
+ private apiKey;
54
+ private defaultVoice;
55
+ constructor(apiKey: string, voice?: string);
56
+ synthesize(text: string, options?: TTSOptions): Promise<Buffer>;
57
+ }
58
+ export declare class ElevenLabsTTSProvider implements TTSProvider {
59
+ name: string;
60
+ private apiKey;
61
+ private defaultVoice;
62
+ constructor(apiKey: string, voice?: string);
63
+ synthesize(text: string, options?: TTSOptions): Promise<Buffer>;
41
64
  }
42
- export declare class VoiceProcessor {
65
+ export declare function createVoiceProviders(config: VoiceConfig): {
66
+ stt?: STTProvider;
67
+ tts?: TTSProvider;
68
+ };
69
+ export declare class VoiceChannel extends BaseChannel {
70
+ type: string;
43
71
  private config;
44
- constructor(config?: Partial<VoiceConfig>);
45
- /**
46
- * Convert speech audio to text (STT)
47
- * @param audioPath Path to audio file (.ogg, .mp3, .wav, .m4a)
48
- * @returns Transcribed text
49
- */
50
- speechToText(audioPath: string): Promise<string>;
51
- /**
52
- * Convert text to speech audio (TTS)
53
- * @param text Text to convert
54
- * @returns Path to generated audio file (.mp3)
55
- */
56
- textToSpeech(text: string): Promise<string>;
57
- /** Check if voice processing is available */
58
- isSTTAvailable(): boolean;
59
- isTTSAvailable(): boolean;
60
- private whisperApiSTT;
61
- private whisperLocalSTT;
62
- private volcanoSTT;
63
- private azureSTT;
64
- private edgeTTS;
65
- private openaiTTS;
66
- private volcanoTTS;
67
- private azureTTS;
68
- private checkEdgeTTS;
69
- private checkOllamaWhisper;
70
- /** Download a file from URL to local path */
71
- downloadFile(url: string, destPath: string): Promise<void>;
72
- /** Cleanup temp files */
73
- cleanup(): void;
72
+ private logger;
73
+ private running;
74
+ private conversationActive;
75
+ constructor(config?: VoiceChannelConfig);
76
+ start(): Promise<void>;
77
+ stop(): Promise<void>;
78
+ isRunning(): boolean;
79
+ /** Transcribe audio to text */
80
+ transcribe(audio: Buffer, format?: string): Promise<string>;
81
+ /** Synthesize text to audio */
82
+ synthesize(text: string, voice?: string): Promise<Buffer>;
83
+ /** Start real-time conversation mode */
84
+ startConversation(onMessage: (text: string) => Promise<string>): Promise<void>;
85
+ /** Process a single turn in conversation mode */
86
+ processConversationTurn(audio: Buffer, onMessage: (text: string) => Promise<string>): Promise<{
87
+ text: string;
88
+ response: string;
89
+ audioResponse?: Buffer;
90
+ }>;
91
+ stopConversation(): void;
92
+ isConversationActive(): boolean;
93
+ /** Process audio input: STT → Agent → TTS */
94
+ processAudio(audio: Buffer): Promise<{
95
+ text: string;
96
+ response: string;
97
+ audioResponse?: Buffer;
98
+ }>;
99
+ setSTTProvider(provider: STTProvider): void;
100
+ setTTSProvider(provider: TTSProvider): void;
74
101
  }
75
- export declare function createVoiceProcessor(config?: Partial<VoiceConfig>): VoiceProcessor;
76
102
  //# sourceMappingURL=voice.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"voice.d.ts","sourceRoot":"","sources":["../../src/channels/voice.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAQH,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,aAAa,GAAG,eAAe,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;IAC5E,WAAW,EAAE,UAAU,GAAG,SAAS,GAAG,YAAY,GAAG,OAAO,GAAG,MAAM,CAAC;IACtE,iCAAiC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,sBAAsB;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iCAAiC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+BAA+B;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,wCAAwC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qBAAqB;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mBAAmB;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qCAAqC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA2BD,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAc;gBAEhB,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC;IAWzC;;;;OAIG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAetD;;;;OAIG;IACG,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAejD,6CAA6C;IAC7C,cAAc,IAAI,OAAO;IAiBzB,cAAc,IAAI,OAAO;YAQX,aAAa;YA+Cb,eAAe;YAgBf,UAAU;YA8CV,QAAQ;YA6BR,OAAO;YAmBP,SAAS;YA2BT,UAAU;YAqCV,QAAQ;IA6BtB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,kBAAkB;IAS1B,6CAA6C;IACvC,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBhE,yBAAyB;IACzB,OAAO,IAAI,IAAI;CAehB;AAED,wBAAgB,oBAAoB,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,cAAc,CAElF"}
1
+ {"version":3,"file":"voice.d.ts","sourceRoot":"","sources":["../../src/channels/voice.ts"],"names":[],"mappings":"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"}