@tencent-rtc/mcp 1.3.8 → 1.3.9

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 (54) hide show
  1. package/package.json +1 -1
  2. package/resource/doc/chatuikit/android/integration.md +499 -203
  3. package/resource/doc/chatuikit/android/workflow.md +713 -0
  4. package/resource/doc/chatuikit/flutter/integration.md +1 -1
  5. package/resource/doc/livekit/voice/android/voice-audience-list.md +334 -0
  6. package/resource/doc/livekit/voice/android/voice-audio-effect.md +380 -0
  7. package/resource/doc/livekit/voice/android/voice-barrage.md +565 -0
  8. package/resource/doc/livekit/voice/android/voice-co-guest-interaction.md +745 -0
  9. package/resource/doc/livekit/voice/android/voice-gift.md +822 -0
  10. package/resource/doc/livekit/voice/android/voice-host-interaction.md +703 -0
  11. package/resource/doc/livekit/voice/android/voice-integration.md +940 -0
  12. package/resource/doc/livekit/voice/android/voice-room-list.md +575 -0
  13. package/resource/doc/livekit/voice/flutter/voice-co-guest-interaction.md +675 -0
  14. package/resource/doc/livekit/voice/flutter/voice-integration.md +936 -0
  15. package/resource/doc/livekit/voice/ios/voice-audience-list.md +339 -0
  16. package/resource/doc/livekit/voice/ios/voice-audio-effect.md +370 -0
  17. package/resource/doc/livekit/voice/ios/voice-barrage.md +517 -0
  18. package/resource/doc/livekit/voice/ios/voice-co-guest-interaction.md +708 -0
  19. package/resource/doc/livekit/voice/ios/voice-gift.md +783 -0
  20. package/resource/doc/livekit/voice/ios/voice-host-interaction.md +770 -0
  21. package/resource/doc/livekit/voice/ios/voice-integration.md +898 -0
  22. package/resource/doc/livekit/voice/ios/voice-room-list.md +485 -0
  23. package/resource/doc/roomkit/vue/integration.md +179 -288
  24. package/resource/doc/roomkit/vue/workflow.md +499 -253
  25. package/resource/doc/tuicallkit/android/integration.md +539 -83
  26. package/resource/doc/tuicallkit/android/workflow.md +441 -0
  27. package/tools/common/present-scenario-choice.js +16 -0
  28. package/tools/common/present-scenario-choice.js.map +1 -0
  29. package/tools/definitions/get_native_call_uikit_integration_def.js +25 -9
  30. package/tools/definitions/get_native_call_uikit_integration_def.js.map +1 -1
  31. package/tools/definitions/get_native_chat_uikit_integration_def.js +36 -14
  32. package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
  33. package/tools/definitions/get_native_live_uikit_integration_def.js +55 -29
  34. package/tools/definitions/get_native_live_uikit_integration_def.js.map +1 -1
  35. package/tools/definitions/get_native_live_uikit_interaction_def.js +43 -54
  36. package/tools/definitions/get_native_live_uikit_interaction_def.js.map +1 -1
  37. package/tools/definitions/get_web_room_feature_detail_def.js +52 -55
  38. package/tools/definitions/get_web_room_feature_detail_def.js.map +1 -1
  39. package/tools/definitions/get_web_room_uikit_integration_def.js +41 -25
  40. package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
  41. package/tools/definitions/present_scenario_choice_def.js +53 -0
  42. package/tools/definitions/present_scenario_choice_def.js.map +1 -0
  43. package/tools/definitions/record_prompt_def.js +26 -21
  44. package/tools/definitions/record_prompt_def.js.map +1 -1
  45. package/tools/definitions/record_result_def.js +20 -4
  46. package/tools/definitions/record_result_def.js.map +1 -1
  47. package/tools/index.js +2 -0
  48. package/tools/index.js.map +1 -1
  49. package/tools/live/get-native-live-uikit-integration.js +110 -34
  50. package/tools/live/get-native-live-uikit-integration.js.map +1 -1
  51. package/tools/live/get_native_live_uikit_interaction.js +128 -35
  52. package/tools/live/get_native_live_uikit_interaction.js.map +1 -1
  53. package/utils/report-cls-client.js +1 -1
  54. package/utils/report-es-client.js +1 -1
