Skip to content
| Marketplace
Sign in
Visual Studio Code>Notebooks>NoteChatNew to Visual Studio Code? Get it now.
NoteChat

NoteChat

anzil

| (0) | Free
Notion-style chat pages for code, images, files, headings and paragraphs. Create unlimited chats and join any chat with a 10-digit code.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

NoteChat

Notion-style chat pages inside VS Code. Keep headings, paragraphs, code snippets, images and files in chat-like pages, create as many chats as you like, and back up everything to your own private GitHub repository.

Features

  • Chat pages made of blocks: headings, paragraphs, code (with a language label and copy button), images and file attachments.
  • Multiple chats: create unlimited chats from the NoteChat sidebar; rename them any time.
  • Paste & drop: paste images with Ctrl+V, drag and drop files, or use the + button (up to 50 MB per file).
  • Edit & delete any block; copy code with one click.
  • GitHub backup: every message and every file is committed to your own GitHub repository, and files are downloaded from GitHub when you click ⬇ Download.
  • Nothing stored on your computer (default): GitHub is the only storage. Chats load from your repo when VS Code starts.
  • Join with a 10-digit code: every chat has a code; paste a friend's code to join their chat live (needs a sync server, see below).

Getting started

1. Set up GitHub backup (required)

  1. Create an empty private repository on GitHub (https://github.com/new).
  2. Create a fine-grained token at https://github.com/settings/personal-access-tokens/new, with access to only that repository and Contents: Read and write (GitHub adds Metadata: Read-only automatically, which is normal).
  3. In VS Code, click the NoteChat icon in the activity bar, then the GitHub icon (or run NoteChat: Set Up GitHub Backup), and enter your-username/your-repo and the token.

Your token is stored in VS Code's encrypted secret storage — never in settings files.

2. Create a chat

Click + in the NoteChat sidebar, name the chat, and start adding content. The chat header shows its 10-digit join code (click it to copy) and the backup status.

3. Add content

Mode Use it for
Paragraph normal text — Enter sends, Shift+Enter adds a line
Heading section titles
Code snippets — set a language, Ctrl+Enter sends
+ / paste / drop images and any file

Hover over a block to copy, edit or delete it.

How your data is stored

Each message is committed as its own JSON file and each attachment as its own file:

chats/<code>/chat.json
chats/<code>/blocks/<id>.json     one per heading / paragraph / code / image / file
chats/<code>/files/<id>_<name>    the actual attachments
  • A new item is held in memory until its push to GitHub succeeds. The header shows pushing N… (not saved yet) and then backed up ✓. Wait for backed up ✓ before closing VS Code or going offline.
  • Files and images are downloaded from GitHub when needed, so opening them requires an internet connection.
  • NoteChat: Refresh Chats from GitHub reloads everything from the repo (for example after using a new computer).
  • "Delete chat" only hides a chat until the next refresh; it remains in your repository. To remove it permanently, delete its folder from the repo on GitHub.
  • GitHub limits individual files to 100 MB; NoteChat limits attachments to 50 MB.

Prefer an offline copy? Turn on the setting NoteChat › Keep Local Copy and reload the window; chats are then also kept on disk.

Joining chats with a code (sync server)

Live sharing between people uses a small sync server. Without one, everything else works, but Join and live updates do not.

  • Set its address in NoteChat › Server Url (for example wss://notes.example.com). If the server uses a secret, append it: wss://notes.example.com?token=SECRET.
  • The default ws://localhost:8787 only works on your own machine.
  • The server is a ~100-line Node.js script (server/server.js, depends only on ws). Run it with node server.js; useful environment variables: PORT, AUTH_TOKEN, DATA_DIR, and MEMORY_ONLY=1 (store nothing on the server's disk, relay only).
  • People who join a chat also back its content up to their own GitHub repo.

Settings

Setting Description
notechat.githubRepo Repository (owner/name) used for backup. Set via Set Up GitHub Backup.
notechat.keepLocalCopy Also keep chats and files on this computer (default: off).
notechat.serverUrl Sync server WebSocket URL for joining chats by code.
notechat.displayName Name shown next to your messages (default: your OS username).

Commands

  • NoteChat: New Chat / Join Chat with Code
  • NoteChat: Set Up GitHub Backup
  • NoteChat: Push Backup to GitHub Now
  • NoteChat: Refresh Chats from GitHub
  • NoteChat: Reconnect to Sync Server

Privacy & security

  • NoteChat talks only to api.github.com (your repo) and to the sync server you configure. No telemetry.
  • Use a private repository: everything you write, including code and files, is stored there as readable files.
  • Anyone who knows a chat's 10-digit code can join it on the sync server — share codes only with people you trust.

License

MIT

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft