Skip to content

feat(vscode): parity slice 2 — conversations, dashboard, marketplace, create/remove - #30

Merged
Railly merged 2 commits into
mainfrom
feat/vscode-parity
Jul 23, 2026
Merged

feat(vscode): parity slice 2 — conversations, dashboard, marketplace, create/remove#30
Railly merged 2 commits into
mainfrom
feat/vscode-parity

Conversation

@Railly

@Railly Railly commented Jul 23, 2026

Copy link
Copy Markdown
Owner

Closes the parity gap flagged after #29: the extension now covers every Obsidian plugin surface that makes sense in VS Code, over the same shimmed core.

What ships

Conversations view (the explicitly requested piece): tree of Claude Code sessions grouped by project; opening one renders a custom webview tab with paginated messages (20 at a time, show more / show all), tool call chips, tags, copy resume command, and export to a markdown document beside. Reuses src/conversations/{parser,tagger,store} untouched; the obsidian shim gains a minimal Events class for the stores.

Dashboard webview: overview tiles (invocations, unique skills, streak, velocity), top skills with inline SVG sparklines, health (installed/agents/usage/metadata budget), burn rate with per-model table and daily sparkline, and context tax, all through the existing runSkillkitJsonAsync. Same skillkit-not-installed empty state as Obsidian.

Marketplace browse: QuickPick with live debounced search against skills.sh, popular skills on open, Enter installs with the agent picker. Complements the plain GitHub-source install from slice 1.

Skill context menu: detail webview (description, frontmatter table, skillkit stats + recent traces, open / reveal / copy path) and remove-with-confirmation via the CLI.

Create skill: tool -> type -> name QuickPick flow, identical scaffolding to the Obsidian modal (SKILL.md dir or flat md).

Update all skills command.

Deliberately not ported

  • CodeMirror editor customizations (VS Code is the editor)
  • Obsidian settings tab (defaults suffice for now; VS Code settings contributions are a follow-up)
  • watcher (manual refresh; FileSystemWatcher is a follow-up)

Review findings fixed pre-merge

  • Systematic XSS audit of every template interpolation across the 3 webview modules: all user data reaching webview HTML goes through esc(); the un-escaped hits are TreeItem labels, MarkdownString tooltips, markdown exports, and clipboard, none of which render as HTML
  • Strict CSP meta on all three webviews

Verification

  • tsc strict clean, production bundle builds
  • Real-data smoke through the shim: 4,643 conversations across 214 projects parsed, webview html renders messages + resume command, markdown export works, skillkit health returns 12 agents live, skills.sh returns 20 popular skills live
  • Conversation parse runs non-blocking after activate (void), parser caps at 5 MB / 500 lines per file
  • vsix (71.7 KB) packaged and installed into VS Code and Cursor

Railly added 2 commits July 23, 2026 03:46
…reate and remove skills

Parity slice 2 over the same shimmed core:

- Conversations view: tree of Claude Code sessions grouped by project
  (4,643 sessions on this machine), opening a session renders a webview
  tab with paginated messages, tool call chips, tags, copy resume
  command, and export to a markdown document. Reuses
  src/conversations/{parser,tagger} untouched; Events added to the
  obsidian shim for the stores.
- Dashboard webview: overview, top skills with SVG sparklines, health,
  burn rate per model, and context tax, all through the existing
  runSkillkitJsonAsync. Same not-installed empty state as Obsidian.
- Marketplace browse: live QuickPick search against skills.sh
  (debounced), popular list on open, Enter installs with the agent
  picker. Complements the plain GitHub install command.
- Skill context menu: detail webview (frontmatter, skillkit stats and
  traces, open, reveal, copy path) and remove with confirmation.
- Create skill command: tool then type then name QuickPick flow with
  the same scaffolding as the Obsidian modal.
- Update all skills command.

Verified: tsc strict clean, real-data smoke through the shim (4,643
conversations parsed, webview html renders, skillkit health returns 12
agents, skills.sh returns 20 popular skills), vsix packaged and
installed into VS Code and Cursor.
@vercel

vercel Bot commented Jul 23, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
agenfiles-web Ready Ready Preview, Comment Jul 23, 2026 6:48am

@Railly
Railly merged commit c150e35 into main Jul 23, 2026
3 checks passed
@Railly
Railly deleted the feat/vscode-parity branch July 23, 2026 06:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant