@mingxy/ocosay 1.0.19 → 1.0.21

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.
@@ -1,7 +1,3 @@
1
- /**
2
- * OpenCode TTS 工具定义
3
- * 用于 OpenCode Plugin 注册
4
- */
5
1
  /**
6
2
  * OpenCode TTS 工具定义
7
3
  * 用于 OpenCode Plugin 注册
@@ -1 +1 @@
1
- {"version":3,"file":"tts.d.ts","sourceRoot":"","sources":["../../src/tools/tts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH;;;GAGG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAyHpB,CAAA;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACzB,OAAO,CAAC,GAAG,CAAC,CA+Hd"}
1
+ {"version":3,"file":"tts.d.ts","sourceRoot":"","sources":["../../src/tools/tts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA4BH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAyHpB,CAAA;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACzB,OAAO,CAAC,GAAG,CAAC,CAsId"}
package/dist/tools/tts.js CHANGED
@@ -5,10 +5,20 @@
5
5
  import { speak, stop, pause, resume, listVoices, getDefaultSpeaker } from '../core/speaker';
6
6
  import { TTSError, TTSErrorCode } from '../core/types';
7
7
  import { isStreamEnabled, isAutoReadEnabled, getStreamStatus, getStreamReader, getStreamingSynthesizer, getStreamPlayer } from '../index';
8
- /**
9
- * OpenCode TTS 工具定义
10
- * 用于 OpenCode Plugin 注册
11
- */
8
+ function extractTextArg(args) {
9
+ if (!args || typeof args !== 'object') {
10
+ return undefined;
11
+ }
12
+ const argObj = args;
13
+ const text = argObj.text;
14
+ if (typeof text === 'string' && text.trim().length > 0) {
15
+ return text;
16
+ }
17
+ if (text !== undefined) {
18
+ console.warn('[tts] text arg is not a valid string, type:', typeof text, 'value:', String(text).substring(0, 100));
19
+ }
20
+ return undefined;
21
+ }
12
22
  export const ttsTools = [
13
23
  {
14
24
  name: 'tts_speak',
@@ -156,21 +166,24 @@ export async function handleToolCall(toolName, args) {
156
166
  case 'tts_resume':
157
167
  resume();
158
168
  return { success: true, message: 'Resumed' };
159
- case 'tts_list_voices':
169
+ case 'tts_list_voices': {
160
170
  const voices = await listVoices(args?.provider);
161
171
  return { success: true, voices };
162
- case 'tts_list_providers':
172
+ }
173
+ case 'tts_list_providers': {
163
174
  const speaker = getDefaultSpeaker();
164
175
  const providers = speaker.getProviders();
165
176
  return { success: true, providers };
166
- case 'tts_status':
177
+ }
178
+ case 'tts_status': {
167
179
  const s = getDefaultSpeaker();
168
180
  return {
169
181
  success: true,
170
182
  isPlaying: s.isPlaying(),
171
183
  isPaused: s.isPausedState()
172
184
  };
173
- case 'tts_stream_speak':
185
+ }
186
+ case 'tts_stream_speak': {
174
187
  if (!isAutoReadEnabled()) {
175
188
  throw new TTSError('Stream mode is not enabled. autoRead must be enabled in configuration to use tts_stream_speak.', TTSErrorCode.UNKNOWN, 'tts_stream');
176
189
  }
@@ -181,13 +194,16 @@ export async function handleToolCall(toolName, args) {
181
194
  const synthesizer = getStreamingSynthesizer();
182
195
  if (streamReader && synthesizer) {
183
196
  streamReader.start();
184
- if (args?.text) {
185
- synthesizer.synthesize(args.text);
197
+ const textArg = extractTextArg(args);
198
+ if (textArg && typeof textArg === 'string' && textArg.trim().length > 0) {
199
+ console.log('[tts_stream_speak] synthesizing text:', textArg.substring(0, 50) + '...');
200
+ synthesizer.synthesize(textArg);
186
201
  }
187
202
  return { success: true, message: 'Stream speak started' };
188
203
  }
189
204
  throw new TTSError('Stream components not available', TTSErrorCode.UNKNOWN, 'tts_stream');
190
- case 'tts_stream_stop':
205
+ }
206
+ case 'tts_stream_stop': {
191
207
  if (!isStreamEnabled()) {
192
208
  throw new TTSError('Stream mode is not enabled. Please enable autoRead in configuration.', TTSErrorCode.UNKNOWN, 'tts_stream');
193
209
  }
@@ -197,6 +213,7 @@ export async function handleToolCall(toolName, args) {
197
213
  return { success: true, message: 'Stream stopped' };
198
214
  }
199
215
  throw new TTSError('Stream player not available', TTSErrorCode.UNKNOWN, 'tts_stream');
216
+ }
200
217
  case 'tts_stream_status':
201
218
  if (!isStreamEnabled()) {
202
219
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"tts.js","sourceRoot":"","sources":["../../src/tools/tts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tts.js","sourceRoot":"","sources":["../../src/tools/tts.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mingxy/ocosay",
3
- "version": "1.0.19",
3
+ "version": "1.0.21",
4
4
  "description": "OpenCode TTS 播放插件 - 支持豆包模式边接收边朗读",
5
5
  "type": "module",
6
6
  "main": "dist/plugin.js",
@@ -42,6 +42,7 @@
42
42
  "dependencies": {
43
43
  "@opencode-ai/plugin": "^1.3.15",
44
44
  "axios": "^1.6.0",
45
+ "howler": "^2.2.4",
45
46
  "ws": "^8.14.0",
46
47
  "zod": "^4.3.6"
47
48
  },
@@ -49,6 +50,7 @@
49
50
  "naudiodon": "^2.3.1"
50
51
  },
51
52
  "devDependencies": {
53
+ "@types/howler": "^2.2.12",
52
54
  "@types/jest": "^29.5.14",
53
55
  "@types/node": "^20.0.0",
54
56
  "@types/ws": "^8.5.0",