Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

SmartAssist

High-performance Rust implementation of the SmartAssist AI agent gateway.

SmartAssist is a multi-channel AI agent platform: a single gateway process runs an agent runtime with a large built-in tool library, exposes a JSON-RPC API over WebSocket, and bridges out to messaging channels (Telegram, Discord, Slack, Signal, WhatsApp, iMessage, LINE, and a browser-based web chat) while talking to pluggable model providers (Anthropic, OpenAI, Google).

Key metrics: 167 source files, 725 tests passing, 101 agent tools, 46 gateway RPC methods, 11 workspace crates.

Workspace crates

CrateDescription
smartassist-coreCore types, configuration, and shared utilities
smartassist-sandboxCommand execution sandboxing with platform-specific profiles
smartassist-channelsMessaging channel abstractions (Telegram, Discord, Slack, etc.)
smartassist-agentAgent runtime with tool execution framework
smartassist-memoryMemory and context management for agents
smartassist-gatewayJSON-RPC gateway server over WebSocket
smartassist-cliCommand-line interface
smartassist-plugin-sdkPlugin development kit for extensions
smartassist-providersModel provider integrations (Anthropic, OpenAI, Google)
smartassist-secretsEncrypted secrets and credential management
smartassist-securityGuardrails, sandboxing policy, and security tooling
smartassist-learningsLearnings/improvement engine for agent self-tuning
smartassist-browserBrowser automation
smartassist-canvasCanvas/UI surface support
smartassist-cronScheduled task execution
smartassist-transcriptionAudio transcription
smartassist-talkVoice/talk interface
smartassist-mcpModel Context Protocol integration

Architecture

┌─────────────────────────────────────────────────────────────────┐
│                        smartassist-cli                          │
│                    (Command-line interface)                     │
└─────────────────────────────────────────────────────────────────┘
                               │
                               ▼
┌─────────────────────────────────────────────────────────────────┐
│                      smartassist-gateway                        │
│              (JSON-RPC over WebSocket server)                   │
│                                                                 │
│  ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐            │
│  │  Health  │ │   Chat   │ │ Sessions │ │  Config  │  ...       │
│  │ Handler  │ │ Handler  │ │ Handler  │ │ Handler  │            │
│  └──────────┘ └──────────┘ └──────────┘ └──────────┘            │
└─────────────────────────────────────────────────────────────────┘
                               │
          ┌────────────────────┼────────────────────┐
          ▼                    ▼                    ▼
┌──────────────────┐  ┌──────────────────┐  ┌──────────────────┐
│ smartassist-agent│  │smartassist-      │  │smartassist-memory│
│ (Agent runtime)  │  │  channels        │  │ (Context store)  │
│                  │  │  (Messaging)     │  │                  │
│  ┌────────────┐  │  │  ┌──────────┐    │  │  ┌────────────┐  │
│  │ Tools      │  │  │  │ Telegram │    │  │  │ Embeddings │  │
│  ├────────────┤  │  │  ├──────────┤    │  │  ├────────────┤  │
│  │ Sessions   │  │  │  │ Discord  │    │  │  │ Vector DB  │  │
│  ├────────────┤  │  │  ├──────────┤    │  │  └────────────┘  │
│  │ Streaming  │  │  │  │ Slack    │    │  │                  │
│  └────────────┘  │  │  ├──────────┤    │  └──────────────────┘
│                  │  │  │ Signal   │    │
│                  │  │  ├──────────┤    │
│                  │  │  │ WhatsApp │    │
│                  │  │  ├──────────┤    │
│                  │  │  │ Web +more│    │
│                  │  │  └──────────┘    │
└──────────────────┘  └──────────────────┘
          │
          ▼
┌──────────────────┐  ┌──────────────────┐  ┌──────────────────┐
│smartassist-      │  │smartassist-      │  │ smartassist-     │
│  sandbox         │  │  providers       │  │  secrets         │
│ (Cmd execution)  │  │ (AI models)      │  │ (Credentials)    │
└──────────────────┘  └──────────────────┘  └──────────────────┘
          │                    │                    │
          ▼                    ▼                    ▼
┌─────────────────────────────────────────────────────────────────┐
│                       smartassist-core                          │
│                    (Types & configuration)                      │
└─────────────────────────────────────────────────────────────────┘

Implementation status

All four specification phases are complete:

PhaseFocusStatus
Phase 1Core Infrastructure (providers, gateway, tools)Complete
Phase 2Channels (Telegram, Discord, Slack, Signal, WhatsApp, iMessage, LINE, Web)Complete
Phase 3Advanced Features (Plugin SDK, browser automation, memory/embeddings)Complete
Phase 4Platform & Polish (CLI, config validation, comprehensive testing)Complete

Where to go next