Skip to content

Harvest & Replay

Harvest scans your server’s message history and saves metadata to a file - who sent what, when, in which channel. No message content is recorded.

Replay feeds that harvested data through the leveling system as if the messages were sent live. Members receive XP retroactively based on your current (or newly changed) configuration.

  • You added Lumistra to an established server and want members to get credit for past activity
  • You changed your XP configuration and want everyone’s levels recalculated under the new rules
  • You’re migrating from another bot and want real historical activity to count
  • You want to test different XP curves before settling on one
/harvest days:30

Scans the last 30 days of server history. Maximum 365 days. The bot saves a JSONL file with message metadata and posts progress updates as it runs.

Only one harvest or replay can run per server at a time, and there’s a 5-minute cooldown between operations.

Pass include_archived:True to also scan archived threads. On large servers this can be slow.

/replay harvest_file:harvest-123456-2026-03-01-30d.jsonl

The filename appears in the harvest completion message.

Cooldowns during replay: By default, enforce_cooldowns is false - every message earns XP regardless of timing. That’s usually what you want for retroactive catch-up. Set enforce_cooldowns:True to simulate real cooldown behavior instead.

When replay finishes, the bot automatically runs lifecycle stage recalculation and streak backfill for all affected members.

Replaying the same file twice won’t double-count XP - the bot warns you and asks for confirmation before proceeding. If you’re iterating on configurations, resetting between replays is safer than relying on deduplication.

/replay-reset

Removes XP events and user levels, leaving you with a clean slate for the next replay run.

Both modes require you to confirm via a button press before anything is deleted.

  1. /harvest days:90 - gather 90 days of history
  2. /replay harvest_file:<filename> - replay with current config
  3. Check /leaderboard - do the levels look right?
  4. If not: /replay-reset → adjust config with /config set/replay with the same file
  5. Repeat until satisfied

The harvest file stays on disk between runs, so you don’t need to re-harvest each time you iterate.