Autonomous Financial Intelligence Agent with Multi-Channel Messaging
MarketBot Finance is an autonomous AI agent designed for financial analysis and market intelligence. It operates across multiple messaging platforms and provides deep reasoning capabilities through a multi-agent architecture.
MarketBot is designed around a gateway-first runtime with a market analysis engine that can operate in real time, across channels, and with tool-assisted research. The focus is actionable market intelligence: structured analysis, clear risk/invalidation levels, and reproducible workflows.
- The Gateway is the central WebSocket server for sessions, routing, and tool execution.
- CLI, TUI, and Web UI connect to the Gateway, or run embedded locally with
--localfor single-machine use.
- Agents orchestrate model calls, enforce prompts, and structure outputs for trading analysis.
- Model providers and fallbacks are configured per agent, so you can mix research models and execution models.
- Tools enable web search/fetch, browser automation, memory, and data parsing.
- Skills encapsulate repeatable market workflows (reports, risk checklists, catalyst tracking).
- Multi-channel messaging for alerts and delivery (Telegram, Slack, Discord, WhatsApp, Signal, iMessage, Web).
- Nodes (macOS/iOS/Android/headless) provide device-level capabilities such as canvas, camera, screen, or location.
- State lives under
~/.marketbot(sessions, logs, caches). - Config is JSON5 and can be set via
MARKETBOT_CONFIG_PATHor~/.marketbot/marketbot.json.
- Gateway: WebSocket server for sessions, routing, and tool execution.
- Agents: Market-focused prompt orchestration, model selection, and output shaping.
- Channels: Multi-channel delivery and inbound routing.
- Tools: Web search/fetch, browser automation, memory, media, and exec.
- Skills: Reusable market workflows (reports, catalysts, risk checks).
- Nodes: Device clients with UI/canvas/camera/screen capabilities.
- CLI/TUI: Operator UX for analysis and command execution.
src/agents/: agent runtime, prompts, compaction, tool wiring.src/gateway/: WebSocket server, protocol handling, routing.src/channels/: channel adapters (Telegram, Slack, Discord, etc.).src/cli/: CLI/TUI commands and UX helpers.src/memory/: memory store and retrieval.src/providers/: model/provider integrations and adapters.extensions/: plugin manifests and optional integrations.skills/: reusable skills and workflows.apps/: native clients (macOS, iOS, Android).docs/: documentation sources.
git clone https://github.com/EthanAlgoX/MarketBot.git
cd MarketBot
pnpm install
pnpm buildLaunch the interactive onboarding wizard to configure your model providers and API keys.
pnpm start -- onboardTip
This will guide you through setting up your AI providers (DeepSeek, OpenAI, etc.) and save the configuration to marketbot.json.
The Gateway manages your sessions and model connections. You must leave this process running.
pnpm start -- gatewayOpen a new terminal window or tab, and connect to your gateway. It will automatically use the token from your .env.
pnpm tuiRun structured analysis directly from the CLI.
pnpm start -- analyze --asset BTC --timeframe 1hThe Terminal UI provides market-focused slash commands:
| Command | Description |
|---|---|
/help |
Show all commands |
/status |
Gateway status |
/model <name> |
Switch model |
/agent <id> |
Switch agent |
/session <key> |
Switch session |
| Command | Description |
|---|---|
/analyze <symbol> |
Quick market analysis with catalysts |
/technicals <symbol> |
Technical analysis (RSI, MACD, S/R) |
/sentiment [symbol] |
Sentiment analysis |
/news [symbol] |
Latest market news |
/portfolio |
Portfolio overview |
/watch <symbol> |
Add to watchlist |
Example:
/analyze NVDA
/technicals SPYMarketBot is best configured using the interactive onboarding wizard:
pnpm start -- onboardAlternatively, you can manage providers directly in the TUI using the /provider command.
While most configuration lives in marketbot.json, you can use these environment variables for advanced setup:
| Variable | Description |
|---|---|
MARKETBOT_GATEWAY_TOKEN |
Secure token for Gateway authentication |
MARKETBOT_CONFIG_PATH |
Path to config file (default: ~/.marketbot/marketbot.json) |
MARKETBOT_STATE_DIR |
Directory for sessions, logs, and caches |
MarketBot supports 55+ extensible skills:
| Category | Skills |
|---|---|
| Finance | market-report, catalyst-tracker |
| Productivity | notion, obsidian, apple-notes, trello |
| Development | github, coding-agent, skill-creator |
| Communication | discord, slack, telegram |
| Media | video-frames, openai-whisper, camsnap |
| Utilities | weather, 1password, tmux |
# List available skills
pnpm start -- skills list
# Install a skill
pnpm start -- skills install <skill-name>docker-compose up -dpnpm start -- gateway install
sudo systemctl enable marketbot
sudo systemctl start marketbotThis project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0). See LICENSE for details.

