Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

Chat Notes

Luca RennerLuca Renner4 downloads

Write messages, chats and conversations inside your notes.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates2

A messenger plugin to write messages, chats and conversations inside Obsidian.

plugin demo

What does this plugin add?

  • This plugin adds chat notes that behave just like you would expect from a messenger chat: they have an input field to write new messages and a system to render and display them. You can reply, pin, copy, edit, delete and much more. All other notes will still work just like normal.

Why use this plugin?

  • This plugin was originally designed to export Discord servers into Obsidian, but it can be used independently. If you like to draft dialogues or like a message-based note system, where it's easy to separate and see the timestamps of your ideas in the same file, then this plugin might be for you.

    Backup your (Discord) data before importing (the plugin allows changing ids, deleting or modifying the data)

Installation

Manually

  1. Download main.js, manifest.json and styles.css from the latest release.
  2. In your vault, create the folder .obsidian/plugins/chat-notes/ and put the three files in it.
  3. Reload Obsidian and enable Chat Notes under Settings → Community plugins.

With BRAT

Add lucarenn/obsidian-chat-notes as a beta plugin. BRAT installs it and keeps it up to date.

Creating a chat note

Run the Create new chat note command, or click the ribbon icon.

To turn an existing note into a chat note, add this to its frontmatter (section at the very top of the file):

---
type: chat-note
author: Some Name
---

type: chat-note is what the plugin looks for. Without it a note renders normally, and every message block in it stays a plain code block.

You can leave the author field blank or skip it entirely. However, this results in all messages being sent with an empty author attribute by default. If you simply do not wish to display the author, it is better to specify the author anyway and disable the display separately in the settings.

Writing messages

Messages are written and render as markdown (code blocks included).

Backticks: a message is stored inside a four-backtick block, so a longer run of backticks inside a message would close it early and break the note. Runs of four or more backticks are therefore shortened to three when you send or save a message. Regular ``` code blocks work as usual.

Shortcuts

These work while the chat input has focus. Mod is Ctrl on Windows/Linux, Cmd on macOS.

Shortcut Where Action
Mod + Enter Message input Send the message
Mod + ↑ Message input Open the author/time row
Mod + ↑ Author or time field Close the row, back to the input
Esc Author or time field Close the row, back to the input

Commands

There are a handful of commands that make your life easier working with the plugin. You can use these to speed up your workflow by setting a hotkey for them:

Command
Create new chat note
Focus chat input
Scroll to bottom
Scroll to top
Add override properties
Recalculate message ids

Every command except Create new chat note is only available inside a chat note. No default hotkeys are set, you can assign your own under Settings → Hotkeys. Having shortcuts to move the cursor into the input field or scroll to top/bottom makes it much faster working with chat files.

You can still assign Scroll to top to Mod + ↑. Just note that when the chat input is focused, the combination will open or close the author/time row instead.

Repairing message ids

Every message has an id (which is also used by replies). An incorrect id might impair the functionality of some features. A duplicate id is especially bad: two messages claim the same number, and only one of them still responds to pin, edit and delete.

The Recalculate message ids command repairs the open chat note. It renumbers every message 1, 2, 3… in the order they appear and rewrites every reply to match. A reply whose message is no longer in the file loses its link. You can reverse the command with the editor's undo in one step. The plugin also checks for duplicates when it first reads a chat note and notifies you if it finds any.

Overriding global settings per chat note

Global settings live under Settings → Community plugins → Chat Notes. Here, many features like various colors, corner radius, visible attributes in the message header, input width and height, default author, ribbon icon visibility and more can be adjusted. By default these apply to all chat notes. If you want different settings for individual chats, you can override most of the settings per file by adding the matching key to that note's frontmatter:

# Example:
---
type: chat-note
author: Alice
msgColor: "#7f6df2"
msgCornerRadius: 20
msgAuthorBadges: true
---

Adding the keys automatically

You don't have to type any of this out. Run the Add override properties command in a chat note and every override key is added to its frontmatter with an empty value. An empty key changes nothing, so the note keeps using your global settings until you fill one in.

Keys and values the note already has are left untouched, so the command is safe to run again at any time; it only adds the missing keys.

It is recommended to run it at least once after install, which enables Obsidian to autocomplete the keys (you can delete the generated keys afterwards if you want). After that, every key is suggested to you as you type in any note's properties, so you don't need to look them up.

A few things to know:

  • Overrides apply only to that note. Everything that is not listed keeps its global value.
  • All changes should apply live; if not, try refreshing the view or reopening the note.
  • A typo or an empty key is ignored and will still use its global setting value.
  • Colors accept any CSS color: #2b5d8a, #abc, white, rgb(43 93 138) etc.
    • If you paste the frontmatter directly into the file or manually write it (i.e. it's a blank file or has no properties added yet) use quotes for values starting with #, or YAML reads them as a comment. Also make sure that the first --- is at the very top of the file (no empty line above), or Obsidian will not recognize the values as properties. If done correctly, Obsidian should format the frontmatter into a properties table. There are other ways to add properties to a file as well (Obsidian offers a command). Refer to Obsidian's info page about Properties.
    • If you input a value starting with # via the properties table or with the command (once Obsidian has recognized the keys) you should not use quotes, just put the value as is.

Available overrides

Key Value Overrides setting
author text (YAML only) The chat owner
msgColor color Message background color
msgPinColor color Message pin color
msgFlashColor color Message flash color
msgReplyColor color Reply banner color
msgBorderColor color Message border color
msgCornerRadius number, 0–50 Message corner radius
msgShowAuthor true / false Show message author
msgShowTime true / false Show message time
msgAuthorBadges true / false Show author badges
msgButtonShadow true / false Enable button shadow
msgScrollOnSend true / false Scroll to bottom on send
msgDefaultAuthor owner / previous Default message author

Out-of-range numbers are clamped: msgCornerRadius: 999 gives 50.

Global-only settings

These have no per-note override and always apply everywhere:

  • Show ribbon icon
  • Input field width offset
  • Max input field height

Privacy

This plugin works only locally inside your vault and only imitates messenger behavior. It does not collect, share or upload any data. There is no functionality to actually send any messages to other devices, users or similar.

Development

See DEVELOPMENT.md for the architecture, the message file format, and non-obvious parts of the implementation.

If you find any bugs, please help me fix them by adding an issue on the GitHub page.

I might implement additions like virtualized rendering, markdown message editing/writing and better plugin compatibility in the future.

The plugin has not been tested on mobile.

HealthExcellent
ReviewCaution
About
Create messenger-style chat notes inside Obsidian with an input field and rendered message blocks that preserve Markdown, timestamps, and code blocks. Reply, pin, copy, edit, delete and customize messages to your liking.
WritingInterfaceImport
Details
Current version
1.0.1
Last updated
5 hours ago
Created
7 months ago
Updates
2 releases
Downloads
4
Compatible with
Obsidian 1.5.11+
Platforms
Desktop only
License
MIT
Report bugRequest featureReport plugin
Author
Luca RennerLuca Rennerlucarenn
GitHublucarenn
  1. Community
  2. Plugins
  3. Writing
  4. Chat Notes

Related plugins

Typewriter Mode

Typewriter scroll, writing focus, current line highlight, paragraph dimming, and more!

Keep the Rhythm

Turns out watching your word count go up is all the motivation you need.

Importer

Convert your data to Markdown files you can use in Obsidian. Works with Apple Notes, OneNote, Evernote, Notion, Google Keep, and many other formats.

Hider

Hide interface elements such as tooltips, status bar, titlebar, and more.

LanguageTool Integration

Advanced grammar and spell checking, powered by LanguageTool.

Meta Bind

Make your notes interactive with inline input fields, metadata displays, and buttons.

ChatGPT MD

A seamless integration of ChatGPT, OpenRouter.ai and local LLMs via Ollama into your notes.

Editing Toolbar

The Editing Toolbar is modified from cMenu, which provides more powerful customization settings and has many built-in editing commands to be a MS Word-like toolbar editing experience.

Note Toolbar

Add customizable toolbars to your notes.

Hover Editor

Transform the Page Preview hover popover into a fully working editor instance.