Files
simplex-manager/bots/haskell/README.md
Jon 5c80ac310f Initial commit: bots, AI-parameterised support bot, web frontend
- simplex-deadmans-bot: Dead Man's Switch Haskell bot
- simplexxx-directory: private SimpleXXX directory bot (fork of simplex-directory-service)
- simplex-support-bot: support triage bot with configurable AI backend
  - --ai-url and --ai-model flags for any OpenAI-compatible provider
  - works with Grok, Ollama, OpenAI, LM Studio, etc.
  - AI_API_KEY env var (GROK_API_KEY still accepted as alias)
- web: SimpleXXX directory frontend (Groups/Channels tabs, matches simplex.chat/directory style)
- manager/: placeholder for Python profile manager (coming soon)

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

1.6 KiB

Haskell Bots

These bots must be built as part of the simplex-chat cabal project.

Setup

  1. Clone simplex-chat (stable branch):

    git clone https://github.com/simplex-chat/simplex-chat.git
    cd simplex-chat
    git checkout stable
    
  2. Copy bot directories into apps/:

    cp -r simplex-deadmans-bot simplex-chat/apps/
    cp -r simplexxx-directory  simplex-chat/apps/
    
  3. Add the following executables to simplex-chat.cabal:

simplex-deadmans-bot

executable simplex-deadmans-bot
  main-is: Main.hs
  hs-source-dirs: apps/simplex-deadmans-bot
  build-depends:
    base, simplex-chat, simplexmq, text, stm, time, http-conduit
  default-language: Haskell2010
  ghc-options: -threaded

simplexxx-directory

executable simplexxx-directory
  main-is: Main.hs
  hs-source-dirs: apps/simplexxx-directory
  other-modules:
    Directory.BlockedWords, Directory.Captcha, Directory.Events,
    Directory.Listing, Directory.Options, Directory.Search,
    Directory.Service, Directory.Store, Directory.Store.Migrate,
    Directory.Store.Postgres.Migrations, Directory.Store.SQLite.Migrations,
    Directory.Util
  build-depends:
    -- same as simplex-directory-service in simplex-chat.cabal
  default-language: Haskell2010
  ghc-options: -threaded
  1. On macOS, add to cabal.project:

    package *
        extra-lib-dirs: /opt/homebrew/opt/openssl@3/lib
        extra-include-dirs: /opt/homebrew/opt/openssl@3/include
    
  2. Build:

    cabal update
    cabal build simplex-deadmans-bot simplexxx-directory