Jon 11e799188d Add Python manager: FastAPI backend + web UI
- main.py: FastAPI app with profile CRUD, start/stop, send message endpoints
- profiles.py: asyncio bot lifecycle using simplex-chat Python SDK
- db.py: SQLite registry tracking profiles, types, config, addresses
- templates/: Jinja2 + HTMX web UI
  - login.html: token-based auth
  - index.html: profile list with live status polling, create dialog
  - profile.html: per-bot dashboard with QR code, contacts/groups, event log, send form
- requirements.txt: fastapi, uvicorn, jinja2, simplex-chat
- start.sh: one-command startup with venv bootstrap

Bot types: echo, broadcast, support (business address), directory, deadmans
Run: cd manager && MANAGER_TOKEN=secret ./start.sh

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-03 00:53:41 +01:00

SimpleX Manager

A collection of SimpleX Chat bots and tools, plus a Python-based profile manager (in development).

Structure

bots/
  haskell/
    simplex-deadmans-bot/   Dead Man's Switch bot
    simplexxx-directory/    Private SimpleXXX directory bot (fork of simplex-directory-service)
  typescript/
    simplex-support-bot/    Support triage bot with AI (Grok / Ollama / OpenAI-compatible)
manager/                    Python profile manager (coming soon)
web/                        SimpleXXX directory web frontend

Support Bot — AI Configuration

The support bot supports any OpenAI-compatible AI backend.

# xAI Grok (default)
AI_API_KEY=xai-xxx npm start -- --team-group "Support" --context-file ctx.txt

# Ollama (local, no key needed)
npm start -- --team-group "Support" --context-file ctx.txt \
             --ai-url http://localhost:11434/v1 \
             --ai-model llama3.2

# OpenAI
AI_API_KEY=sk-xxx npm start -- --team-group "Support" --context-file ctx.txt \
             --ai-url https://api.openai.com/v1 \
             --ai-model gpt-4o

GROK_API_KEY is still accepted as a legacy alias for AI_API_KEY.

Web Frontend

Static site for the SimpleXXX directory. Reads from web/data/listing.json and web/data/promoted.json written by the simplexxx-directory bot (--web-folder flag).

Serve with any static file server:

cd web && python3 -m http.server 8080
# or nginx pointing at this directory

Python Manager

Coming soon — FastAPI-based manager to create and manage multiple SimpleX bot profiles from a web UI.

Description
No description provided
Readme 1.3 MiB
Languages
Haskell 52.3%
TypeScript 28%
HTML 13.8%
Python 5.5%
Shell 0.4%