chat-uikit
This is the parent skill for Tencent Chat TUIKit integration across all platforms. It should be used when users want to build instant messaging (IM) features but have not specified a particular platform/framework. This skill guides platform selection and provides common knowledge shared across all Chat TUIKit implementations. For platform-specific guidance, use the corresponding sub-skills (chat/vue, chat/react, etc.).
What this skill does
# Chat TUIKit Integration Skill (Multi-Platform Aggregation)
> ๐ **Parent Skill**: This is a sub-skill of `tencent-rtc-skills` (root skill).
> If user's intent is ambiguous across products (Chat/Call/Live/Room), load the root skill first for product recommendation.
> **๐ Global Reference**: This sub-skill follows the global standards defined in ROOT SKILL (`/SKILL.md`):
> - Skill-First Principle (priority order)
> - Boundary Recognition Pattern
> - MCP Tools Reference (record_prompt, get_usersig, record_result)
> - MCP Tool Call Sequence Pattern
> - Documentation-Driven Integration Rules
> - Silent Execution Rules
> - Zero External Configuration
> - Auto-Fetch Authentication Credentials
> - Agent Execution Checklist Template
> - CSS Style Specification (Web only)
> - Vite Build Patch (Web only)
> - Platform Selection Prompt Template
> - Mandatory Guidance Flow Template
---
## ๐ต Boundary Recognition (Chat-Specific)
### Keywords That CONFIRM Chat Scope
Only proceed with Chat integration if user's request contains:
- chat, IM, instant messaging
- message, conversation
- group chat, private chat
- TUIKit (without Call/Room/Live prefix)
- WeChat-like messaging
### OUT OF SCOPE โ Redirect
| User Keywords | Redirect To |
|---------------|-------------|
| "video conference" / "meeting" / "conference" | TUIRoomKit (Room) |
| "call" / "phone call" / "1-to-1 video" | TUICallKit (Call) |
| "live streaming" / "host" / "audience" | TUILiveKit (Live) |
---
## Overview
This Skill serves as the **multi-platform aggregation entry point** for Tencent Cloud Chat TUIKit:
1. Users need instant messaging features but have not specified a platform/framework
2. Need to understand capability differences and selection recommendations across platforms
3. Need cross-platform common concepts and knowledge
**Platform-Specific Guidance**: Once the platform is determined, use the corresponding sub-Skill:
- `chat/vue` - Vue3 Web Applications
- `chat/react` - React Web Applications
- `chat/android` - Android Native Applications
- `chat/ios` - iOS Native Applications
- `chat/flutter` - Flutter Cross-Platform Applications
- `chat/uniapp` - uni-app Cross-Platform Applications
---
## ๐ด CRITICAL: Intent Recognition & Mandatory Guidance Flow
### Trigger Conditions
When user request matches **ANY** of the following patterns, this mandatory guidance flow MUST be triggered:
**Trigger Keywords**:
- "Integrate Chat UIKit", "Add chat feature", "Implement instant messaging"
- "Build chat application", "Add IM functionality", "Integrate TUIKit"
- "Help me integrate Chat UIKit in project", "Want to add messaging feature"
### ๐จ MANDATORY: Pre-Execution Checklist (Two Required Items)
Before proceeding with ANY code generation, Agent **MUST** verify:
| Step | Required Info | Status Check | If Missing |
|------|---------------|--------------|------------|
| **1** | **Platform/Framework** | Does user specify Vue/React/Android/iOS/Flutter/uni-app? | โ MUST prompt user to select |
| **2** | **Integration Mode** | Does user specify full-featured or chat-only? | โ MUST prompt user to select |
### ๐ด BLOCKING RULE: DO NOT PROCEED WITHOUT BOTH ANSWERS
```
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ โ STOP: If platform OR integration mode is missing, Agent โ
โ MUST NOT call any MCP tools or generate code. โ
โ Agent MUST complete BOTH steps in order FIRST. โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
```
---
## ๐ Mandatory Guidance Prompts
### When Platform/Framework is Unclear
**Agent MUST output the following prompt to user**:
```markdown
To integrate Chat UIKit, I need to know which **platform/framework** you're using:
**๐ Web Applications**
- **Vue3** - Recommended for enterprise admin systems, quick prototypes
- **React** - Suitable for complex frontend applications
**๐ฑ Mobile Native**
- **Android** - Native Android applications
- **iOS** - Native iOS applications
**๐ Cross-Platform**
- **Flutter** - High-performance cross-platform (iOS + Android)
- **uni-app** - One codebase for multiple platforms (WeChat Mini Program, H5, App)
๐ **Please select your target platform**, or tell me about your project tech stack so I can recommend one.
```
### When Integration Mode is Unclear
**Agent MUST output the following prompt to user**:
```markdown
Chat UIKit provides two integration modes, please select based on your needs:
**๐ฆ Full-Featured Mode (`full-featured`)**
- Complete IM functionality: Conversation list + Chat window + Contacts + Group management
- Suitable for: Social apps, enterprise communication, comprehensive IM applications
- Outcome: Complete chat app similar to WeChat/Slack
**๐ฌ Chat-Only Mode (`chat-only`)**
- Lightweight: Only the chat window component
- Suitable for: Customer service systems, online consultation, order details private chat
- Outcome: Embeddable chat dialog component
๐ **Please select your integration mode**, or describe your business scenario and I'll recommend one.
```
### Combined Prompt (When Both Are Unclear)
**When user simply says "Help me integrate Chat UIKit" without any context, Agent MUST use `ask_followup_question` tool**:
```
Tool: ask_followup_question
Parameters:
title: "Chat UIKit Integration Configuration"
questions: [
{
"id": "platform",
"question": "1๏ธโฃ Please select your development platform/framework:",
"options": [
"๐ Vue3 - Enterprise admin systems, quick prototypes",
"๐ React - Complex frontend applications",
"๐ฑ Android - Native Android applications",
"๐ฑ iOS - Native iOS applications",
"๐ Flutter - High-performance cross-platform",
"๐ uni-app - One codebase for multiple platforms"
],
"multiSelect": false
},
{
"id": "mode",
"question": "2๏ธโฃ Please select integration mode:",
"options": [
"๐ฆ full-featured - Complete IM features (Conversation list + Chat + Contacts)",
"๐ฌ chat-only - Chat window only (Lightweight dialog)"
],
"multiSelect": false
}
]
```
---
## ๐ฏ Platform Selection Guide
### Step 1: Determine the User's Target Platform
When users request Chat TUIKit integration without specifying a platform, you must first guide them to choose:
**Example Prompt**:
> "Which platform would you like to integrate instant messaging features on?
> - **Web Applications**: Vue3 / React
> - **Mobile Native**: Android / iOS
> - **Cross-Platform**: Flutter / uni-app"
### Step 2: Recommend Platform Based on Scenario
| User Scenario | Recommended Platform | Reason |
|--------------|---------------------|--------|
| Enterprise Admin System | Vue3 / React | Web is easier to manage and maintain |
| Consumer Social App | Android / iOS / Flutter | Better native experience |
| E-commerce Mini Program | uni-app | One codebase for multiple platforms |
| Quick Prototype Validation | Vue3 | High development efficiency |
| Offline Capability Required | Android / iOS | Better native support |
### Step 3: Call Platform-Specific MCP Tools
**โ ๏ธ After user has confirmed BOTH items (platform + mode)**, call the corresponding MCP tool:
| Platform | MCP Tool | framework Parameter |
|----------|----------|-------------------|
| Vue3 | `get_web_chat_uikit_integration` | `"vue"` |
| React | `get_web_chat_uikit_integration` | `"react"` |
| uni-app | `get_web_chat_uikit_integration` | `"uniapp-app"` |
| Android | `get_native_chat_uikit_integration` | `"android"` |
| iOS | `get_native_chat_uikit_integration` | `"ios"` |
| Flutter | `get_native_chat_uikit_integration` | `"flutter"` |
---
## ๐ฆ Cross-Platform Common Concepts
The following concepts apply to Chat TUIKit across all platforms:
### 1. Integration Modes (Goals)
| Mode | Description | Applicable Scenarios |
|------|-------------|---------------------|
| `full-featured` | Complete IM Features | Social Apps, Enterprise Communications |
Related in Web Dev
generating-lwc-components
IncludedLightning Web Components with PICKLES methodology and 165-point scoring. Use this skill when the user creates or edits LWC components, builds wire service patterns, or writes Jest tests for LWC. TRIGGER when: user creates/edits LWC components, touches lwc/**/*.js, .html, .css, .js-meta.xml files, or asks about wire service, SLDS, or Jest LWC tests. DO NOT TRIGGER when: Apex classes (use generating-apex), Aura components, or Visualforce.
tanstack-query
IncludedManage server state in React with TanStack Query v5. Set up queries with useQuery, mutations with useMutation, configure QueryClient caching strategies, implement optimistic updates, and handle infinite scroll with useInfiniteQuery. Use when: setting up data fetching in React projects, migrating from v4 to v5, or fixing object syntax required errors, query callbacks removed issues, cacheTime renamed to gcTime, isPending vs isLoading confusion, keepPreviousData removed problems.
document-processor-api
IncludedProcess documents with Nutrient DWS. Use when the user wants to generate PDFs from HTML or URLs, convert Office/images/PDFs, assemble or split packets, OCR scans, extract text/tables/key-value pairs, redact PII, watermark, sign, fill forms, optimize PDFs, or produce compliance outputs like PDF/A or PDF/UA. Triggers include convert to PDF, merge these PDFs, OCR this scan, extract tables, redact PII, sign this PDF, make this PDF/A, or linearize for web delivery.
nutrient-document-processing
IncludedProcess documents with Nutrient DWS. Use when the user wants to generate PDFs from HTML or URLs, convert Office/images/PDFs, assemble or split packets, OCR scans, extract text/tables/key-value pairs, redact PII, watermark, sign, fill forms, optimize PDFs, or produce compliance outputs like PDF/A or PDF/UA. Triggers include convert to PDF, merge these PDFs, OCR this scan, extract tables, redact PII, sign this PDF, make this PDF/A, or linearize for web delivery.
tanstack-query
IncludedManage server state in React with TanStack Query v5. Covers useMutationState, simplified optimistic updates, throwOnError, network mode (offline/PWA), and infiniteQueryOptions. Use when setting up data fetching, fixing v4โv5 migration errors (object syntax, gcTime, isPending, keepPreviousData), or debugging SSR/hydration issues with streaming server components.
accelint-nextjs-best-practices
IncludedNext.js performance optimization and best practices. Use when writing Next.js code (App Router or Pages Router); implementing Server Components, Server Actions, or API routes; optimizing RSC serialization, data fetching, or server-side rendering; reviewing Next.js code for performance issues; fixing authentication in Server Actions; or implementing Suspense boundaries, parallel data fetching, or request deduplication.