okawak768 downloadsSend messages from a Discord channel to your Vault
This is a Obsidian plugin that allows you to take notes in Discord and automatically sync them to Obsidian.
Key Features:
!url commandPrepare Your Discord Environment
Message Processing



botPlease enter the following information in the plugin settings:
{count}, {channelName}, {channelId}By default, messages are saved under DiscordLogs/<channel name or ID>/, and URL clippings are saved under DiscordClippings/<channel name or ID>/. Duplicate folder names are rejected in settings, and sync also stops if manually edited settings contain a duplicate.
Channel names cannot contain \ / : * ? " < > | # ^ [ ]. The names . and .. are also not allowed. Invalid names are not saved.
Regular messages are stored under DiscordLogs/<channel name or ID>/. Choose one of the following modes:
YYYYMMDD_HHMMSS_<message ID>.mdYYYY-MM-DD.md<ISO week-year>-W<week>.md; weeks start on MondayYYYY-MM.mdDates, times, and individual file names use the computer's local time zone when synchronization starts. Daily logs use the date as the level-one heading. Weekly and monthly logs use the period as the level-one heading and each date as a level-two heading. Messages do not create their own headings.
With author names and message times disabled, an aggregated entry is stored like this:
<!-- discord-message-id: 1520291078606028900 -->
yes
With both options enabled, the same entry is stored like this:
<!-- discord-message-id: 1520291078606028900 -->
**Alice** · 21:34
yes
The plugin also writes managed-log and date markers as HTML comments. These markers are hidden in Obsidian Reading view and prevent duplicate messages when a sync is retried or the storage mode changes. Do not remove or edit them.
Existing settings are automatically migrated to One file per message, preserving channels and synchronization cursors. Changing the storage mode only affects new messages. Existing files are not converted, moved, or renamed, so files from different modes can coexist safely.
URL clippings always remain individual files under DiscordClippings/<channel name or ID>/.
The plugin uses Discord API v10 and requests up to 100 messages at a time. The first synchronization imports the latest 100 messages. Later synchronizations request only pages needed to reach the saved per-channel cursor, so daily, weekly, and monthly logs do not cause the entire period to be downloaded again. Requests are paginated when more than 100 new messages exist and observe Discord rate-limit responses.
Messages starting with the configured prefix (default: !) are treated as special commands.
!url - Web Page Clipping (under development)Example:
!url https://www.example.com
Behavior:
Additional useful commands will be added in future releases.
This plugin was inspired by the following project(s):