---
title: "Deploy Cassandra for Discord"
description: "Organizational-memory AI agent for a single Discord server."
category: "Bots"
url: https://railway.com/deploy/cassandra-for-discord
---

# Deploy Cassandra for Discord

Organizational-memory AI agent for a single Discord server.

**[Deploy Cassandra for Discord on Railway](https://railway.com/template/cassandra-for-discord)**

Machine-readable deploy manifest (JSON, validated by TemplateCI): https://railway.com/deploy/cassandra-for-discord/manifest.json

- **Creator:** Nen Labs
- **Category:** Bots

## Template content

### cassandra

- **Image:** ghcr.io/steel-experiments/cassandra-discord@sha256:87c5fc4ce070edcfad3ebc5008795cd5185b387e6e5363c9024b3c0b43e34309
- **Health check:** /readyz

## Documentation

# Deploy and Host Cassandra for Discord on Railway

Cassandra for Discord is a quiet organizational-memory agent for a single Discord server. It reads the channels you permit, stores them in SQLite, extracts durable memories such as decisions, risks, predictions, and commitments, and answers mentions with citations. Most of the time, it says nothing.

https://github.com/steel-experiments/cassandra-discord

## About Hosting Cassandra for Discord

Hosting Cassandra means running one always-on service with one persistent volume. The volume stores the SQLite database at `/app/data`, so data survives redeploys.

You bring your own Discord application with the Message Content Intent enabled, along with your own model-provider API key. The default model is OpenAI `gpt-5.6-terra`.

You choose which channels Cassandra may read using two environment-variable lists. Cassandra starts in **observe mode**: it ingests messages and answers mentions, but never posts on its own.

A $2/day spend control is enabled by default. Health is exposed at `/readyz`, and a 45-second drain period allows for graceful shutdown during redeploys.

## Common Use Cases

* Answer “What did we decide about X?” months later, with links to the messages containing the decision.
* Catch up after time away with a bounded, cited summary of a channel or the entire server.
* Maintain shared memory of risks, commitments, and open questions for a small team without requiring anyone to write documentation.
* Respect sensitive channels: restricted content never appears in answers outside its permitted scope.

## Dependencies for Cassandra for Discord Hosting

* A Discord application you own, including a bot token, Application ID, and the Message Content Intent enabled.
* One Discord server where you can manage roles and channels.
* A model-provider API key. OpenAI is the default; Anthropic and Google are also supported.
* The server ID, the channel or category IDs to allow, and an admin role ID.
* No database service or additional infrastructure is required; the template creates the persistent volume for you.

### Implementation Details

The service runs a digest-pinned release image, `ghcr.io/steel-experiments/cassandra-discord`, rather than a floating tag, so upgrades are deliberate.

Set the following required variables during installation:

* `DISCORD_TOKEN`
* `DISCORD_APPLICATION_ID`
* `DISCORD_GUILD_ID`
* `OPENAI_API_KEY`
* `CASSANDRA_ADMIN_ROLE_IDS`
* `ORG_VISIBLE_CHANNEL_IDS`
* `FULL_HISTORY`

Set `FULL_HISTORY=true` to import all reachable history for the selected channels. Set it to `false` to begin with new messages only.

Leave empty lists unset; Railway rejects empty values.

Migrations run at startup and are forward-only, so never run two different versions against the same volume.

## Why Deploy Cassandra for Discord on Railway?

Railway provides a single platform for deploying and hosting your infrastructure stack. It handles much of the underlying configuration while still allowing you to scale services vertically or horizontally as needed.

By deploying Cassandra for Discord on Railway, you can run the agent alongside the rest of your application infrastructure with minimal operational overhead. Railway can host servers, databases, AI agents, and other supporting services in one place.


## Similar templates

- [Telegram JavaScript Bot](https://railway.com/deploy/5lRkWa) — A template for Telegram bot in JavaScript using grammY
- [Cobalt Tools [Updated Sep ’26]](https://railway.com/deploy/cobalt) — Cobalt Tools [Sep ’26] (Media Downloader, Converter & Automation) Self Host
- [Telegram Gateway](https://railway.com/deploy/railway-telegram-gateway) — Multi-bot Telegram webhook gateway with WebSocket event streaming

Open this page in a browser: https://railway.com/deploy/cassandra-for-discord
