Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>NotchListNew to Visual Studio Code? Get it now.
NotchList

NotchList

DaddooDev

|
1 install
| (0) | Free
Explorer task list: statuses, groups, filter & #tags, import/export, archive, MCP (.notchlist), Add to Chat. Local-only, no telemetry.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

NotchList

NotchList is a local-first task list for VS Code and compatible editors (including Cursor). Tasks live in the Explorer sidebar next to Outline and Timeline: statuses, optional groups, filtering, bulk actions, optional import/export, and a focused Add to Chat flow for AI-assisted work.

There are no accounts, no cloud sync, and no telemetry in v1. Privacy: see the full policy in PRIVACY.md (what is stored locally, what can leave your machine, and how to get help).

Install

Open Extensions, search for NotchList (DaddooDev.notchlist), and install.
Also published on Open VSX for editors that use that marketplace.

Requirements: VS Code 1.96 or newer (see engines.vscode in package.json).

What you get

Area What it does
Explorer tree Collapsible NotchList section per workspace folder (multi-root safe).
Statuses Not started, In progress, Completed — icons, row text, and tooltips; sensible sort order.
Groups One level of virtual folders; tasks live at the root or inside one group.
Completed visibility Hide all, show only recently completed (1–30 days), or show all — from settings and the eye title actions.
Filter Title action opens an input; matches title + description. Use #tag tokens (e.g. #bug #docs) to require tags in title/description.
Details Click a task to open a webview for long descriptions; Save, Add to Chat, Close.
New Task Title + optional description from the view + or Command Palette.
Import / export JSON and Markdown export; lenient JSON import (merge or replace). Completed tasks are skipped on import.
Archive Remove completed tasks after an optional export.
Add to Chat Builds Markdown + fenced JSON; opens Chat where supported, otherwise clipboard. Nothing auto-sends.
MCP Each workspace folder gets .notchlist/state.json (and backups) kept in sync with your list for the bundled MCP server and other tools.
Settings Command NotchList: Settings opens the Settings UI filtered to this extension.

First run

The first time you use NotchList in this editor, a short welcome explains the basics (once globally — not again when you open another project). Each workspace folder may prompt once for a local display name (default from git config user.name when available). Task lists are scoped per project folder and do not mix when you switch workspaces. You can change behavior anytime under NotchList: Settings.

How to use it

Tree and selection

  • Left-click a task → Details (unless Click to cycle status is enabled in settings; then a single selected task may cycle status on click).
  • Left-click a group → expand/collapse.
  • Right-click tasks for Add to Chat, Status, rename, duplicate, delete, and (with multi-select) move/remove group and bulk delete.
  • Hover a task for the inline Add to Chat action.

Completed tasks

  • notchlist.completedVisibilityMode: hide_all (default), show_recent, or show_all.
  • notchlist.completedRecentDays: when mode is show_recent, how many days to keep visible (1–30). Tasks need a stored completion time to count as “recent.”
  • Title bar: eye cycles completed visibility; in show_recent mode, Set Completed Recency… is under the More menu (⋯).

Legacy notchlist.hideCompleted is still present for compatibility; new installs should use completed visibility mode above.

Import and export

NotchList: Import / Export… from the view More menu (⋯) or Command Palette.

  1. Prefer export → edit → import so the JSON shape stays valid.
  2. Import accepts common shape variations; invalid rows are skipped with a summary when possible.
  3. Completed tasks in a file are not imported (only active work is merged in).

Archiving

NotchList: Archive Completed… removes completed tasks for the current folder after optional JSON/Markdown export.

Add to Chat

Use the hover button, task context menu, Details toolbar, or the command palette. The editor may open a Chat tab with prefilled content; you still send the message yourself. If Chat is unavailable, the same payload is copied to the clipboard and you are notified.

MCP and agents

For each opened workspace folder, the extension keeps .notchlist/state.json (and backups alongside it) in sync with that folder’s task list for MCP and scripts. The file is stamped with the folder path so a copy from another project is not applied to the wrong list. Configure your MCP client with NOTCHLIST_AGENT_STATE pointing at that folder’s file (see NotchList: MCP Setup (Wizard) and related commands). Add .notchlist/ to .gitignore if you do not want the mirror committed.

Screenshots

Gallery files live in docs/screenshots/. Captured in Cursor with a dark theme; your UI may differ.

Explorer sidebar

NotchList task list in the Explorer sidebar

Selected task

NotchList with a selected task

Context menu and status

Task context menu with Status submenu

View title toolbar

NotchList view title bar and toolbar

Settings

NotchList options in the Settings editor

Command Palette

Command Palette filtered to NotchList commands

JSON snapshot (import / export)

Use schemaVersion: 1. Top-level fields:

Field Required Notes
schemaVersion yes Must be 1.
groups yes Array of { id, name, sortOrder? }.
tasks yes Array of task objects (below).
displayName no Shown in payloads / UX.
onboardingCompleted no Onboarding flag.

Each task:

Field Required Notes
id import: optional (generated if missing) Stable id for merge.
title yes
description yes May be "".
status yes not_started | in_progress | completed.
groupId yes String or null for root.
startedAt no Date-ish string; often YYYY-MM-DD.
dueDate no YYYY-MM-DD recommended.
completedAt no Set when marked completed; used for “recent completed” visibility.

Privacy and data

Short version:

  • Nothing is sent to NotchList-operated services (there are none).
  • Tasks live in VS Code workspace extension storage (per workspace folder) and in a .notchlist/ mirror under each folder for MCP; see PRIVACY.md for tables, retention, and what happens with Add to Chat / MCP / npm during setup.

Support

Help and bug reports: GitHub Issues for this repository.

Security vulnerabilities: SECURITY.md — use a private GitHub Security Advisory, not a public issue.

For contributors and publishers

Local development

npm ci
npm run build
npm run watch

Build a .vsix and publish

npm ci
npm run package

That produces notchlist-<version>.vsix in the repo root. Publish with vsce to the Visual Studio Marketplace and with ovsx to Open VSX. This repo includes npm scripts vscode:publish and openvsx:publish; Open VSX expects the OVSX_PAT environment variable.

Continuous integration (GitHub Actions) typechecks and packages the extension on pushes to main or master.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft