Skip to Content
Haven Documentation is the shared home for product guides, plugin setup, and release docs.
PluginsHoneypotConfiguration

Honeypot Configuration

When dashboard-backed configuration is enabled, use the dashboard first because live settings may be stored in MongoDB instead of reading only the local JSON5 file.

Config Files

  • Runtime config: configuration/honeypot.json5
  • English template: plugins/honeypot/data/configs/en-honeypot.json5
  • German template: plugins/honeypot/data/configs/de-honeypot.json5
  • Plugin entry: plugins/honeypot/main.js

Both language templates and both dashboard schemas include the current mute method setting.

Main Fields

FieldTypeDefaultNotes
enabledbooleantrueEnables warning management and message enforcement.
punishment.actionstringmuteAllowed dashboard values: mute, kick, ban, or delete_only.
punishment.mute_methodstringathenaUse athena for a tracked moderation mute or discord for a direct timeout. Only applies when the action is mute.
punishment.timeout_duration_minutesnumber10080Mute or timeout duration in minutes. The runtime limit is 40,320 minutes (28 days).
punishment.delete_trigger_messagebooleantrueDeletes the message that triggered the honeypot.
punishment.dm_userbooleantrueSends the member a DM before applying the punishment.
punishment.ignored_user_idsstring[][]User IDs that never trigger enforcement.
punishment.ignored_role_idsstring[][]Members with any listed role never trigger enforcement.
warning.post_on_readybooleantruePosts or updates the warning after AthenaBot becomes ready.
warning.typestringEMBEDUse EMBED or MESSAGE.
warning.pinbooleanfalsePins the warning when Discord allows it.
permissions.honeypot_commandstringmanagementAthena permission level required for /honeypot.

The setting remains named timeout_duration_minutes for compatibility, but it controls the duration for both Athena moderation mutes and Discord timeouts.

Punishment Actions

ActionResult
muteUses the configured mute_method for the selected duration.
kickKicks the member from the server.
banBans the member and asks Discord to delete the previous 24 hours of messages.
delete_onlyDeletes the trigger message when enabled without restricting the member.

Warning Message

Set warning.type to EMBED to use lang.warning.embed, or MESSAGE to use lang.warning.message. With post_on_ready: true, the plugin remembers the existing warning and edits it after a restart or configuration change. If that message no longer exists, it posts a new one.

Language Settings

The lang section controls:

  • Slash command and subcommand names and descriptions
  • Plain-text and embed warning content
  • Member DM title, description, color, and footer
  • Incident-log wording and field labels
  • Audit-log reason, status labels, success messages, and errors

Useful placeholders include:

AreaPlaceholders
Warning{guild}
Member DM{guild}, {punishment}, {reason}
Log title and description{guild}, {user}, {channel}, {punishment}, {reason}

AthenaBot also resolves configured custom emoji names in rendered text.

Dashboard Configuration

The dashboard exposes the complete config, including punishment.mute_method with athena and discord choices. English and German dashboard labels are included with the plugin.

Channel Slots

The channel IDs are stored through Athena setup instead of in this config file:

SlotPurpose
honeypot_channelHolds the warning and receives trigger messages.
honeypot_logReceives incident logs. Optional.