@@ -1,45 +1,71 @@
1
1
  const TOOL_DESCRIPTION = `
2
- [CORE PURPOSE]:
3
- A professional Native live streaming AtomicXCore integration assistant, designed to provide Agent workflow instructions and aggregated documentation for implementing live streaming features on Native platforms (Android/iOS/Flutter/RN).
2
+ [TOOL DEFINITION]:
3
+ Mobile **Video Live / Voice Chat Room** basic feature integrator. Designed to provide Agent with workflow instructions and real-time aggregated documentation for implementing basic broadcasting/viewing/list features on Android/iOS/Flutter/uni-app platforms.
4
4
 
5
- [KEYWORDS]: 'AtomicXCore', 'LiveKit', 'Live Streaming', 'Broadcasting', 'Viewing', 'Live List', 'Android', 'iOS', 'Flutter', 'React Native', 'LiveCoreView'.
5
+ [KEYWORDS]: 'AtomicXCore', 'LiveKit', 'Video Live', 'Voice Chat Room', 'Broadcasting', 'Viewing', 'Room List'.
6
6
 
7
7
  [WORKFLOW GUIDANCE]:
8
- Agents should use the 'llm_code_generation_instructions_md' field returned by this tool, which includes:
9
- 1. Core workflow instructions (from workflow.md, including call to get_usersig tool for test credential generation).
10
- 2. Official documentation content corresponding to the user's required features (Goals).
8
+ When handling user requirements, Agent should use the 'llm_code_generation_instructions_md' field returned by this tool. This field contains:
9
+ 1. Core workflow instructions (from workflow.md, including closed-loop flow for calling get_usersig tool to auto-generate test credentials and inject into code).
10
+ 2. Latest, real-time fetched official documentation content corresponding to user's required features (Goals).
11
11
 
12
- LLM MUST prioritize and exclusively use the documentation content returned by this tool for code generation.
12
+ LLM MUST prioritize and exclusively use the real-time documentation content returned by this tool for code generation, avoiding direct access to external URLs.
13
13
 
14
14
  [FUNCTIONAL SCOPE]:
15
- Designed for building Native live streaming products, including:
15
+ Designed for building Native live streaming/voice chat room products, including:
16
16
  1. **Authentication**: SDK initialization and LoginStore login/authentication.
17
- 2. **Host Broadcasting**: Host creates a room and starts broadcasting.
18
- 3. **Audience Viewing**: Audience joins a room and watches the live stream.
19
- 4. **Live List**: Retrieve live room list, display room info, and navigate to rooms.
17
+ 2. **Host/Room Owner Broadcasting**: Create room and start streaming.
18
+ 3. **Audience/Listener Viewing**: Join room and start playback.
19
+ 4. **Room List**: Fetch room list, display room info, click to navigate.
20
20
 
21
- [SUPPORTED PLATFORMS]: Android, iOS, Flutter, React Native (returns corresponding documentation based on the 'platform' parameter).
21
+ [SUPPORTED SCENARIOS & PLATFORMS]:
22
+ - **Video Live (live) / Voice Chat Room (voice)**: Android, iOS, Flutter, uni-app
22
23
 
23
- [CONSTRAINTS]:
24
- 1. **Platform Selection Constraint**: If the platform (Android/iOS/Flutter/React Native) is not specified, you MUST call the 'present_framework_choice' tool first.
24
+ [TYPICAL USE CASES (Few-Shot Examples)]:
25
+ LLM should learn the following mapping between user instructions and parameters:
25
26
 
26
- [TYPICAL SCENARIOS]:
27
- 1. "Use AtomicXCore to implement host broadcasting on Android" -> call tool, platform='android', goals=['host_streaming']
28
- 2. "Use AtomicXCore to implement audience viewing on iOS" -> call tool, platform='ios', goals=['audience_streaming']
29
- 3. "Use AtomicXCore to implement a room list on Flutter" -> call tool, platform='flutter', goals=['live_list']
30
- 4. "Implement host broadcasting, room list, and audience viewing on Android" -> call tool, platform='android', goals=['host_streaming', 'live_list', 'audience_streaming']
31
- 5. "Implement live streaming features" (no platform specified) -> Call 'present_framework_choice' first.
27
+ 1. **Explicit Scenario & Platform**:
28
+ - User: "Use AtomicXCore to implement video live host broadcasting on Android"
29
+ - Call: scenario='live', platform='android', goals=['host_streaming']
30
+
31
+ - User: "Use AtomicXCore to implement voice chat room audience viewing on iOS"
32
+ - Call: scenario='voice', platform='ios', goals=['audience_streaming']
33
+
34
+ - User: "Use AtomicXCore to implement video live list on Flutter"
35
+ - Call: scenario='live', platform='flutter', goals=['live_list']
36
+
37
+ - User: "Use AtomicXCore to implement voice chat room features on uni-app"
38
+ - Call: scenario='voice', platform='uni-app', goals=['host_streaming', 'audience_streaming', 'live_list']
39
+
40
+ 2. **Multi-Feature Combination**:
41
+ - User: "Implement complete video live features on Android (broadcasting + viewing + list)"
42
+ - Call: scenario='live', platform='android', goals=['host_streaming', 'audience_streaming', 'live_list']
43
+
44
+ 3. **Exception Interception (Missing Platform)**:
45
+ - User: "Use AtomicXCore to implement live streaming features"
46
+ - Action: ❌ No guessing allowed, **MUST call 'present_framework_choice' first** to let user select platform.
47
+
48
+ 4. **Exception Interception (Missing Scenario)**:
49
+ - User: "Use AtomicXCore to implement host broadcasting", "Implement room list features"
50
+ - Action: ❌ No guessing allowed, **MUST call 'present_scenario_choice' first** to let user select scenario (Video Live / Voice Chat Room).
51
+
52
+ [WORKFLOW MECHANISM]:
53
+ This tool returns 'llm_code_generation_instructions_md'. You MUST strictly write code based on the returned Context and check API links at the bottom of documentation to confirm field names (guessing is prohibited).
32
54
  `;
33
55
  const PARAMETER_DESCRIPTIONS = {
34
- platform: `[REQUIRED] Target platform: 'android', 'ios', 'flutter', 'rn'.
35
- - MUST prompt the user to choose if not specified.
36
- - The tool returns documentation and code examples based on this parameter.`,
37
- goals: `List of features to implement: ['host_streaming', 'audience_streaming', 'live_list'].
38
- - 'host_streaming': Host broadcasting (auth, create room, start push).
39
- - 'audience_streaming': Audience viewing (auth, join room, start play).
40
- - 'live_list': Live room list (fetch list, display info, navigation).
41
-
42
- 💡 Can be combined, e.g., ['host_streaming', 'live_list', 'audience_streaming'] for a complete scenario.`
56
+ scenario: `[REQUIRED] Scenario type.
57
+ - 'live': Video Live (keywords: live streaming, show live, video, e-commerce live).
58
+ - 'voice': Voice Chat Room (keywords: voice chat, voice room, radio, audio room).
59
+ *Strategy: If user does not specify explicitly, **default values are strictly prohibited**, MUST call 'present_scenario_choice' first.`,
60
+ platform: `[REQUIRED] Development platform.
61
+ - Video Live (live) supports: 'android', 'ios', 'flutter', 'uni-app'
62
+ - Voice Chat Room (voice) supports: 'android', 'ios', 'flutter', 'uni-app'
63
+ *Strategy: If user does not specify explicitly, **default values are strictly prohibited**, MUST call 'present_framework_choice' first.`,
64
+ goals: `[REQUIRED] Feature module list (Array):
65
+ - 'host_streaming': Host/Room owner broadcasting (includes authentication, create room, start streaming).
66
+ - 'audience_streaming': Audience/Listener viewing (includes authentication, join room, start playback).
67
+ - 'live_list': Room list feature (fetch room list, display room info, click to navigate).
68
+ *Strategy: Multiple selections allowed, e.g., ['host_streaming', 'audience_streaming', 'live_list'] for complete scenario.`
43
69
  };
44
70
  export const GET_NATIVE_LIVE_UIKIT_INTEGRATION_DEFINITION = {
45
71
  name: 'get_native_live_uikit_integration',
@@ -1 +1 @@
1
- {"version":3,"file":"get_native_live_uikit_integration_def.js","sourceRoot":"","sources":["../../../src/tools/definitions/get_native_live_uikit_integration_def.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BxB,CAAC;AAEF,MAAM,sBAAsB,GAAG;IAC7B,QAAQ,EAAE;;8EAEkE;IAC5E,KAAK,EAAE;;;;;2GAKkG;CAC1G,CAAC;AAEF,MAAM,CAAC,MAAM,4CAA4C,GAAG;IAC1D,IAAI,EAAE,mCAAmC;IACzC,WAAW,EAAE,gBAAgB;IAC7B,sBAAsB,EAAE,sBAAsB;CAC/C,CAAC"}
1
+ {"version":3,"file":"get_native_live_uikit_integration_def.js","sourceRoot":"","sources":["../../../src/tools/definitions/get_native_live_uikit_integration_def.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqDxB,CAAC;AAEF,MAAM,sBAAsB,GAAG;IAC7B,QAAQ,EAAE;;;yIAG6H;IAEvI,QAAQ,EAAE;;;0IAG8H;IAExI,KAAK,EAAE;;;;6HAIoH;CAC5H,CAAC;AAEF,MAAM,CAAC,MAAM,4CAA4C,GAAG;IAC1D,IAAI,EAAE,mCAAmC;IACzC,WAAW,EAAE,gBAAgB;IAC7B,sBAAsB,EAAE,sBAAsB;CAC/C,CAAC"}
@@ -1,70 +1,59 @@
1
1
  const TOOL_DESCRIPTION = `
2
- [CORE PURPOSE]:
3
- A professional Native live streaming interaction integration assistant, designed to help implement interactive features on Android/iOS/Flutter/React Native platforms, including: Co-guesting (audience applying for seat), Co-hosting (cross-room connection), Host PK, and Audience List management.
2
+ [TOOL DEFINITION]:
3
+ Mobile **Video Live / Voice Chat Room** advanced interaction feature integrator. Designed for adding co-guesting, PK, audience management and other interactive features on top of Android/iOS/Flutter/uni-app projects that already have basic streaming capabilities.
4
4
 
5
- [KEYWORDS]: 'AtomicXCore', 'LiveKit', 'Co-guesting', 'Apply for Seat', 'Voice Chat Room Seat', 'Co-hosting', 'Host PK', 'Audience List', 'CoGuestStore', 'CoHostStore', 'BattleStore', 'LiveAudienceStore', 'Android', 'iOS', 'Flutter', 'React Native'.
5
+ [⚠️ CRITICAL DEPENDENCY CHAIN]:
6
+ 1. **Non-Empty Project Principle**: Strictly prohibited to run directly in an empty project!
7
+ - Must confirm project already includes basic features (i.e., 'get_native_live_uikit_integration' has been successfully executed).
8
+ - If not included, **MUST call 'get_native_live_uikit_integration' first** to build the foundation.
9
+ 2. **Credential Closure**: After code generation, must automatically execute 'get_usersig' to generate test credentials.
6
10
 
7
- [WORKFLOW GUIDANCE]:
8
- Agents should use the 'llm_code_generation_instructions_md' field returned by this tool, which includes:
9
- 1. Core workflow instructions (from workflow.md, including call to get_usersig tool for test credential generation).
10
- 2. Official documentation content corresponding to the user's required features (Goals).
11
+ [TYPICAL USE CASES (Few-Shot Examples)]:
12
+ LLM should learn the following mapping between user instructions and parameters:
11
13
 
12
- LLM MUST prioritize and exclusively use the documentation content returned by this tool for code generation.
14
+ 1. **Explicit Scenario & Platform**:
15
+ - User: "Use AtomicXCore to implement video live co-guesting on Android"
16
+ - Call: scenario='live', platform='android', goals=['co_guest_interaction']
13
17
 
14
- [⚠️ CRITICAL PREREQUISITES]:
15
- **Interaction features depend on basic live streaming features**:
16
- - Co-guesting, Host PK, and Audience List management MUST be implemented on top of a project that already has Host Broadcasting and Audience Viewing.
17
- - If the user requests interaction features in an empty project, the Agent MUST:
18
- 1. Call 'get_native_live_uikit_integration' first to implement basic live streaming (Host Broadcasting + Audience Viewing).
19
- 2. Then call this tool to implement interaction features.
20
- 3. Ensure the code includes role selection logic (Host/Audience) for testing.
18
+ - User: "Use AtomicXCore to implement video live host cross-room connection and PK on iOS"
19
+ - Call: scenario='live', platform='ios', goals=['co_host_interaction']
21
20
 
22
- [FUNCTIONAL SCOPE]:
23
- Designed for Native live streaming interaction scenarios:
21
+ - User: "Use AtomicXCore to implement voice chat room host cross-room connection and PK on iOS"
22
+ - Call: scenario='voice', platform='ios', goals=['co_host_interaction']
24
23
 
25
- 1. **Co-guesting Management** (co_guest_interaction):
26
- - Audience applying for seat (referred to as "Apply for Seat" in voice chat, "Co-guesting" in live streaming).
27
- - Host inviting audience to seat.
28
- - Audience side: Apply, receive invitation, respond, leave seat, cancel application.
29
- - Host side: Receive application, display application list, handle application, invite, listen for response.
24
+ - User: "Use AtomicXCore to implement voice chat room audience list management on Flutter"
25
+ - Call: scenario='voice', platform='flutter', goals=['audience_list']
30
26
 
31
- 2. **Co-hosting & PK** (co_host_interaction):
32
- - Co-hosting (CoHostStore): Cross-room connection between hosts.
33
- - Host PK (BattleStore): Competitive interaction between hosts.
34
- - Inviter: Send invitation, listen for result, start PK, listen for PK state.
35
- - Invitee: Receive invitation, respond, receive PK challenge, respond.
36
- - UI Customization: Nickname display, PK score progress bar, PK state display.
27
+ - User: "Use AtomicXCore to implement voice chat room seat features on uni-app"
28
+ - Call: scenario='voice', platform='uni-app', goals=['co_guest_interaction']
37
29
 
38
- 3. **Audience List Management** (audience_list):
39
- - Real-time audience list display.
40
- - Audience count statistics.
41
- - Audience events (Join/Leave).
42
- - Administrator management (Set/Revoke admin).
43
- - Room management (Kick out).
44
- - Advanced: Welcome messages in barrage area.
30
+ 2. **Multi-Feature Combination**:
31
+ - User: "Implement both co-guesting and audience list in Android live room"
32
+ - Call: scenario='live', platform='android', goals=['co_guest_interaction', 'audience_list']
45
33
 
46
- [SUPPORTED PLATFORMS]: Android, iOS, Flutter, React Native (returns documentation based on 'platform' parameter).
34
+ 3. **Exception Interception (Missing Platform)**:
35
+ - User: "Use AtomicXCore to implement voice chat room interaction features"
36
+ - Action: ❌ No guessing allowed, **MUST call 'present_framework_choice' first** to let user select platform.
47
37
 
48
- [CONSTRAINTS]:
49
- 1. **Platform Selection Constraint**: If the platform is not specified, you MUST call 'present_framework_choice' first.
50
- 2. **MUST Check API Docs for Field Names**:
51
- - When using data models (LiveUserInfo, SeatUserInfo, BattleUser), you MUST visit the API documentation links provided to confirm field names.
52
- - DO NOT guess field names (e.g., use 'userName' instead of guessing 'name').
53
- 3. **Result Recording Constraint**: Call 'record_result' after successful integration.
38
+ 4. **Exception Interception (Missing Scenario)**:
39
+ - User: "Use AtomicXCore to implement host connection and PK features", "Implement host broadcasting features"
40
+ - Action: ❌ No guessing allowed, **MUST call 'present_scenario_choice' first** to let user select scenario (Video Live / Voice Chat Room).
41
+
42
+ [WORKFLOW MECHANISM]:
43
+ This tool returns 'llm_code_generation_instructions_md'. You MUST strictly write code based on the returned Context and check API links at the bottom of documentation to confirm field names (guessing is prohibited).
54
44
  `;
55
45
  const PARAMETER_DESCRIPTIONS = {
56
- platform: `[REQUIRED] Target platform: 'android', 'ios', 'flutter', 'rn'.
57
- - MUST prompt the user to choose if not specified.
58
- - The tool returns documentation and code examples based on this parameter.`,
59
- goals: `List of interaction features: ['co_guest_interaction', 'co_host_interaction', 'audience_list'].
60
- - 'co_guest_interaction': Co-guesting management (Apply for seat, invite, etc.).
61
- * APIs: CoGuestStore.applyForSeat(), inviteToSeat(), acceptApplication(), disconnect().
62
- - 'co_host_interaction': Co-hosting & PK.
63
- * APIs: CoHostStore.requestHostConnection(), BattleStore.requestBattle().
64
- - 'audience_list': Audience list management.
65
- * APIs: LiveAudienceStore.fetchAudienceList(), kickUserOutOfRoom(), setAdministrator().
66
-
67
- 💡 Can be combined, e.g., ['co_guest_interaction', 'co_host_interaction', 'audience_list'] for complete interaction.`
46
+ scenario: `[REQUIRED] Scenario type.
47
+ - 'live': Video Live (keywords: live streaming, show live, video, e-commerce live).
48
+ - 'voice': Voice Chat Room (keywords: voice chat, voice room, radio, audio room).
49
+ *Strategy: If user does not specify explicitly, **default values are strictly prohibited**, MUST call 'present_scenario_choice' first.`,
50
+ platform: `[REQUIRED] Development platform (android/ios/flutter/uni-app).
51
+ *Strategy: If user does not specify explicitly, **default values are strictly prohibited**, MUST call 'present_framework_choice' first.`,
52
+ goals: `[REQUIRED] Feature module list (Array):
53
+ - 'co_guest_interaction': Co-guesting/Seat management (includes apply, invite, leave seat).
54
+ - 'co_host_interaction': Host/Room owner cross-room connection, PK battle (⚠️ Flutter/uni-app not supported in Voice scenario).
55
+ - 'audience_list': Member list, count statistics, administrator permissions.
56
+ *Strategy: Multiple selections allowed, e.g., ['co_guest_interaction', 'audience_list'].`
68
57
  };
69
58
  export const GET_NATIVE_LIVE_UIKIT_INTERACTION_DEFINITION = {
70
59
  name: 'get_native_live_uikit_interaction',
@@ -1 +1 @@
1
- {"version":3,"file":"get_native_live_uikit_interaction_def.js","sourceRoot":"","sources":["../../../src/tools/definitions/get_native_live_uikit_interaction_def.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqDxB,CAAC;AAEF,MAAM,sBAAsB,GAAG;IAC7B,QAAQ,EAAE;;8EAEkE;IAC5E,KAAK,EAAE;;;;;;;;uHAQ8G;CACtH,CAAC;AAEF,MAAM,CAAC,MAAM,4CAA4C,GAAG;IAC1D,IAAI,EAAE,mCAAmC;IACzC,WAAW,EAAE,gBAAgB;IAC7B,sBAAsB,EAAE,sBAAsB;CAC/C,CAAC"}
1
+ {"version":3,"file":"get_native_live_uikit_interaction_def.js","sourceRoot":"","sources":["../../../src/tools/definitions/get_native_live_uikit_interaction_def.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2CxB,CAAC;AAEF,MAAM,sBAAsB,GAAG;IAC7B,QAAQ,EAAE;;;yIAG6H;IAEvI,QAAQ,EAAE;0IAC8H;IAExI,KAAK,EAAE;;;;2FAIkF;CAC1F,CAAC;AAEF,MAAM,CAAC,MAAM,4CAA4C,GAAG;IAC1D,IAAI,EAAE,mCAAmC;IACzC,WAAW,EAAE,gBAAgB;IAC7B,sBAAsB,EAAE,sBAAsB;CAC/C,CAAC"}
@@ -1,90 +1,87 @@
1
1
  const TOOL_DESCRIPTION = `
2
- [Core Purpose]: This is a **highest-priority** Web RoomKit atomized feature query tool, specifically designed to help developers use TUIRoomKit (Atomicx version) atomized components and APIs to customize and implement meeting features. This tool provides complete feature implementation guides, code examples, and best practices, supporting developers to flexibly build personalized meeting applications based on Atomicx atomized components.
2
+ 【Core Purpose】: This is a Web RoomKit **custom UI development** tool, specifically designed to help developers use TUIRoomKit (Atomicx version) atomic components and APIs to **implement conference interfaces themselves**. This tool provides complete feature implementation guides, code examples, and best practices.
3
3
 
4
- **Important Note**: RoomKit State API (including useRoomState, useDeviceState, useRoomParticipantState, etc.) **fully supports H5 mobile devices**, runs normally in mobile browsers, and enables complete audio/video meeting functionality.
4
+ ⚠️⚠️⚠️ **Important: This tool is not the first choice** ⚠️⚠️⚠️
5
+ - If users only say "develop conference app", "H5 conference", "PC conference", etc., **please prioritize using the 'get_web_room_uikit_integration' tool**
6
+ - **Only call this tool when users explicitly express the following intentions**:
7
+ - Explicitly say "custom UI", "implement interface myself", "don't use pre-built components"
8
+ - Explicitly say "deep customization", "custom business process"
9
+ - Need to integrate **individual feature modules** (such as screen sharing, beauty) into **existing applications**
10
+ - Ask about specific API usage (such as useRoomState, useDeviceState)
5
11
 
6
- [Applicable Scenarios]:
7
- - **H5 Audio/Video Meeting Application Development**: Develop mobile H5 audio/video meeting applications, supporting mobile browsers such as WeChat Browser, Safari, Chrome, etc.
8
- - **PC Web Audio/Video Meeting Application Development**: Develop desktop Web audio/video meeting applications, supporting modern browsers such as Chrome, Edge, Safari, etc.
9
- - **Custom Meeting Interface**: Users want to implement meeting features themselves based on RoomKit atomized capabilities, rather than directly using the complete TUIRoomKit preset pages
10
- - **Modular Feature Integration**: Only need to integrate a specific feature module (such as screen sharing, beauty filters, chat, etc.) into existing applications
11
- - **Deep Customization Requirements**: Need to customize UI, business processes, interaction logic, breaking through the limitations of preset components
12
- - **Technical Implementation Consultation**: Learn how to use Atomicx atomized APIs (such as useRoomState, useDeviceState) to implement specific features
12
+ 【Applicable Scenarios - Custom Requirements Only】:
13
+ - **Custom Conference Interface**: Users **explicitly indicate** they want to implement conference functionality based on RoomKit atomic capabilities themselves, rather than directly using complete TUIRoomKit pre-built pages
14
+ - **Feature Modular Integration**: Only need to integrate specific feature modules (such as screen sharing, beauty, chat, etc.) into **existing applications**
15
+ - **Deep Customization Requirements**: Users **explicitly say** they need custom UI, business processes, interaction logic, breaking through pre-built component limitations
16
+ - **API Usage Consultation**: Understanding how to use Atomicx atomic APIs (such as useRoomState, useDeviceState) to implement specific functions
13
17
 
14
- [Feature Scope]: This tool covers all atomized feature capabilities of Web Room TUIKit (Atomicx version), including:
18
+ 【Feature Scope】: This tool covers all atomic functional capabilities of Web Room TUIKit (Atomicx version), including:
15
19
 
16
20
  **📋 Core Feature Modules:**
17
- 1. **Device Detection & Management** (device-detection, device-state): Testing, switching, and state management of cameras, microphones, speakers, and network quality monitoring
21
+ 1. **Device Detection and Management** (device-detection, device-state): Camera, microphone, speaker testing, switching and state management, network quality monitoring
18
22
  2. **Room Lifecycle Management** (room-state): Create room, join room, leave room, destroy room, room information updates, exception handling
19
- 3. **Member Management** (room-participant-state): Member list display, permission control, set administrator, media device management, mute all/disable all videos, kick out
20
- 4. **Video Layout Rendering** (room-view): Grid layout, sidebar layout, top bar layout, video widget UI customization, speaker mode
21
- 5. **In-Meeting Chat** (room-chat): Message sending/receiving, emoji/image/file, read receipts, mute management, unread count
23
+ 3. **Member Management** (room-participant-state): Member list display, permission control, set administrator, media device management, mute all/disable video for all, kick out
24
+ 4. **Video Layout Rendering** (room-view): Grid layout, sidebar layout, top bar layout, video widget UI customization, presenter mode
25
+ 5. **In-Meeting Chat** (room-chat): Message sending and receiving, emoji image files, read receipts, mute management, unread count
22
26
  6. **Screen Sharing** (screen-share): Start/stop screen sharing, system audio sharing, permission control, automatic layout switching, error handling
23
- 7. **Schedule Room** (schedule-room): Create scheduled meeting, get scheduled list, modify/cancel schedule, meeting password handling, event listening
24
- 8. **In-Meeting Call** (call-user-to-room): Initiate meeting invitation, accept/reject invitation, cancel invitation, timeout handling, multi-device sync
25
- 9. **Basic Beauty Filters** (free-beauty-panel): Skin smoothing, whitening, rosy adjustment, real-time preview, remote effect
27
+ 7. **Scheduled Rooms** (schedule-room): Create scheduled meetings, get scheduled list, modify/cancel scheduled meetings, meeting password handling, event listening
28
+ 8. **In-Meeting Calls** (call-user-to-room): Initiate meeting invitations, accept/reject invitations, cancel invitations, timeout handling, multi-device synchronization
29
+ 9. **Basic Beauty** (free-beauty-panel): Skin smoothing, whitening, rosy parameter adjustment, real-time preview, remote effects
26
30
  10. **Virtual Background** (virtual-background): Background blur, custom background images, real-time preview, browser compatibility detection
27
31
 
28
- [Keywords]: 'H5 meeting', 'mobile meeting', 'H5 audio/video', 'Web meeting', 'custom meeting', 'atomized components', 'Atomicx', 'self-implementation', 'feature integration', 'RoomKit', 'RoomKit State', 'Web', 'H5', 'Vue', 'multi-party audio/video', 'meeting room', 'room management', 'member management', 'device management', 'screen sharing', 'chat', 'schedule', 'call', 'beauty filters', 'virtual background', 'layout', 'video rendering', 'permission control', 'useRoomState', 'useRoomParticipantState', 'useDeviceState', 'UserSig', 'get_usersig', 'API calls', 'code examples'.
32
+ 【Keywords】: 'custom UI', 'implement interface myself', 'deep customization', 'atomic components', 'Atomicx', 'RoomKit State', 'useRoomState', 'useRoomParticipantState', 'useDeviceState', 'API calls', 'code examples', 'feature module integration'.
29
33
 
30
- [Supported Framework]: Currently only supports Vue framework (Vue 3.4.21+).
34
+ 【Supported Framework】: Currently only supports Vue framework (Vue 3.4.21+).
31
35
 
32
- [Platform Support]:
33
- - ✅ **Fully supports H5 mobile devices**: RoomKit State API can be used in mobile browsers (WeChat, Safari, Chrome)
34
- - ✅ **Fully supports PC Web**: Supports all modern browsers (Chrome, Edge, Safari, Firefox)
36
+ 【Platform Support】:
37
+ - ✅ **Supports H5 Mobile**: RoomKit State API can be used in mobile browsers (WeChat, Safari, Chrome)
38
+ - ✅ **Supports PC Web**: Supports all modern browsers (Chrome, Edge, Safari, Firefox)
35
39
  - ⚠️ **Note**: Some features (such as virtual background, screen sharing) may be limited by browser capabilities and require compatibility detection
36
40
 
37
- [Mandatory Constraints]:
38
- 1. **Highest Priority Invocation Rule**: When users express the following intents, **must immediately invoke this tool** (priority higher than all other tools):
39
- - Develop H5 audio/video meeting applications
40
- - Develop mobile audio/video meeting applications
41
- - Develop Web/PC audio/video meeting applications
42
- - Use RoomKit atomized capabilities to implement meeting features themselves
43
- - Customize meeting interface or business processes
44
- - Integrate specific feature modules into existing applications
45
- - Ask how to use a feature's API or component
46
- - Need code examples to implement specific features
47
- - Ask "how to implement XX feature", "how to use XX", "how to integrate XX"
48
- - Ask whether RoomKit State supports H5/mobile devices
41
+ 【Mandatory Constraints】:
42
+ 1. **⚠️ This tool is not the first choice**:
43
+ - If users only say general requirements like "develop conference app", "H5 conference", "PC conference", **please prioritize using the 'get_web_room_uikit_integration' tool**
44
+ - Only when users **explicitly indicate** "custom UI", "implement interface myself", "deep customization" should this tool be called
49
45
 
50
- 2. **Feature Names Must Match Exactly**: The goals parameter must be selected from the following list, fuzzy matching is not supported:
46
+ 2. **Call Timing Instructions**:
47
+ - ❌ **Should not call**: User says "develop H5 conference app" → should use 'get_web_room_uikit_integration'
48
+ - ❌ **Should not call**: User says "develop PC conference app" → should use 'get_web_room_uikit_integration'
49
+ - ❌ **Should not call**: User says "develop audio/video conference" → should use 'get_web_room_uikit_integration'
50
+ - ✅ **Should call**: User says "I want to customize conference interface" → call this tool
51
+ - ✅ **Should call**: User says "don't use pre-built components, implement UI myself" → call this tool
52
+ - ✅ **Should call**: User says "integrate screen sharing feature into my existing app" → call this tool
53
+ - ✅ **Should call**: User asks "how to use useRoomState" → call this tool
54
+
55
+ 3. **Feature names must match exactly**: goals parameter must be selected from the following list, fuzzy matching is not supported:
51
56
  - 'device-detection': Device detection (pre-room testing)
52
- - 'device-state': Device state management (in room)
57
+ - 'device-state': Device state management (in-room)
53
58
  - 'room-state': Room lifecycle management
54
59
  - 'room-participant-state': Member management
55
60
  - 'room-view': Video layout rendering
56
61
  - 'room-chat': In-meeting chat
57
62
  - 'screen-share': Screen sharing
58
- - 'schedule-room': Schedule room
59
- - 'call-user-to-room': In-meeting call
60
- - 'free-beauty-panel': Basic beauty filters
63
+ - 'schedule-room': Scheduled rooms
64
+ - 'call-user-to-room': In-meeting calls
65
+ - 'free-beauty-panel': Basic beauty
61
66
  - 'virtual-background': Virtual background
62
67
 
63
- 3. **Invocation Timing Description**:
64
- - ✅ **Must invoke**: User wants to develop H5/mobile audio/video meeting applications
65
- - ✅ **Must invoke**: User wants to develop Web/PC audio/video meeting applications
66
- - ✅ **Must invoke**: User wants to implement meeting features themselves, ask about API usage, need code examples, integrate specific feature modules
67
- - ✅ **Must invoke**: User mentions specific feature names (such as "screen sharing", "beauty filters", "scheduled meeting", "device management")
68
- - ✅ **Must invoke**: User asks whether RoomKit State supports H5 or mobile devices
69
- - ❌ **No need to invoke**: Pure theoretical concept consultation, product selection suggestions, discussions not involving specific implementation
70
-
71
- **Important Note**: Detailed descriptions and code examples for login authentication are included in the workflow document (workflow.md), and the Agent will automatically include complete login guidance when returning results.
68
+ **Important Note**: Detailed login authentication instructions and code examples are included in the workflow documentation (workflow.md), and Agent will automatically include complete login guidance when returning results.
72
69
  `;
73
70
  const PARAMETER_DESCRIPTIONS = {
74
71
  framework: 'Framework type supported by Web Room TUIKit, currently only supports vue (Vue 3.4.21+)',
75
- goals: `List of features requested by the user to implement, for example ['device-detection', 'room-state', 'screen-share']. The tool will concurrently fetch corresponding dedicated documentation content based on this list.
72
+ goals: `List of features requested by the user to implement, for example ['device-detection', 'room-state', 'screen-share']. The tool will concurrently retrieve corresponding dedicated documentation content based on this list.
76
73
 
77
74
  Available values:
78
75
  - 'device-detection': Device detection (pre-room testing of camera, microphone, speaker)
79
- - 'device-state': Device state management (in-room device control, switching, state listening)
76
+ - 'device-state': Device state management (device control, switching, state monitoring within room)
80
77
  - 'room-state': Room lifecycle management (create, join, leave, destroy room)
81
78
  - 'room-participant-state': Member management (member list, permission control, mute/disable video, kick out)
82
- - 'room-view': Video layout rendering (grid layout, sidebar layout, video widget)
83
- - 'room-chat': In-meeting chat (message sending/receiving, emoji/file, read receipts)
79
+ - 'room-view': Video layout rendering (grid layout, sidebar layout, video widgets)
80
+ - 'room-chat': In-meeting chat (message sending/receiving, emoji files, read receipts)
84
81
  - 'screen-share': Screen sharing (start/stop sharing, system audio, permission control)
85
- - 'schedule-room': Schedule room (create schedule, get list, modify/cancel schedule)
86
- - 'call-user-to-room': In-meeting call (initiate invitation, accept/reject, cancel invitation)
87
- - 'free-beauty-panel': Basic beauty filters (skin smoothing, whitening, rosy adjustment)
82
+ - 'schedule-room': Scheduled rooms (create scheduled meetings, get list, modify/cancel scheduled meetings)
83
+ - 'call-user-to-room': In-meeting calls (initiate invitations, accept/reject, cancel invitations)
84
+ - 'free-beauty-panel': Basic beauty (skin smoothing, whitening, rosy parameter adjustment)
88
85
  - 'virtual-background': Virtual background (background blur, custom images, compatibility detection)`
89
86
  };
90
87
  export const GET_WEB_ROOM_FEATURE_DETAIL_DEFINITION = {
@@ -1 +1 @@
1
- {"version":3,"file":"get_web_room_feature_detail_def.js","sourceRoot":"","sources":["../../../src/tools/definitions/get_web_room_feature_detail_def.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuExB,CAAC;AAEF,MAAM,sBAAsB,GAAG;IAC7B,SAAS,EAAE,wFAAwF;IACnG,KAAK,EAAE;;;;;;;;;;;;;qGAa4F;CACpG,CAAC;AAEF,MAAM,CAAC,MAAM,sCAAsC,GAAG;IACpD,IAAI,EAAE,6BAA6B;IACnC,WAAW,EAAE,gBAAgB;IAC7B,sBAAsB,EAAE,sBAAsB;CAC/C,CAAC"}
1
+ {"version":3,"file":"get_web_room_feature_detail_def.js","sourceRoot":"","sources":["../../../src/tools/definitions/get_web_room_feature_detail_def.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoExB,CAAC;AAEF,MAAM,sBAAsB,GAAG;IAC7B,SAAS,EAAE,wFAAwF;IACnG,KAAK,EAAE;;;;;;;;;;;;;qGAa4F;CACpG,CAAC;AAEF,MAAM,CAAC,MAAM,sCAAsC,GAAG;IACpD,IAAI,EAAE,6BAA6B;IACnC,WAAW,EAAE,gBAAgB;IAC7B,sBAAsB,EAAE,sBAAsB;CAC/C,CAAC"}
@@ -1,40 +1,56 @@
1
1
  const TOOL_DESCRIPTION = `
2
- [Core Purpose]: As a professional Web audio/video meeting TUIRoomKit (Atomicx version) integration assistant, this tool is specifically designed to provide Agents with workflow action instructions and real-time aggregated latest documentation content to guide LLM in helping users implement audio/video meeting features.
2
+ 【Core Purpose】: As a professional Web audio/video conference TUIRoomKit (Atomicx version) integration assistant, this tool is specifically designed to provide Agent with workflow action instructions and real-time aggregated latest documentation content to guide LLM in helping users implement audio/video conference functionality.
3
3
 
4
- [Feature Description]:
5
- TUIRoomKit (Atomicx version) provides a complete audio/video meeting solution by default, including:
6
- - **Meeting Entry Page (home.vue)**: Device detection, room creation/join functionality
7
- - **Meeting Room Page (room.vue)**: Complete header, video layout, control bar, and sidebar panels
8
- - **Applicable Scenarios**: Enterprise meetings, online education, remote collaboration, multi-party video calls, etc.
4
+ ⭐⭐⭐ **Default First Choice Tool** ⭐⭐⭐
5
+ Whether users have PC or H5 mobile requirements, this tool should be **called first**! This tool provides out-of-the-box UI component solutions with completed PC + H5 responsive adaptation.
6
+ Only when users **explicitly indicate the need for custom UI interface** should the 'get_web_room_feature_detail' tool be considered.
9
7
 
10
- [Keywords]:
11
- 'TUIRoomKit', 'Atomicx', 'audio/video meeting', 'TRTC', 'Vue3', 'PC', 'meeting room', 'video call', 'screen sharing', 'device detection', 'room management', 'grid layout', 'sidebar layout', 'source code integration', 'atomized components'.
8
+ 【Feature Description】:
9
+ TUIRoomKit (Atomicx version) provides a complete audio/video conference solution by default, including:
10
+ - **Conference Entry Page (home.vue)**: Device detection, room creation/joining functionality
11
+ - **Conference Room Page (room.vue)**: Complete header, video layout, control bar and side panels
12
+ - **Applicable Scenarios**: Enterprise meetings, online education, remote collaboration, multi-person video calls, etc.
12
13
 
13
- [Technical Features]:
14
+ 【Platform Support】:
15
+ - **PC**: ✅ Full feature support, including conference entry page, conference room page, device detection, screen sharing, etc.
16
+ - **H5 Mobile**: ✅ Full support! UI components are adapted for H5, can directly use pre-built UI components in mobile browsers to implement audio/video conference functionality
17
+
18
+ 【Tool Call Priority - Important】:
19
+ - ✅ **This tool is the default first choice**: When users say "develop conference app", "H5 conference", "PC conference", "audio/video conference" → call this tool
20
+ - ✅ **This tool takes priority**: When users don't explicitly say they want "custom UI" → call this tool
21
+ - ❌ **Only use get_web_room_feature_detail in the following cases**: Users explicitly say "custom interface", "implement UI myself", "don't use pre-built components", "deep customization"
22
+
23
+ 【Keywords】:
24
+ 'TUIRoomKit', 'Atomicx', 'audio/video conference', 'TRTC', 'Vue3', 'PC', 'H5', 'mobile', 'conference room', 'video call', 'screen sharing', 'device detection', 'room management', 'grid layout', 'sidebar layout', 'source code integration', 'atomic components', 'conference application', 'Web conference', 'mobile conference'.
25
+
26
+ 【Technical Features】:
14
27
  - **Source Code Integration Method**: Clone repository from GitHub and copy core source code files (not npm package method)
15
- - **Atomicx Atomized Component Architecture**: Developers can flexibly combine atomized components to build personalized meeting interfaces
16
- - **PC Vue3 Projects Only**: Currently does not support Vue2.x framework or H5 platform
28
+ - **Atomicx Atomic Component Architecture**: Developers can flexibly combine atomic components to build personalized conference interfaces
29
+ - **PC + H5 Full Platform Support**: UI components have completed responsive adaptation, same codebase supports both PC and H5
17
30
  - **TypeScript + SCSS**: Requires TypeScript and SCSS development environment configuration
18
31
 
19
- [Action Instructions & Workflow Guidance]:
20
- When handling user requirements, Agent should use the llm_code_generation_instructions_md field returned by this tool. This field contains:
21
- 1. Core workflow instructions: Including environment preparation, dependency installation, source code cloning & copying, routing configuration, UserSig authentication, and other complete processes.
22
- 2. Real-time documentation content: Provides the latest content from official integration guides, including all configuration details and code examples.
32
+ 【Action Instructions and Workflow Guidance】:
33
+ When Agent processes user requirements, it should use the llm_code_generation_instructions_md field returned by this tool. This field contains:
34
+ 1. Core workflow instructions: Including environment preparation, dependency installation, source code cloning and copying, routing configuration, authentication UserSig and other complete processes.
35
+ 2. Real-time documentation content: Provides the latest content of official integration guides, including all configuration details and code examples.
36
+
37
+ LLM must prioritize and exclusively use the real-time content returned by this tool to generate code, avoiding accessing external URLs independently.
23
38
 
24
- LLM must prioritize and exclusively use the real-time content returned by this tool to generate code, avoiding accessing external URLs on its own.
39
+ 【Mandatory Constraints】:
40
+ 1. **This tool is the default first choice for PC/H5 conference requirements**: When users have audio/video conference needs (whether PC or H5), call this tool first.
41
+ 2. Framework limitation: TUIRoomKit (Atomicx version) only supports Vue3 framework (Vue 3.4.21 and above), does not support Vue2.x.
42
+ 3. Source code integration method: Must clone TUIRoomKit repository from GitHub and copy core source code files, cannot use simple npm install method.
43
+ 4. Authentication credential configuration: Read SDKAppID and SDKSecretKey from MCP environment variables, configure to src/config/basic-info-config.js file.
44
+ 5. Security warning: Must inform users that client-side UserSig generation is only suitable for local testing, production environment must generate UserSig on server side.
45
+ 6. Result recording constraint: After TUIRoomKit integration is completed and project starts successfully, must call 'record_result' tool to record integration results.
46
+ 7. **Only when users explicitly request custom UI**, guide them to use 'get_web_room_feature_detail' tool. Otherwise, use this tool's UI component solution by default.
25
47
 
26
- [Mandatory Constraints]:
27
- 1. Platform Limitation: TUIRoomKit (Atomicx version) only supports PC Vue3 projects, does not support Vue2.x or H5 platform.
28
- 2. Source Code Integration Method: Must clone TUIRoomKit repository from GitHub and copy core source code files, cannot use simple npm install method.
29
- 3. Authentication Credential Configuration: Read SDKAppID and SDKSecretKey from MCP environment variables, configure them in src/config/basic-info-config.js file.
30
- 4. Security Warning: Must inform users that client-side UserSig generation is only suitable for local testing, production environment must generate UserSig on server side.
31
- 5. Result Recording Constraint: After TUIRoomKit integration is complete and project starts successfully, must call 'record_result' tool to record integration results.
32
- 6. Default Full Integration: TUIRoomKit (Atomicx version) provides a complete meeting solution by default, no need to distinguish integration modes.
48
+ 【Supported Framework】: vue3 (only supports Vue 3.4.21 and above).
33
49
 
34
- [Supported Framework]: vue3 (Only supports Vue 3.4.21 and above).
50
+ 【Supported Platforms】: PC, H5 mobile (UI components have completed responsive adaptation, ready to use out of the box).
35
51
  `;
36
52
  const PARAMETER_DESCRIPTIONS = {
37
- framework: 'TUIRoomKit (Atomicx version) framework type. Fixed value: vue3 (PC Vue3 project).',
53
+ framework: 'TUIRoomKit (Atomicx version) framework type. Fixed value: vue3 (supports PC and H5 mobile).',
38
54
  };
39
55
  export const GET_WEB_ROOM_UIKIT_INTEGRATION_DEFINITION = {
40
56
  name: 'get_web_room_uikit_integration',
@@ -1 +1 @@
1
- {"version":3,"file":"get_web_room_uikit_integration_def.js","sourceRoot":"","sources":["../../../src/tools/definitions/get_web_room_uikit_integration_def.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkCxB,CAAC;AAEF,MAAM,sBAAsB,GAAG;IAC7B,SAAS,EAAE,mFAAmF;CAC/F,CAAC;AAEF,MAAM,CAAC,MAAM,yCAAyC,GAAG;IACvD,IAAI,EAAE,gCAAgC;IACtC,WAAW,EAAE,gBAAgB;IAC7B,sBAAsB,EAAE,sBAAsB;CAC/C,CAAC"}
1
+ {"version":3,"file":"get_web_room_uikit_integration_def.js","sourceRoot":"","sources":["../../../src/tools/definitions/get_web_room_uikit_integration_def.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkDxB,CAAC;AAEF,MAAM,sBAAsB,GAAG;IAC7B,SAAS,EAAE,6FAA6F;CACzG,CAAC;AAEF,MAAM,CAAC,MAAM,yCAAyC,GAAG;IACvD,IAAI,EAAE,gCAAgC;IACtC,WAAW,EAAE,gBAAgB;IAC7B,sBAAsB,EAAE,sBAAsB;CAC/C,CAAC"}
@@ -0,0 +1,53 @@
1
+ const TOOL_DESCRIPTION = `
2
+ 【Core Purpose】:
3
+ Acts as a **mandatory decision gate** in the AtomicXCore/LiveKit integration workflow. When user requirements involve basic features (streaming/viewing) or interactive features (co-guest/PK/seat management) but **media type is undefined** (video vs audio-only), this tool must be invoked to intercept and require user to choose one.
4
+
5
+ 【⚠️ Mandatory Constraints】:
6
+ 1. **No Default Selection**: AI is strictly prohibited from deciding scenario on behalf of user.
7
+ 2. **Scenario Exclusivity**: Video Live (live) and Voice Chat Room (voice) have fundamental differences in underlying SDK logic and platform compatibility, must be clarified.
8
+ 3. **Pre-requisite Call**: Before this tool receives explicit user response, subsequent code generation tools must not be called.
9
+
10
+ 【Applicable Scope】:
11
+ This tool only applies to scenario selection for the following two tools:
12
+ 1. **get_native_live_uikit_integration**: Basic feature integration (host streaming, audience viewing, live list)
13
+ 2. **get_native_live_uikit_interaction**: Interactive feature integration (co-guest, PK, audience management)
14
+
15
+ ⚠️ The following tools **do not require scenario distinction**, do not trigger this tool:
16
+ - **get_native_live_uikit_extra_features**: Extended features (beauty, audio effects, barrage, gifts) are universal across video live and voice chat room scenarios
17
+
18
+ 【Trigger Decision Logic】:
19
+ ✅ **Should Trigger** cases:
20
+ - User says "Use AtomicXCore to implement host streaming/audience viewing" -> Trigger (Video live or voice chat room?)
21
+ - User says "Use AtomicXCore to implement host connection and PK" -> Trigger (Video co-guest or voice seat management?)
22
+ - User says "Implement live room co-guest/seat features" -> Trigger (Video co-guest or voice seat management?)
23
+ - User says "I want to build a live streaming App" -> Trigger (Video live or voice chat room?)
24
+
25
+ ❌ **Should Not Trigger** cases:
26
+ - User says "Implement live room beauty/audio effects/barrage/gift features" -> Don't trigger (Extended features don't require scenario)
27
+ - User explicitly says "video live", "show live", "e-commerce live" -> Don't trigger (Already clarified as live scenario)
28
+ - User explicitly says "voice chat room", "voice room", "voice social" -> Don't trigger (Already clarified as voice scenario)
29
+ `;
30
+ const SELECTION_PROMPT_TEXT = `
31
+ To provide you with an accurate AtomicXCore integration solution, please first clarify your business scenario:
32
+
33
+ ### 1. Video Live (Scenario: live)
34
+ * **Core Experience**: Camera-based video streaming (show live, e-commerce, gaming).
35
+ * **Interactive Features**: Supports **video** co-guest, cross-room **PK (with video comparison)**.
36
+ * **Platform Support**: Android, iOS, Flutter, React Native.
37
+
38
+ ### 2. Voice Chat Room (Scenario: voice)
39
+ * **Core Experience**: Audio-only interaction (voice social, multi-person radio, Werewolf).
40
+ * **Interactive Features**: Supports **seat** management (join/leave seat).
41
+ * **Platform Support**: Android, iOS, Flutter, uni-app.
42
+ * **⚠️ Limitation**: Flutter and uni-app currently do not support host cross-room connection and PK.
43
+
44
+ ---
45
+ **Please tell me which scenario you choose? (Video Live / Voice Chat Room)**
46
+ `;
47
+ export const PRESENT_SCENARIO_CHOICE_DEFINITION = {
48
+ name: 'present_scenario_choice',
49
+ description: TOOL_DESCRIPTION,
50
+ selectionText: SELECTION_PROMPT_TEXT, // 供 Agent 直接输出给用户的文案
51
+ parameter_descriptions: {}, // 此工具为交互引导类,无需入参
52
+ };
53
+ //# sourceMappingURL=present_scenario_choice_def.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"present_scenario_choice_def.js","sourceRoot":"","sources":["../../../src/tools/definitions/present_scenario_choice_def.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BxB,CAAC;AAEF,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;;;;CAgB7B,CAAC;AAEF,MAAM,CAAC,MAAM,kCAAkC,GAAG;IAChD,IAAI,EAAE,yBAAyB;IAC/B,WAAW,EAAE,gBAAgB;IAC7B,aAAa,EAAE,qBAAqB,EAAE,qBAAqB;IAC3D,sBAAsB,EAAE,EAAE,EAAE,iBAAiB;CAC9C,CAAC"}