ADP-Chat-Client

ADP Chat Client Introduction

The bridge between enterprise and AI Agents.

Overview

ADP-Chat-Client is an open-source client framework for building conversational interfaces for AI agents. It provides a ready-to-use, fully customizable frontend and a lightweight, reliable backend service layer. With this project, you can deploy agent applications built on the Tencent Cloud Agent Development Platform (Tencent Cloud ADP) as web apps, or seamlessly embed them into Mini Programs, Android, iOS, and other multi-platform environments, reusing existing workflows and architecture without rebuilding core features.

The system includes built-in features such as real-time chat, conversation history, voice input, and image understanding. It also supports third-party identity integration (OAuth and redirect-based login). The frontend is built with the TDesign component system and supports theme and interaction customization, while the backend can be deployed quickly via Docker to reduce integration and operational overhead.

Why Chose ADP-Chat-Client

  • Go live in 5 minutes: one-click Docker deployment skips lengthy environment setup and module wiring, moving faster from build to launch.
  • 0 friction ADP integration: plug directly into ADP’s mature capabilities (NLP, multimodal interaction, knowledge base/RAG, workflows, etc.)—no reinventing the wheel.
  • Enterprise-grade end-to-end: identity, audit & compliance, persistent/retrievable chat data, HTTPS/reverse proxy—covering the full journey from UX to governance.

Core Capabilities

  • Multi-platform delivery: Web first; embeddable in Mini Programs / Android / iOS.
  • Real-time chat: stable connectivity to ADP agents; supports text and mixed text-image interactions.
  • Conversation history: automatic persistence; organize by user/app/time; search and export (integrates with PostgreSQL, etc.).
  • Voice input: Tencent Cloud ASR over WebSocket for low latency (=< 800 ms).
  • Image understanding: upload/parse images within chats for natural multimodal flows.
  • Identity integration: GitHub and Microsoft Entra ID (OAuth); or a lightweight URL-redirect flow for in-house identity.
  • Themes & UI: TDesign-based theming and component extensions.
  • Containerized deployment: Docker packaging for reusable environments, smooth migrations, canary and rollback.

Main Components

1. Frontend

  • Stack: Vue 3 (Composition API) + TypeScript + TDesign

  • Highlights:

    • High component reuse; easy to maintain
    • Customizable theme colors, font sizes, and interaction behavior
    • Fits enterprise embedding (iFrame / WebView / Mini Program web container, etc.)

2. Backend

  • Stack: Python (Sanic)

  • Responsibilities:

    • Unified router exposing HTTP endpoints
    • Business core wrapping ADP and third-party calls
    • Middleware for auth, audit, rate limiting, logging, and other governance features
    • Config system for secrets and multi-env parameters
    • Persistence for conversations and user state (e.g., PostgreSQL)

Identity Integration

Two login integration options help you adapt to different enterprise IT setups:

1) OAuth

GitHub OAuth and Microsoft Entra ID OAuth are supported out of the box via .env configuration. To add other providers, extend the adapter logic in server/core/oauth.py. Pros: minimal changes, unified identity & permissions, audit/compliance friendly.

2) URL Redirect

If you have an in-house identity system but no standard OAuth yet, use a lightweight redirect flow:

  • Your existing system generates a login URL carrying CustomerId, Name, ExtraInfo, Timestamp, Code
  • After HMAC-SHA256 verification, the chat client auto-creates/binds the account and establishes a session Best for: legacy systems that are hard to modify, where “login-free” handoff is needed quickly.

Architecture

ComponentDescription
configConfiguration system
coreCore logic, decoupled from transport (e.g., http/stdio)
middlewareSanic server middleware
routerPublic HTTP entry point, typically a thin wrapper over core
staticStatic assets
testTests
utilUtility helpers

What’s next

Once you’re familiar with adp-chat-client’s role and capabilities, head to Quick Start to deploy locally or on a server.

On this page