@tencent-rtc/trtc-agent-skills 0.1.3 → 0.1.4

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 (360) hide show
  1. package/.cursor/rules/main.mdc +12 -0
  2. package/AGENTS.md +14 -104
  3. package/CLAUDE.md +15 -127
  4. package/CODEBUDDY.md +32 -118
  5. package/README.md +7 -5
  6. package/README.zh.md +7 -5
  7. package/bin/cli.js +133 -41
  8. package/hooks/__pycache__/cursor-adapter.cpython-313.pyc +0 -0
  9. package/hooks/cursor-adapter.py +45 -18
  10. package/hooks/hooks-cursor.json +5 -18
  11. package/hooks/hooks.json +6 -31
  12. package/knowledge-base/conference/web/index.yaml +143 -0
  13. package/knowledge-base/platform-slice-template.md +1041 -133
  14. package/knowledge-base/products.yaml +76 -0
  15. package/knowledge-base/scenario-spec.md +1316 -115
  16. package/knowledge-base/scenarios/conference/base/general-conference.md +22 -2
  17. package/knowledge-base/scenarios/conference/base/webinar-conference.md +14 -0
  18. package/knowledge-base/scenarios/conference/medical/1v1-video-consultation.md +19 -0
  19. package/knowledge-base/scenarios/conference/medical/medical-multidoctor-consultation.md +13 -0
  20. package/knowledge-base/scenarios/live/entertainment-live-room.md +12 -0
  21. package/knowledge-base/slice-spec.md +2377 -299
  22. package/knowledge-base/slices/conference/web/integration-audit.md +1 -1
  23. package/knowledge-base/slices/conference/web/login-auth.md +14 -1
  24. package/knowledge-base/tooling/aliases.yaml +92 -0
  25. package/knowledge-base/tooling/intent-signals.yaml +181 -0
  26. package/knowledge-base/tooling/symptom-keywords.yaml +21 -0
  27. package/package.json +1 -1
  28. package/skills/trtc/SKILL.md +202 -245
  29. package/skills/trtc/hooks/__pycache__/report_prompt.cpython-313.pyc +0 -0
  30. package/skills/{trtc-topic/guardrails → trtc/hooks}/gate_slice_read.py +12 -8
  31. package/skills/{trtc-topic/guardrails → trtc/hooks}/gate_slice_write.py +16 -12
  32. package/skills/{trtc-topic/guardrails → trtc/hooks}/stop_require_apply_evidence.py +22 -14
  33. package/skills/trtc/hooks/topic_phase_gate.py +161 -0
  34. package/skills/{trtc-topic → trtc}/runtime/README.md +2 -2
  35. package/skills/{trtc-onboarding/reference/reporting-protocol.md → trtc/runtime/REPORTING.md} +5 -5
  36. package/skills/{trtc-topic → trtc}/runtime/RUNTIME.md +5 -5
  37. package/skills/trtc/runtime/lib/__init__.py +0 -0
  38. package/skills/{trtc-topic → trtc}/runtime/package-lock.json +2 -2
  39. package/skills/{trtc-topic → trtc}/runtime/package.json +2 -2
  40. package/skills/{trtc-topic → trtc}/runtime/telemetry-bridge.mjs +1 -1
  41. package/skills/{trtc-topic/scripts → trtc/tools}/STATE-MACHINE-GUIDE.md +23 -23
  42. package/skills/trtc/tools/__init__.py +2 -0
  43. package/skills/trtc/tools/__pycache__/__init__.cpython-313.pyc +0 -0
  44. package/skills/trtc/tools/__pycache__/query_classifier.cpython-313.pyc +0 -0
  45. package/skills/trtc/tools/__pycache__/reporting.cpython-313.pyc +0 -0
  46. package/skills/trtc/tools/__pycache__/search.cpython-313.pyc +0 -0
  47. package/skills/trtc/tools/__pycache__/session.cpython-313.pyc +0 -0
  48. package/skills/trtc/tools/apply.py +540 -0
  49. package/skills/trtc/tools/docs.py +712 -0
  50. package/skills/trtc/tools/docsbot.py +182 -0
  51. package/skills/trtc/tools/entry/render_ai_instructions.py +92 -0
  52. package/skills/trtc/tools/flow.py +1089 -0
  53. package/skills/{trtc-topic/scripts → trtc/tools}/init_slice_queue.py +5 -4
  54. package/skills/{trtc-topic/scripts → trtc/tools}/next_slice.py +5 -4
  55. package/skills/trtc/tools/query_classifier.py +301 -0
  56. package/skills/trtc/tools/reporting.py +447 -0
  57. package/skills/trtc/tools/search.py +817 -0
  58. package/skills/trtc/tools/session.py +1261 -0
  59. package/skills/trtc/tools/state_machine.py +690 -0
  60. package/skills/trtc-ai-service/README.md +195 -0
  61. package/skills/trtc-ai-service/README.zh-CN.md +193 -0
  62. package/skills/trtc-ai-service/SKILL.md +945 -0
  63. package/skills/trtc-ai-service/auto_adapters/README.md +40 -0
  64. package/skills/trtc-ai-service/auto_adapters/frontend-spa/README.md +27 -0
  65. package/skills/trtc-ai-service/auto_adapters/frontend-spa/angular/voice-agent.component.ts.tpl +131 -0
  66. package/skills/trtc-ai-service/auto_adapters/frontend-spa/manifest.yaml +57 -0
  67. package/skills/trtc-ai-service/auto_adapters/frontend-spa/react/VoiceAgent.tsx.tpl +142 -0
  68. package/skills/trtc-ai-service/auto_adapters/frontend-spa/vue/VoiceAgent.vue.tpl +121 -0
  69. package/skills/trtc-ai-service/auto_adapters/integration_templates/generic-backend.md +45 -0
  70. package/skills/trtc-ai-service/auto_adapters/integration_templates/generic-frontend.md +51 -0
  71. package/skills/trtc-ai-service/auto_adapters/integration_templates/generic-rest-api.md +93 -0
  72. package/skills/trtc-ai-service/auto_adapters/java-backend/README.md +25 -0
  73. package/skills/trtc-ai-service/auto_adapters/java-backend/manifest.yaml +30 -0
  74. package/skills/trtc-ai-service/auto_adapters/java-backend/quarkus/VoiceAgentFilter.java.tpl +64 -0
  75. package/skills/trtc-ai-service/auto_adapters/java-backend/springboot/VoiceAgentFilter.java.tpl +91 -0
  76. package/skills/trtc-ai-service/auto_adapters/manifest.yaml +43 -0
  77. package/skills/trtc-ai-service/auto_adapters/node-backend/README.md +25 -0
  78. package/skills/trtc-ai-service/auto_adapters/node-backend/express.js.tpl +40 -0
  79. package/skills/trtc-ai-service/auto_adapters/node-backend/fastify.js.tpl +27 -0
  80. package/skills/trtc-ai-service/auto_adapters/node-backend/koa.js.tpl +31 -0
  81. package/skills/trtc-ai-service/auto_adapters/node-backend/manifest.yaml +47 -0
  82. package/skills/trtc-ai-service/auto_adapters/python-backend/README.md +22 -0
  83. package/skills/trtc-ai-service/auto_adapters/python-backend/django.py.tpl +32 -0
  84. package/skills/trtc-ai-service/auto_adapters/python-backend/fastapi.py.tpl +35 -0
  85. package/skills/trtc-ai-service/auto_adapters/python-backend/flask.py.tpl +31 -0
  86. package/skills/trtc-ai-service/auto_adapters/python-backend/manifest.yaml +45 -0
  87. package/skills/trtc-ai-service/capabilities/__init__.py +43 -0
  88. package/skills/trtc-ai-service/capabilities/conversation-core/.env.example +29 -0
  89. package/skills/trtc-ai-service/capabilities/conversation-core/INTEGRATION.md +134 -0
  90. package/skills/trtc-ai-service/capabilities/conversation-core/INTERFACE_ADAPT.md +111 -0
  91. package/skills/trtc-ai-service/capabilities/conversation-core/QUICK_START.md +62 -0
  92. package/skills/trtc-ai-service/capabilities/conversation-core/manifest.yaml +250 -0
  93. package/skills/trtc-ai-service/capabilities/conversation-core/requirements.txt +6 -0
  94. package/skills/trtc-ai-service/capabilities/conversation-core/src/__init__.py +10 -0
  95. package/skills/trtc-ai-service/capabilities/conversation-core/src/_capability_loader.py +218 -0
  96. package/skills/trtc-ai-service/capabilities/conversation-core/src/agent.py +231 -0
  97. package/skills/trtc-ai-service/capabilities/conversation-core/src/credentials.py +132 -0
  98. package/skills/trtc-ai-service/capabilities/conversation-core/src/health.py +355 -0
  99. package/skills/trtc-ai-service/capabilities/conversation-core/src/log_filter.py +76 -0
  100. package/skills/trtc-ai-service/capabilities/conversation-core/src/modality.py +109 -0
  101. package/skills/trtc-ai-service/capabilities/conversation-core/src/server.py +312 -0
  102. package/skills/trtc-ai-service/capabilities/conversation-core/src/trtc_client.py +315 -0
  103. package/skills/trtc-ai-service/capabilities/conversation-core/src/usersig.py +90 -0
  104. package/skills/trtc-ai-service/capabilities/conversation-core/tests/test_skeleton.py +216 -0
  105. package/skills/trtc-ai-service/capabilities/conversation-core/web-demo/README.md +48 -0
  106. package/skills/trtc-ai-service/capabilities/conversation-core/web-demo/app.js +415 -0
  107. package/skills/trtc-ai-service/capabilities/conversation-core/web-demo/index.html +68 -0
  108. package/skills/trtc-ai-service/capabilities/conversation-core/web-demo/styles.css +136 -0
  109. package/skills/trtc-ai-service/capabilities/digital-human/README.md +31 -0
  110. package/skills/trtc-ai-service/capabilities/digital-human/manifest.yaml +64 -0
  111. package/skills/trtc-ai-service/capabilities/digital-human/src/__init__.py +2 -0
  112. package/skills/trtc-ai-service/capabilities/digital-human/src/router.py +43 -0
  113. package/skills/trtc-ai-service/capabilities/human-handoff/INTERFACE_ADAPT.md +353 -0
  114. package/skills/trtc-ai-service/capabilities/human-handoff/README.md +44 -0
  115. package/skills/trtc-ai-service/capabilities/human-handoff/manifest.yaml +227 -0
  116. package/skills/trtc-ai-service/capabilities/human-handoff/src/__init__.py +2 -0
  117. package/skills/trtc-ai-service/capabilities/human-handoff/src/adapters/__init__.py +9 -0
  118. package/skills/trtc-ai-service/capabilities/human-handoff/src/adapters/default_rest.py +242 -0
  119. package/skills/trtc-ai-service/capabilities/human-handoff/src/adapters/factory.py +89 -0
  120. package/skills/trtc-ai-service/capabilities/human-handoff/src/adapters/local_queue.py +258 -0
  121. package/skills/trtc-ai-service/capabilities/human-handoff/src/adapters/mock.py +132 -0
  122. package/skills/trtc-ai-service/capabilities/human-handoff/src/core/__init__.py +25 -0
  123. package/skills/trtc-ai-service/capabilities/human-handoff/src/core/intent_detector.py +75 -0
  124. package/skills/trtc-ai-service/capabilities/human-handoff/src/core/models.py +163 -0
  125. package/skills/trtc-ai-service/capabilities/human-handoff/src/core/service.py +192 -0
  126. package/skills/trtc-ai-service/capabilities/human-handoff/src/feedback_store.py +54 -0
  127. package/skills/trtc-ai-service/capabilities/human-handoff/src/ports/__init__.py +4 -0
  128. package/skills/trtc-ai-service/capabilities/human-handoff/src/ports/handoff_client.py +86 -0
  129. package/skills/trtc-ai-service/capabilities/human-handoff/src/queue.py +62 -0
  130. package/skills/trtc-ai-service/capabilities/human-handoff/src/router.py +201 -0
  131. package/skills/trtc-ai-service/capabilities/human-handoff/src/summary_link.py +77 -0
  132. package/skills/trtc-ai-service/capabilities/human-handoff/src/trigger.py +25 -0
  133. package/skills/trtc-ai-service/capabilities/knowledge-base/INTERFACE_ADAPT.md +297 -0
  134. package/skills/trtc-ai-service/capabilities/knowledge-base/README.md +51 -0
  135. package/skills/trtc-ai-service/capabilities/knowledge-base/data/faq.json +20 -0
  136. package/skills/trtc-ai-service/capabilities/knowledge-base/manifest.yaml +211 -0
  137. package/skills/trtc-ai-service/capabilities/knowledge-base/src/__init__.py +8 -0
  138. package/skills/trtc-ai-service/capabilities/knowledge-base/src/adapters/__init__.py +9 -0
  139. package/skills/trtc-ai-service/capabilities/knowledge-base/src/adapters/default_rest.py +209 -0
  140. package/skills/trtc-ai-service/capabilities/knowledge-base/src/adapters/factory.py +86 -0
  141. package/skills/trtc-ai-service/capabilities/knowledge-base/src/adapters/local_json.py +172 -0
  142. package/skills/trtc-ai-service/capabilities/knowledge-base/src/adapters/mock.py +91 -0
  143. package/skills/trtc-ai-service/capabilities/knowledge-base/src/core/__init__.py +12 -0
  144. package/skills/trtc-ai-service/capabilities/knowledge-base/src/core/models.py +77 -0
  145. package/skills/trtc-ai-service/capabilities/knowledge-base/src/core/scoring.py +73 -0
  146. package/skills/trtc-ai-service/capabilities/knowledge-base/src/core/service.py +78 -0
  147. package/skills/trtc-ai-service/capabilities/knowledge-base/src/ports/__init__.py +4 -0
  148. package/skills/trtc-ai-service/capabilities/knowledge-base/src/ports/kb_client.py +61 -0
  149. package/skills/trtc-ai-service/capabilities/knowledge-base/src/retriever.py +56 -0
  150. package/skills/trtc-ai-service/capabilities/knowledge-base/src/router.py +85 -0
  151. package/skills/trtc-ai-service/capabilities/session-summary/INTERFACE_ADAPT.md +99 -0
  152. package/skills/trtc-ai-service/capabilities/session-summary/README.md +47 -0
  153. package/skills/trtc-ai-service/capabilities/session-summary/data/test_session.json +18 -0
  154. package/skills/trtc-ai-service/capabilities/session-summary/manifest.yaml +165 -0
  155. package/skills/trtc-ai-service/capabilities/session-summary/src/__init__.py +2 -0
  156. package/skills/trtc-ai-service/capabilities/session-summary/src/adapters/__init__.py +5 -0
  157. package/skills/trtc-ai-service/capabilities/session-summary/src/adapters/base.py +31 -0
  158. package/skills/trtc-ai-service/capabilities/session-summary/src/adapters/default_rest.py +67 -0
  159. package/skills/trtc-ai-service/capabilities/session-summary/src/adapters/factory.py +51 -0
  160. package/skills/trtc-ai-service/capabilities/session-summary/src/adapters/local_json.py +42 -0
  161. package/skills/trtc-ai-service/capabilities/session-summary/src/adapters/mock.py +22 -0
  162. package/skills/trtc-ai-service/capabilities/session-summary/src/recorder.py +210 -0
  163. package/skills/trtc-ai-service/capabilities/session-summary/src/router.py +93 -0
  164. package/skills/trtc-ai-service/capabilities/session-summary/src/summarizer.py +163 -0
  165. package/skills/trtc-ai-service/capabilities/tool-calling/INTERFACE_ADAPT.md +158 -0
  166. package/skills/trtc-ai-service/capabilities/tool-calling/README.md +50 -0
  167. package/skills/trtc-ai-service/capabilities/tool-calling/data/tools.yaml +58 -0
  168. package/skills/trtc-ai-service/capabilities/tool-calling/examples/__init__.py +1 -0
  169. package/skills/trtc-ai-service/capabilities/tool-calling/examples/local_tools.py +101 -0
  170. package/skills/trtc-ai-service/capabilities/tool-calling/manifest.yaml +146 -0
  171. package/skills/trtc-ai-service/capabilities/tool-calling/src/__init__.py +8 -0
  172. package/skills/trtc-ai-service/capabilities/tool-calling/src/dispatcher.py +54 -0
  173. package/skills/trtc-ai-service/capabilities/tool-calling/src/registry.py +219 -0
  174. package/skills/trtc-ai-service/capabilities/tool-calling/src/router.py +50 -0
  175. package/skills/trtc-ai-service/references/business-contract-spec.md +263 -0
  176. package/skills/trtc-ai-service/scenarios/custom-builder/README.md +86 -0
  177. package/skills/trtc-ai-service/scenarios/custom-builder/output-templates/recipe.yaml.j2 +194 -0
  178. package/skills/trtc-ai-service/scenarios/custom-builder/prompts/q1-business-scenario.md +43 -0
  179. package/skills/trtc-ai-service/scenarios/custom-builder/prompts/q2-io-modality.md +57 -0
  180. package/skills/trtc-ai-service/scenarios/custom-builder/prompts/q3-ui-form.md +55 -0
  181. package/skills/trtc-ai-service/scenarios/custom-builder/prompts/q4-capabilities.md +78 -0
  182. package/skills/trtc-ai-service/scenarios/customer-service/README.md +114 -0
  183. package/skills/trtc-ai-service/scenarios/customer-service/recipe.yaml +154 -0
  184. package/skills/trtc-ai-service/scenarios/customer-service/sample-data/README.md +32 -0
  185. package/skills/trtc-ai-service/scenarios/customer-service/sample-data/faq-sample.json +37 -0
  186. package/skills/trtc-ai-service/scenarios/customer-service/system-prompt.template.md +94 -0
  187. package/skills/trtc-ai-service/scenarios/customer-service/ui/admin-board/app.js +347 -0
  188. package/skills/trtc-ai-service/scenarios/customer-service/ui/admin-board/index.html +125 -0
  189. package/skills/trtc-ai-service/scenarios/customer-service/ui/admin-board/styles.css +487 -0
  190. package/skills/trtc-ai-service/scenarios/customer-service/ui/admin-board/tokens.css +71 -0
  191. package/skills/trtc-ai-service/scenarios/customer-service/ui/design-system/DESIGN_GUIDELINES.md +370 -0
  192. package/skills/trtc-ai-service/scenarios/customer-service/ui/voice-customer-service/README.md +68 -0
  193. package/skills/trtc-ai-service/scenarios/customer-service/ui/voice-customer-service/app.js +1307 -0
  194. package/skills/trtc-ai-service/scenarios/customer-service/ui/voice-customer-service/data.js +40 -0
  195. package/skills/trtc-ai-service/scenarios/customer-service/ui/voice-customer-service/index.html +233 -0
  196. package/skills/trtc-ai-service/scenarios/customer-service/ui/voice-customer-service/mock-shop.json +21 -0
  197. package/skills/trtc-ai-service/scenarios/customer-service/ui/voice-customer-service/styles.css +603 -0
  198. package/skills/trtc-ai-service/scenarios/customer-service/ui/voice-customer-service/tokens.css +71 -0
  199. package/skills/trtc-ai-service/scenarios/customer-service/ui/widget-floating/agent-link.js +323 -0
  200. package/skills/trtc-ai-service/scenarios/customer-service/ui/widget-floating/app.js +458 -0
  201. package/skills/trtc-ai-service/scenarios/customer-service/ui/widget-floating/index.html +109 -0
  202. package/skills/trtc-ai-service/scenarios/customer-service/ui/widget-floating/styles.css +489 -0
  203. package/skills/trtc-ai-service/scenarios/customer-service/ui/widget-floating/tokens.css +59 -0
  204. package/skills/trtc-ai-service/scripts/add-capability.py +364 -0
  205. package/skills/trtc-ai-service/scripts/contract-adapt.py +334 -0
  206. package/skills/trtc-ai-service/scripts/detect-stack.py +40 -0
  207. package/skills/trtc-ai-service/scripts/lib/__init__.py +20 -0
  208. package/skills/trtc-ai-service/scripts/lib/adapter_codegen.py +509 -0
  209. package/skills/trtc-ai-service/scripts/lib/arbitrator.py +152 -0
  210. package/skills/trtc-ai-service/scripts/lib/contract_resolver.py +519 -0
  211. package/skills/trtc-ai-service/scripts/lib/credential_validators.py +253 -0
  212. package/skills/trtc-ai-service/scripts/lib/curl_parser.py +303 -0
  213. package/skills/trtc-ai-service/scripts/lib/degrader.py +140 -0
  214. package/skills/trtc-ai-service/scripts/lib/injector.py +347 -0
  215. package/skills/trtc-ai-service/scripts/lib/manifest_resolver.py +288 -0
  216. package/skills/trtc-ai-service/scripts/lib/openapi_parser.py +289 -0
  217. package/skills/trtc-ai-service/scripts/lib/stack_detector.py +159 -0
  218. package/skills/trtc-ai-service/scripts/lib/tokens_compile.py +204 -0
  219. package/skills/trtc-ai-service/scripts/post-install-patch.py +225 -0
  220. package/skills/trtc-ai-service/scripts/setup-credentials.py +393 -0
  221. package/skills/trtc-ai-service/scripts/verify-credentials.py +108 -0
  222. package/skills/trtc-ai-service/start.sh +111 -0
  223. package/skills/trtc-ai-service/tests/__init__.py +1 -0
  224. package/skills/trtc-ai-service/tests/test_arbitrator.py +64 -0
  225. package/skills/trtc-ai-service/tests/test_capability_overlay.py +85 -0
  226. package/skills/trtc-ai-service/tests/test_contract_resolver.py +190 -0
  227. package/skills/trtc-ai-service/tests/test_handoff_ports.py +195 -0
  228. package/skills/trtc-ai-service/tests/test_kb_ports.py +195 -0
  229. package/skills/trtc-ai-service/tests/test_manifest_resolver.py +95 -0
  230. package/skills/trtc-ai-service/tests/test_recipe_assembly.py +175 -0
  231. package/skills/trtc-ai-service/tests/test_stack_and_degrader.py +101 -0
  232. package/skills/trtc-ai-service/tests/test_verify_credentials.py +285 -0
  233. package/skills/trtc-ai-service/triggers.yaml +29 -0
  234. package/skills/trtc-conference/SKILL.md +324 -0
  235. package/skills/trtc-conference/flows/onboarding.md +205 -0
  236. package/skills/trtc-conference/flows/topic.md +474 -0
  237. package/skills/trtc-conference/flows/troubleshoot.md +85 -0
  238. package/skills/trtc-conference/hooks/pretooluse_require_business_decisions.py +213 -0
  239. package/skills/trtc-conference/playbooks/medical-quickstart.md +84 -0
  240. package/skills/trtc-conference/playbooks/official-roomkit.md +97 -0
  241. package/skills/trtc-conference/references/local-usersig/basic-info-config.ts +39 -0
  242. package/skills/trtc-conference/references/usersig-handling.md +134 -0
  243. package/skills/trtc-conference/templates/medical-consultation/src/config/lib-generate-test-usersig-es.min.d.ts +4 -0
  244. package/skills/trtc-conference/templates/medical-consultation/src/config/lib-generate-test-usersig-es.min.js +2 -0
  245. package/skills/trtc-conference/tests/__pycache__/test_conference_onboarding_contract.cpython-313-pytest-9.0.2.pyc +0 -0
  246. package/skills/trtc-conference/tests/__pycache__/test_conference_topic_flow_contract.cpython-313-pytest-9.0.2.pyc +0 -0
  247. package/skills/trtc-conference/tests/test_conference_index_contract.py +43 -0
  248. package/skills/trtc-conference/tests/test_conference_onboarding_contract.py +103 -0
  249. package/skills/trtc-conference/tests/test_conference_template_contract.py +25 -0
  250. package/skills/trtc-conference/tests/test_conference_topic_flow_contract.py +132 -0
  251. package/skills/trtc-conference/tools/apply_checks.py +328 -0
  252. package/skills/trtc-conference/verify_lib/__init__.py +0 -0
  253. package/skills/{trtc-apply/guardrails/apply_lib → trtc-conference/verify_lib}/rule_parser.py +1 -1
  254. package/skills/trtc-docs/SKILL.md +91 -119
  255. package/.cursor/rules/ui-mode.mdc +0 -99
  256. package/ai-instructions/base.md +0 -13
  257. package/ai-instructions/ui-mode.md +0 -93
  258. package/knowledge-base/index.yaml +0 -462
  259. package/skills/trtc/room-builder/SKILL.md +0 -133
  260. package/skills/trtc/room-builder/templates/scenarios/medical-consultation/README.md +0 -108
  261. package/skills/trtc/room-builder/tools/render_ai_instructions.py +0 -226
  262. package/skills/trtc-apply/SKILL.md +0 -97
  263. package/skills/trtc-onboarding/SKILL.md +0 -841
  264. package/skills/trtc-onboarding/reference/path-a1-demo.md +0 -103
  265. package/skills/trtc-onboarding/reference/path-a2-integrate.md +0 -737
  266. package/skills/trtc-onboarding/reference/path-b-troubleshoot.md +0 -186
  267. package/skills/trtc-onboarding/reference/path-c-expand.md +0 -43
  268. package/skills/trtc-onboarding/reference/supported-matrix.md +0 -100
  269. package/skills/trtc-search/SKILL.md +0 -228
  270. package/skills/trtc-topic/SKILL.md +0 -622
  271. package/skills/trtc-topic/scripts/apply.py +0 -581
  272. package/skills/trtc-topic/scripts/lib/state_machine.py +0 -328
  273. package/skills/trtc-topic/tests/README.md +0 -70
  274. package/skills/trtc-topic/tests/conftest.py +0 -72
  275. package/skills/trtc-topic/tests/test_apply_cli.py +0 -480
  276. package/skills/trtc-topic/tests/test_end_to_end.py +0 -305
  277. package/skills/trtc-topic/tests/test_finalize_session.py +0 -51
  278. package/skills/trtc-topic/tests/test_gates.py +0 -316
  279. package/skills/trtc-topic/tests/test_session_resolver.py +0 -260
  280. package/skills/trtc-topic/tests/test_state_machine.py +0 -414
  281. package/skills/trtc-topic/tests/test_stop_require_apply.py +0 -99
  282. package/skills/trtc-topic/tests/test_topic_skill_invariants.py +0 -130
  283. /package/skills/{trtc-topic → trtc}/runtime/lib/platforms.py +0 -0
  284. /package/skills/{trtc-topic → trtc}/runtime/telemetry_collector.py +0 -0
  285. /package/skills/{trtc-onboarding/reference → trtc/runtime}/usersig-handling.md +0 -0
  286. /package/skills/{trtc-topic/scripts → trtc/tools}/finalize_session.py +0 -0
  287. /package/skills/{trtc-apply/guardrails/apply_lib → trtc-ai-service/capabilities/conversation-core/tests}/__init__.py +0 -0
  288. /package/skills/{trtc-topic → trtc-conference}/references/execution-units.yaml +0 -0
  289. /package/skills/{trtc/room-builder/templates/scenarios/medical-consultation/src/config → trtc-conference/references/local-usersig}/lib-generate-test-usersig-es.min.d.ts +0 -0
  290. /package/skills/{trtc/room-builder/templates/scenarios/medical-consultation/src/config → trtc-conference/references/local-usersig}/lib-generate-test-usersig-es.min.js +0 -0
  291. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/docs/backend-contract.zh-CN.md +0 -0
  292. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/docs/integration.zh-CN.md +0 -0
  293. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/docs/theme.zh-CN.md +0 -0
  294. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/index.html +0 -0
  295. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/package.json +0 -0
  296. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/postcss.config.js +0 -0
  297. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/App.vue +0 -0
  298. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/components/ConsultationManagePanel.vue +0 -0
  299. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/components/LanguageSwitch.vue +0 -0
  300. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/components/LoadingSpinner.vue +0 -0
  301. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/components/MedicalAlert.vue +0 -0
  302. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/components/MedicalBusinessPanel.vue +0 -0
  303. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/components/MedicalButton.vue +0 -0
  304. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/components/MedicalConfirmDialog.vue +0 -0
  305. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/components/MedicalDataPanel.vue +0 -0
  306. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/components/MedicalRecordPanel.vue +0 -0
  307. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/components/PrescriptionPanel.vue +0 -0
  308. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/config/basic-info-config.ts +0 -0
  309. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/config/runtime-config.ts +0 -0
  310. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/env.d.ts +0 -0
  311. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/features/consultation/components/ConsultationChatPanel.vue +0 -0
  312. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/features/consultation/components/ConsultationMembersPanel.vue +0 -0
  313. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/features/consultation/components/ConsultationTranscriptionPanel.vue +0 -0
  314. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/features/consultation/components/ConsultationVideoStage.vue +0 -0
  315. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/features/consultation/components/InviteDoctorDialog.vue +0 -0
  316. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/features/consultation/components/KickMemberConfirmDialog.vue +0 -0
  317. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/features/consultation/types.ts +0 -0
  318. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/features/consultation/useConsultationChat.ts +0 -0
  319. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/features/consultation/useConsultationDevices.ts +0 -0
  320. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/features/consultation/useConsultationParticipants.ts +0 -0
  321. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/features/consultation/useConsultationPermissions.ts +0 -0
  322. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/features/consultation/utils.ts +0 -0
  323. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/i18n/en-US/index.ts +0 -0
  324. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/i18n/index.ts +0 -0
  325. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/i18n/medicalTranslate.ts +0 -0
  326. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/i18n/state.ts +0 -0
  327. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/i18n/zh-CN/index.ts +0 -0
  328. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/main.ts +0 -0
  329. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/mock/appointments.ts +0 -0
  330. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/mock/users.ts +0 -0
  331. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/router/index.ts +0 -0
  332. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/services/adapters/index.ts +0 -0
  333. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/services/adapters/integration/appointmentService.ts +0 -0
  334. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/services/adapters/integration/authService.ts +0 -0
  335. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/services/adapters/integration/launchContext.ts +0 -0
  336. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/services/adapters/integration/userService.ts +0 -0
  337. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/services/adapters/mock/appointmentService.ts +0 -0
  338. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/services/adapters/mock/authService.ts +0 -0
  339. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/services/adapters/mock/userService.ts +0 -0
  340. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/services/adapters/types.ts +0 -0
  341. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/shared/icons.ts +0 -0
  342. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/styles/index.css +0 -0
  343. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/styles/tailwind.css +0 -0
  344. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/styles/theme.css +0 -0
  345. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/utils/auth.ts +0 -0
  346. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/utils/format.ts +0 -0
  347. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/utils/navigation.ts +0 -0
  348. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/utils/session.ts +0 -0
  349. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/views/DoctorConsultationView.vue +0 -0
  350. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/views/DoctorDashboardView.vue +0 -0
  351. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/views/LoginView.vue +0 -0
  352. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/views/PatientConsultationFinishedView.vue +0 -0
  353. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/views/PatientConsultationView.vue +0 -0
  354. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/views/PatientSelectDoctorView.vue +0 -0
  355. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/src/views/PatientWaitingView.vue +0 -0
  356. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/tsconfig.json +0 -0
  357. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/tsconfig.node.json +0 -0
  358. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation/vite.config.ts +0 -0
  359. /package/skills/{trtc/room-builder/templates/scenarios → trtc-conference/templates}/medical-consultation//346/216/245/345/205/245/350/257/264/346/230/216.md" +0 -0
  360. /package/skills/{trtc-topic/runtime/lib → trtc-conference/tools}/__init__.py +0 -0
@@ -1,462 +0,0 @@
1
- # TRTC Knowledge Base Index
2
- # Slice 和 scenario 的集中目录
3
- # Skills 通过读取此文件发现和定位知识库内容
4
-
5
- version: "4.0"
6
- last_updated: "2026-03-30"
7
-
8
- # ============================================================
9
- # Products — TRTC 产品线
10
- # ============================================================
11
- # 仅保留 search skill 做产品识别和 fallback 所需的最小信息
12
- products:
13
- - id: chat
14
- name: Chat(即时通信)
15
- description: 即时通信 SDK,提供消息收发、会话管理、群组、用户资料等能力
16
- llms_file: llms/chat.txt
17
-
18
- - id: call
19
- name: Call(音视频通话)
20
- description: 音视频通话组件,支持 1v1 和群组音视频通话
21
- llms_file: llms/call.txt
22
-
23
- - id: rtc-engine
24
- name: RTC Engine(实时音视频引擎)
25
- description: 底层实时音视频引擎,提供进房、推流、拉流、混流等核心能力
26
- llms_file: llms/rtc-engine.txt
27
-
28
- - id: live
29
- name: Live(直播)
30
- description: 直播互动 Core SDK,支持推流、拉流、连麦互动、弹幕、礼物、美颜等
31
- llms_file: llms/live.txt
32
-
33
- - id: conference
34
- name: Conference(视频会议)
35
- description: 视频会议 Core SDK,提供创建会议、入会、成员管理、会中聊天、屏幕分享等能力
36
- llms_file: llms/conference.txt
37
-
38
- # ============================================================
39
- # Cross-Product Relations — 跨产品关系模型
40
- # ============================================================
41
- # search skill 和 apply skill 用来处理跨产品查询和代码校验
42
- cross_product_relations:
43
- - id: live-chat-barrage
44
- products: [live, chat]
45
- slices: [chat/group-avchatroom, chat/group-msg]
46
- description: 直播弹幕使用 Chat SDK 的直播群(AVChatRoom)能力
47
-
48
- - id: live-rtc-streaming
49
- products: [live, rtc-engine]
50
- slices: [rtc-engine/enter-room, rtc-engine/publish-stream]
51
- description: Live 底层音视频依赖 RTC Engine 的进房和推流能力
52
-
53
- - id: call-rtc-engine
54
- products: [call, rtc-engine]
55
- slices: [rtc-engine/enter-room, rtc-engine/publish-stream]
56
- description: Call 底层音视频依赖 RTC Engine
57
-
58
- - id: call-chat-signaling
59
- products: [call, chat]
60
- slices: [chat/signaling]
61
- description: Call 的呼叫信令基于 Chat SDK 的信令能力
62
-
63
- # ============================================================
64
- # Slices — 原子能力片段索引
65
- # ============================================================
66
- slices:
67
-
68
- # ---- RTC Engine ----
69
- - id: rtc-engine/enter-room
70
- name: 进房
71
- tags: [enter-room, join, room, connection]
72
- platforms: [web, android, ios, flutter, electron]
73
- file: slices/rtc-engine/enter-room.md
74
- description: 进房参数配置、进房场景选择、进房回调处理、进房失败排障
75
- status: planned
76
-
77
- - id: rtc-engine/publish-stream
78
- name: 推流
79
- tags: [publish, stream, video, audio, camera, microphone]
80
- platforms: [web, android, ios, flutter, electron]
81
- file: slices/rtc-engine/publish-stream.md
82
- description: 本地音视频采集与推流、摄像头/麦克风管理、视频编码参数、推流状态回调
83
- status: planned
84
-
85
- # ---- Live: 基础设施 ----
86
- - id: live/login-auth
87
- name: 登录认证
88
- tags: [login, auth, SDKAppID, UserID, UserSig, LoginStore]
89
- platforms: [ios]
90
- file: slices/live/login-auth.md
91
- description: LoginStore 登录认证、SDKAppID/UserID/UserSig 配置、Info.plist 权限、Pod 依赖安装
92
- status: active
93
-
94
- - id: live/device-control
95
- name: 设备控制
96
- tags: [camera, microphone, device, DeviceStore, permission]
97
- platforms: [ios]
98
- file: slices/live/device-control.md
99
- description: 摄像头/麦克风的打开关闭、前后切换、设备权限处理
100
- status: active
101
-
102
- - id: live/error-codes
103
- name: 错误码速查
104
- tags: [error, error-code, troubleshoot, debug]
105
- platforms: [ios]
106
- file: slices/live/error-codes.md
107
- description: Live 产品全部错误码速查:通用、设备、房间、权限、REST API
108
- status: active
109
-
110
- # ---- Live: 主播端 ----
111
- - id: live/anchor-preview
112
- name: 开播前预览
113
- tags: [anchor, preview, LiveCoreView, pushView, camera]
114
- platforms: [ios]
115
- file: slices/live/anchor-preview.md
116
- description: 主播开播前的视频预览:LiveCoreView 创建、setLiveID、摄像头预览
117
- status: active
118
-
119
- - id: live/anchor-room-config
120
- name: 房间配置
121
- tags: [room, config, metadata, LiveListStore, room-name, cover]
122
- platforms: [ios]
123
- file: slices/live/anchor-room-config.md
124
- description: 房间名称、封面、MetaData 配置及限制
125
- status: active
126
-
127
- - id: live/anchor-lifecycle
128
- name: 开播与结束
129
- tags: [anchor, start, end, createLive, endLive, lifecycle]
130
- platforms: [ios]
131
- file: slices/live/anchor-lifecycle.md
132
- description: 主播开播 createLive、结束 endLive、事件监听、释放顺序
133
- status: active
134
-
135
- # ---- Live: 观众端 ----
136
- - id: live/live-list
137
- name: 直播列表
138
- tags: [list, fetch, category, slide-play, LiveListStore]
139
- platforms: [ios]
140
- file: slices/live/live-list.md
141
- description: 直播列表拉取、分页加载、分类筛选、滑动播放
142
- status: active
143
-
144
- - id: live/audience-watch
145
- name: 观众观看与退出
146
- tags: [audience, watch, join, leave, playView, LiveCoreView]
147
- platforms: [ios]
148
- file: slices/live/audience-watch.md
149
- description: 观众进房观看、退出、被踢处理、后台退出
150
- status: active
151
-
152
- - id: live/audience-list
153
- name: 观众列表
154
- tags: [audience, list, count, LiveAudienceStore]
155
- platforms: [ios]
156
- file: slices/live/audience-list.md
157
- description: 观众列表展示、人数统计、单列/双列布局
158
- status: active
159
-
160
- # ---- Live: 互动模块 ----
161
- - id: live/barrage
162
- name: 弹幕
163
- tags: [barrage, message, chat, mute, BarrageStore, danmu]
164
- platforms: [ios]
165
- file: slices/live/barrage.md
166
- description: 弹幕展示、发送文本/自定义弹幕、禁言管理、性能优化
167
- status: active
168
-
169
- - id: live/gift
170
- name: 礼物
171
- tags: [gift, send, receive, GiftStore, reward]
172
- platforms: [ios]
173
- file: slices/live/gift.md
174
- description: 礼物列表拉取、发送/接收礼物、扣费回调、事件驱动 UI
175
- status: active
176
-
177
- - id: live/audience-manage
178
- name: 观众管理
179
- tags: [manage, kick, admin, administrator, LiveAudienceStore]
180
- platforms: [ios]
181
- file: slices/live/audience-manage.md
182
- description: 踢出用户、设置/撤销管理员、人数频控
183
- status: active
184
-
185
- - id: live/beauty
186
- name: 基础美颜
187
- tags: [beauty, smooth, whiten, ruddy, BaseBeautyStore, filter]
188
- platforms: [ios]
189
- file: slices/live/beauty.md
190
- description: 磨皮/美白/红润调节、UI 滑块映射、状态订阅
191
- status: active
192
-
193
- - id: live/audio
194
- name: 音效
195
- tags: [audio, voice, effect, changer, reverb, ear-monitor, AudioEffectStore]
196
- platforms: [ios]
197
- file: slices/live/audio.md
198
- description: 人声音量、耳返、变声、混响、reset
199
- status: active
200
-
201
- - id: live/coguest-apply
202
- name: 连麦:观众申请
203
- tags: [coguest, apply, seat, mic, CoGuestStore, connect]
204
- platforms: [ios]
205
- file: slices/live/coguest-apply.md
206
- description: 观众申请上麦、主播审批、上麦后设备管理、断开连麦
207
- status: active
208
-
209
- # ---- Conference: 接入主线 ----
210
- - id: conference/login-auth
211
- name: 登录与鉴权
212
- tags: [login, auth, SDKAppID, UserID, UserSig, session, multi-device]
213
- platforms: [web]
214
- file: slices/conference/web/login-auth.md
215
- description: 统一登录态、SDKAppID/UserID/UserSig 鉴权、登录失效/会话过期/多端顶替处理
216
- status: active
217
-
218
- - id: conference/prejoin-check
219
- name: 入会前设备检查
220
- tags: [prejoin, device-check, camera, microphone, speaker, preview, selftest]
221
- platforms: [web]
222
- file: slices/conference/web/prejoin-check.md
223
- description: 摄像头/麦克风/扬声器的会前检测与本地预览,完成设备自检与降级准备
224
- status: active
225
-
226
- - id: conference/room-lifecycle
227
- name: 房间创建、加入、离开与结束
228
- tags: [room, lifecycle, create, join, leave, end]
229
- platforms: [web]
230
- file: slices/conference/web/room-lifecycle.md
231
- description: 会议从创建、加入、离开到结束的主链路,统一承接即时会议发起、加入已有会议与退场收口
232
- status: active
233
-
234
- # ---- Conference: 会议骨架 ----
235
-
236
- - id: conference/video-layout
237
- name: 视频布局
238
- tags: [layout, RoomView, layoutTemplate, participantViewUI, grid, sidebar, mobile-layout, screen-share]
239
- platforms: [web]
240
- file: slices/conference/web/video-layout.md
241
- description: 视频区域渲染、布局模板切换、主画面选择、共享突出展示、挂件扩展与移动端布局适配
242
- status: active
243
-
244
- - id: conference/room-schedule
245
- name: 预约会议
246
- tags: [schedule, reservation, future-meeting, reminder, list]
247
- platforms: [web]
248
- file: slices/conference/web/room-schedule.md
249
- description: 未来会议的创建、更新、取消、列表查询与到点提醒;到点入会由 room-lifecycle 接管
250
- status: active
251
-
252
- - id: conference/room-call
253
- name: 会中呼叫
254
- tags: [call, signaling, accept, reject, timeout, multi-device]
255
- platforms: [web]
256
- file: slices/conference/web/room-call.md
257
- description: 会议进行中向房外在线用户发起实时呼叫,处理接受/拒绝/超时/多设备收口等呼叫信令流程
258
- status: active
259
-
260
- # ---- Conference: 治理与互动 ----
261
- - id: conference/participant-list
262
- name: 参会人列表与状态
263
- tags: [participant, list, role, speaking, pagination, sync]
264
- platforms: [web]
265
- file: slices/conference/web/participant-list.md
266
- description: 参会人列表展示与同步,包括角色、发言态、音视频状态、业务扩展字段与分页加载
267
- status: active
268
-
269
- - id: conference/participant-management
270
- name: 参会人管理与角色治理
271
- tags: [kick, admin, role, transfer, invite-permission]
272
- platforms: [web]
273
- file: slices/conference/web/participant-management.md
274
- description: 角色治理(设/撤管理员、转移房主、移出成员、改名片)+ 房间级会控(全员禁麦/禁画/禁言、单成员关设备、设备申请审批与邀请)
275
- status: active
276
-
277
- - id: conference/room-chat
278
- name: 会中聊天
279
- tags: [chat, message, group, history, unread, disable-chat]
280
- platforms: [web]
281
- file: slices/conference/web/room-chat.md
282
- description: 会议与群组会话绑定、消息收发、历史分页、未读状态、禁聊联动
283
- status: active
284
-
285
- # ---- Conference: 设备、媒体与体验增强 ----
286
- - id: conference/device-control
287
- name: 设备控制
288
- tags: [camera, microphone, speaker, device, permission, switch, recovery]
289
- platforms: [web]
290
- file: slices/conference/web/device-control.md
291
- description: 会中摄像头/麦克风/扬声器的开关、切换、权限处理与异常恢复
292
- status: active
293
-
294
- - id: conference/network-quality
295
- name: 网络质量
296
- tags: [network, quality, rtt, packet-loss, reconnect, weak-network]
297
- platforms: [web]
298
- file: slices/conference/web/network-quality.md
299
- description: 会中网络状态感知、弱网提示、重连状态与超时告警
300
- status: active
301
-
302
- - id: conference/screen-share
303
- name: 屏幕分享
304
- tags: [screen-share, desktop, system-audio, state, event]
305
- platforms: [web]
306
- file: slices/conference/web/screen-share.md
307
- description: 桌面端共享屏幕、共享系统音频、共享状态监听、共享权限控制与共享相关事件
308
- status: active
309
-
310
- - id: conference/beauty-effects
311
- name: 美颜效果
312
- tags: [beauty, smooth, whiten, ruddy, preview, two-phase]
313
- platforms: [web]
314
- file: slices/conference/web/beauty-effects.md
315
- description: 本地视频的磨皮/美白/红润等基础美颜,本地预览与保存生效的两阶段流程
316
- status: active
317
-
318
- - id: conference/virtual-background
319
- name: 虚拟背景
320
- tags: [virtual-background, blur, replace, assetsPath, browser-support]
321
- platforms: [web]
322
- file: slices/conference/web/virtual-background.md
323
- description: 背景虚化/替换、模型资源与 assetsPath 配置、浏览器支持性检测、预览与保存生效链路
324
- status: active
325
-
326
- - id: conference/official-roomkit-api
327
- name: 官方 RoomKit 适配层 API
328
- tags: [official-roomkit, conference-api, conference-object, setWidgetVisible, registerWidget, onWill, setFeatureConfig, createAndJoinRoom, joinRoom, UIKitProvider]
329
- platforms: [web]
330
- file: slices/conference/web/official-roomkit-api.md
331
- description: 官方 RoomKit 集成模式下 conference 对象的完整 API 签名、枚举定义、调用时序和代码示例(ui_mode=official-roomkit 专用)
332
- status: active
333
-
334
- - id: conference/integration-audit
335
- name: Conference Web 集成审计
336
- tags: [audit, checklist, meta, integration-review, roomkit, online-classroom]
337
- platforms: [web]
338
- file: slices/conference/web/integration-audit.md
339
- description: 横切对照官方 Conference Web 接入流程的审计清单;Path B intent F 使用,不进 scenario 集成队列
340
- status: active
341
-
342
- # ============================================================
343
- # Scenarios — 场景组合索引
344
- # ============================================================
345
- scenarios:
346
- - id: 1v1-video-call
347
- name: 1v1 视频通话
348
- slices: [rtc-engine/enter-room, rtc-engine/publish-stream]
349
- file: scenarios/1v1-video-call.md
350
- description: 两个用户进行 1v1 视频通话的完整流程
351
- status: planned
352
-
353
- - id: entertainment-live-room
354
- name: 秀场直播间
355
- slices:
356
- - live/login-auth
357
- - live/device-control
358
- - live/anchor-preview
359
- - live/anchor-room-config
360
- - live/anchor-lifecycle
361
- - live/live-list
362
- - live/audience-watch
363
- - live/audience-list
364
- - live/barrage
365
- - live/gift
366
- - live/audience-manage
367
- - live/beauty
368
- - live/audio
369
- - live/coguest-apply
370
- - live/error-codes
371
- file: scenarios/live/entertainment-live-room.md
372
- description: 完整秀场直播间:主播开播+美颜+音效,观众进房+弹幕+礼物+连麦
373
- status: active
374
-
375
- - id: 1v1-video-consultation
376
- name: 1v1视频问诊
377
- room_type: standard
378
- base_scenario: general-conference
379
- industry: medical
380
- slices:
381
- - conference/login-auth
382
- - conference/prejoin-check
383
- - conference/room-lifecycle
384
- - conference/room-lifecycle
385
- - conference/room-call
386
- - conference/participant-list
387
- - conference/device-control
388
- - conference/network-quality
389
- - conference/room-chat
390
- - conference/video-layout
391
- file: scenarios/conference/medical/1v1-video-consultation.md
392
- description: 医疗 1v1 视频问诊:医生与患者一对一完成候诊叫号、入诊沟通、病历面板和问诊收口;新建项目优先使用 bundled medical consultation template
393
- status: active
394
-
395
- - id: medical-multidoctor-consultation
396
- name: 医疗会诊
397
- room_type: standard
398
- base_scenario: general-conference
399
- industry: medical
400
- slices:
401
- - conference/login-auth
402
- - conference/prejoin-check
403
- - conference/room-schedule
404
- - conference/room-lifecycle
405
- - conference/room-lifecycle
406
- - conference/room-call
407
- - conference/participant-list
408
- - conference/participant-management
409
- - conference/device-control
410
- - conference/network-quality
411
- - conference/room-chat
412
- - conference/video-layout
413
- - conference/screen-share
414
- file: scenarios/conference/medical/medical-multidoctor-consultation.md
415
- description: 医疗会诊:基于 general-conference 的医疗派生场景,多位医生围绕同一患者病例进行远程讨论、资料共享与会诊结论收口
416
- status: active
417
-
418
- - id: general-conference
419
- name: 通用会议
420
- room_type: standard
421
- industry: generic
422
- slices:
423
- - conference/login-auth
424
- - conference/prejoin-check
425
- - conference/room-lifecycle
426
- - conference/room-lifecycle
427
- - conference/participant-list
428
- - conference/video-layout
429
- - conference/device-control
430
- - conference/network-quality
431
- - conference/room-chat
432
- - conference/screen-share
433
- - conference/participant-management
434
- - conference/room-schedule
435
- - conference/room-call
436
- - conference/beauty-effects
437
- - conference/virtual-background
438
- file: scenarios/conference/base/general-conference.md
439
- description: 通用会议:会前预览首页承接新建/加入/预约会议,会中以宫格或演讲者布局、成员面板和底部协作工具栏为核心
440
- status: active
441
-
442
- - id: webinar-conference
443
- name: 研讨会 / 宣讲会
444
- room_type: webinar
445
- industry: generic
446
- slices:
447
- - conference/login-auth
448
- - conference/prejoin-check
449
- - conference/room-lifecycle
450
- - conference/room-lifecycle
451
- - conference/participant-list
452
- - conference/video-layout
453
- - conference/device-control
454
- - conference/network-quality
455
- - conference/room-chat
456
- - conference/screen-share
457
- - conference/participant-management
458
- - conference/room-schedule
459
- - conference/room-call
460
- file: scenarios/conference/base/webinar-conference.md
461
- description: 研讨会 / 宣讲会:主讲人中心化的 webinar 房型,会中以主舞台、聊天问答、受控上台和主持治理为核心
462
- status: active
@@ -1,133 +0,0 @@
1
- ---
2
- name: trtc-room-builder
3
- description: "INTERNAL skill — only invoked by trtc-topic during scenario execution. Do NOT trigger directly from user messages. Provides official RoomKit integration rules and the bundled medical consultation template. Always route user requests through trtc-onboarding first."
4
- ---
5
-
6
- # TRTC Room Builder
7
-
8
- 把官方 RoomKit 会议能力集成进现有 Vue 3 应用,或在医疗在线问诊全新项目场景下
9
- 复制内置模板。
10
-
11
- - **Official RoomKit 集成模式**:官方 RoomKit 组件 + 官方 API → 快速接入现有业务应用,并通过官方扩展点微调界面
12
- - **医疗在线问诊新项目模板**:完整复制内置医疗问诊项目模板
13
-
14
- > 本 skill 不再提供 full-ui 自定义会议界面生成路径。
15
-
16
- ---
17
-
18
- ## Invocation entry points
19
-
20
- 本 skill 由 `../trtc-topic/SKILL.md` 在 `official-roomkit` 会议 UI 集成模式下消费。
21
-
22
- 当用户在 onboarding A2-Q0.5 选择"官方 UI"时,
23
- `${CLAUDE_PROJECT_DIR}/.trtc-session.yaml` 会写入
24
- `ui_mode: official-roomkit`。topic 读取本 skill 的"官方 RoomKit 集成模式"
25
- 作为生成规范,集成官方组件并使用官方 API 微调界面。
26
-
27
- ---
28
-
29
- ## 官方 RoomKit 集成模式
30
-
31
- 当用户要在**已有 Vue 3 项目中集成会议/接入多人会议/接入 TUIRoomKit/使用官方
32
- RoomKit** 时,走官方 RoomKit 集成模式。
33
-
34
- ### 触发关键词
35
-
36
- - 中文:集成会议、接入会议、多人会议 SDK、视频会议 SDK、官方 RoomKit、
37
- TUIRoomKit、含 UI 集成、快速接入、界面微调
38
- - 英文:integrate meeting, add conference, official RoomKit, TUIRoomKit,
39
- Web&H5 Vue3, customize RoomKit UI
40
-
41
- ### 实施规则
42
-
43
- 1. 使用官方 Web RoomKit 包;如果要使用界面微调 API,必须确认 lockfile 中实际解析到的
44
- `@tencentcloud/roomkit-web-vue3` 版本 `>=5.4.3`。安装
45
- `@tencentcloud/roomkit-web-vue3@5` 可以作为官方大版本入口,但不能接受解析到
46
- `<5.4.3` 的既有依赖。并按官方快速接入文档安装相关包:
47
- `tuikit-atomicx-vue3`、`@tencentcloud/uikit-base-component-vue3`、
48
- `@tencentcloud/universal-api`。
49
- 2. 页面层渲染官方组件:PC 使用 `ConferenceMainView`,H5 使用
50
- `ConferenceMainViewH5`(二者从 `@tencentcloud/roomkit-web-vue3` 导入),
51
- 外层包裹 `UIKitProvider`(从 `@tencentcloud/uikit-base-component-vue3` 导入),
52
- 并根据业务需要设置 `theme="light" | "dark"`、`language="zh-CN" | "en-US"`。
53
- 3. 登录与房间生命周期使用官方 `conference` API:`conference.login()`、
54
- `conference.setSelfInfo()`、`conference.createAndJoinRoom()`、
55
- `conference.joinRoom()`、`conference.leaveRoom()`、`conference.endRoom()`、
56
- `RoomEvent` 监听。
57
- 4. 房间号 `roomId` 必须来自业务系统或由业务系统保证唯一;在线问诊、1v1 客服等
58
- 双方不确定谁先建房的场景,可统一用业务单据号作为 `roomId` 并调用
59
- `conference.createAndJoinRoom()`。
60
- 5. UserSig:`usersig-handling.md` 三路径 — `local-dev`(bundled lib)、`console`(控制台粘贴,保留)、`backend`(生产)。
61
- 6. 按钮、工具栏、内置按钮点击前拦截只使用官方界面微调 API:
62
- `conference.setWidgetVisible()` 隐藏/恢复内置按钮,
63
- `conference.registerWidget()` 添加自定义业务按钮或侧边面板,
64
- `conference.onWill()` 拦截内置按钮点击前的操作。
65
- 7. `setWidgetVisible()`、`registerWidget()`、`onWill()` 尽量放在
66
- `conference.login()` 成功之后、`conference.createAndJoinRoom()` /
67
- `conference.joinRoom()` 之前,避免按钮闪烁或拦截器漏掉早期操作。
68
- 8. `conference.setFeatureConfig()` 只用于官方文档定义的特性配置。尤其是
69
- `shareLink` 必须在 `conference.createAndJoinRoom()` / `conference.joinRoom()`
70
- 成功后立即设置,确保使用最终确定的 `roomId`。
71
- 9. `registerWidget()` 和 `onWill()` 返回的注销函数必须统一收集,并在
72
- `RoomEvent.ROOM_LEAVE` 和 `RoomEvent.ROOM_DISMISS` 两个事件里清理,避免多次进出
73
- 房间后重复注册。
74
-
75
- ### 禁止事项
76
-
77
- - 不要复制已移除的 full-ui 主题资产到客户项目,也不要要求生成的 Vue 组件满足
78
- `ui-*` class 数量规则。
79
- - 不要手写一套替代 RoomKit 主界面的会议 SFC;官方组件承担会议主界面,业务侧只
80
- 负责外层路由、登录、房间号、事件监听和官方 UI 微调 API。
81
- - 本地开发可使用 bundled signing lib(`src/config/basic-info-config.ts` + `lib-generate-test-usersig-es.min.js`),
82
- 与医疗模板同源;生产环境禁止把 SecretKey 放进客户端。
83
- - 不要手写 `src/utils/usersig.ts`,不要新增 `crypto-js` / `pako` / `tls-sig-api-v2`。
84
- - 不要用 CSS 选择器或 DOM hack 修改 RoomKit 内部按钮显隐、点击前权限和工具栏
85
- 扩展;这些需求必须使用 `setWidgetVisible()`、`registerWidget()`、`onWill()`。
86
- - 不要在进房前写死 `setFeatureConfig({ shareLink })`;分享链接依赖最终 `roomId`,
87
- 应在 `createAndJoinRoom()` / `joinRoom()` 成功后设置。
88
-
89
- ### API 签名与代码示例
90
-
91
- > **所有 `conference` 适配层 API 的完整签名、枚举定义和集成示例已移至
92
- > `knowledge-base/slices/conference/web/official-roomkit-api.md`。**
93
- >
94
- > 生成 official-roomkit 模式代码前,**必须先 Read 该 slice 文件**,
95
- > 使用其中经过源码验证的签名,不得自行推测参数。
96
-
97
- 参考文档:
98
-
99
- - 快速接入 Web&H5 (Vue3):<https://cloud.tencent.com/document/product/647/81962>
100
- - 界面微调 (Web):<https://cloud.tencent.com/document/product/647/129842>
101
-
102
- ---
103
-
104
- ## 医疗在线问诊新项目直拷规则
105
-
106
- 当用户需求落在医疗在线问诊(例如 `1v1-video-consultation`、远程问诊、
107
- 医生/患者视频问诊、在线诊疗)并且明确是**生成全新项目**,不要进入 full-ui
108
- 自定义界面生成、theme-copy、手写 Vue SFC 或任何 verifier 流程。
109
-
110
- 直接把本 skill 内置模板目录完整复制到用户指定的本地项目目录:
111
-
112
- ```text
113
- skills/trtc/room-builder/templates/scenarios/medical-consultation/
114
- ```
115
-
116
- 复制时保留模板项目的文件结构、路由、样式、服务适配器、mock 数据和文档。
117
- 交付或接入说明中必须提醒客户使用 `pnpm install` 安装依赖,并使用
118
- `pnpm dev` 启动本地开发服务;不要推荐 `npm install` / `npm run dev`,因为
119
- 该医疗模板使用 npm 启动会明显变慢,首屏可能白屏一段时间。
120
- 本规则只适用于全新医疗问诊项目;对既有项目做集成/改造时,继续按
121
- scenario / official-roomkit 规则处理。
122
-
123
- ## 资源目录
124
-
125
- ```text
126
- trtc/room-builder/
127
- ├── SKILL.md
128
- ├── templates/
129
- │ └── scenarios/
130
- │ └── medical-consultation/
131
- └── tools/
132
- └── render_ai_instructions.py
133
- ```