Skip to content
| Marketplace
Sign in
Visual Studio Code>AI>NogginNew to Visual Studio Code? Get it now.
Noggin

Noggin

David Ornstein

|
1 install
| (0) | Free
A working-memory tree for in-flight work — your second brain for the stuff you can't fit in your head.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Noggin (VS Code extension)

A working-memory tree for in-flight work — your second brain for the stuff you can't fit in your head.

This extension ships the noggin skill into Copilot Chat via the chatSkills contribution, plus a full UI for inspecting and editing your noggin from VS Code.

What it ships

  • Skill — loaded into Copilot Chat automatically. The agent knows when to push/add/note/etc. without further configuration.
  • Tree view — a custom React-based tree in the Noggin activity-bar container. Shows every item with its full dotted path (e.g. 1.2.3.), the active item highlighted, a click-to-toggle done icon per row, and drag-and-drop reordering that supports dropping on a parent (becomes child) or between siblings (with a labeled insertion line so you can see exactly where the drop will land).
  • Details pane — webview below the tree showing the focused item: state-toggle icon, full dotted path, inline-editable title, notes (Markdown-rendered) with a quick-add affordance, and view-title icons for Add Child / Move Up / Move Down / Delete.
  • Status bar — left-side item showing the active item's title and the open file's friendly label. Hover for the full path. Click to reveal the active item in the tree.
  • Commands — full set under "Noggin: …" in the command palette (Push…, Add…, Show Active, Go To, Mark Done, Pop, Add Note…, Retitle…, Open YAML, Refresh, …).
  • Language model tools — noggin_show, noggin_push, noggin_add, noggin_goto, noggin_done, noggin_pop, noggin_set_state, noggin_note, noggin_retitle, noggin_move, noggin_delete. Available to Copilot Chat as referenceable tools (#nogginShow, etc.) so the agent can drive noggin in-process without spawning the CLI.

The store path is tracked per workspace: use Noggin: New… or Noggin: Open File… to pick one. Noggin: Open Workspace Noggin opens .noggin.yaml in the current workspace root.

How writes happen

The extension imports the bundled noggin API (skills/noggin/noggin-api.mjs) directly and calls verb methods in process — no child processes, no JSON round-trip. The same library backs the bundled CLI (skills/noggin/noggin.mjs), so the extension, the CLI, and any chat tools all share one code path. The tree view reads from the API's in-memory snapshot, which is kept in sync with the YAML file via a file watcher.

Build

cd extension
npm install
npm run build      # tsc (host) + esbuild (tree webview bundle)
npm run package    # syncs skills/, builds, runs vsce package → .vsix

npm run watch rebuilds the host on save; npm run watch:webview watches and rebundles the React tree.

The package script runs node ../scripts/sync-skill.mjs first, so the bundled skills/noggin/ is always fresh.

How the skill is kept in sync

skills/noggin/ is a synced copy of the canonical cli/ directory in the repo root. After editing anything under cli/, run:

node ../scripts/sync-skill.mjs

from the repo root to refresh both extension/skills/noggin/ and plugin/skills/noggin/.

Configuration

Setting Default Meaning
noggin.statusBar.enabled true Show the active item in the status bar.

The noggin file path is per-workspace (tracked in workspace state), set via Noggin: New…, Noggin: Open File…, or Noggin: Open Workspace Noggin.

License

MIT. See the repo LICENSE.

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