一键导入
一键导入
Use for one-off / single-question inspection of the running GitLens extension — examining UI state, reading logs, checking feature flags, dispatching a command, or asking "what does the live DOM look like right now". Reference for `vscode-inspector` MCP primitives. For iterative debug-and-fix loops on UI bugs (sweep → fix → re-verify), use `/live-exercise` instead.
Use when starting feature work that needs isolation from current workspace or before executing implementation plans - creates isolated git worktrees following GitLens conventions
Use whenever any UI-bearing work touches a running instance — building or fixing a feature, ship-gating, auditing, OR debugging visible bugs (flaky behavior, intermittent rendering, "sometimes does X" reports, hover/focus/animation glitches, layout overflow). Keep a running instance in the loop and exercise it as a user would. Adaptive depth from tactical fix-loop to ship-gate audit. Not for pure-logic diff review.
Investigate bugs — single-issue deep root cause analysis or batch parallel investigation from a report or issue list
Use when you want to iterate on a feature interactively with the user watching a running instance — pair-programming rhythm for UI-heavy work, redesigns, copy tightening, layout exploration, or any "let me just show you what I want" session. Not for systematic audit (/live-exercise) or perf-tuning (/live-perf).
Use when you want to measure and improve the performance of a feature in the running extension, hunt regressions, or perf-tune before shipping. Standalone for perf-tuning an existing feature; also invoked by /live-exercise Phase 7. Not for static code review without measurement.
| name | add-icon |
| description | Add new icons to the GitLens GL Icons font |
/add-icon [icon-name]
icon-name — kebab-case (e.g., my-new-icon)Place in images/icons/{icon-name}.svg
Requirements:
viewBox="0 0 16 16")<style> tags or fontsfill="currentColor" for color inheritanceAppend to images/icons/template/mapping.json:
"icon-name": {next-available-code-point}
Code points are in the Private Use Area range (57344-63743). Check existing entries for next available.
pnpm run icons:svgo # Optimize SVGs
pnpm run build:icons # Generate font (runs svgo + fantasticon + apply + export)
pnpm run build:icons (via scripts/applyIconsContribution.mjs) now automatically propagates the new glicons.woff2?{hash} cache-bust hash into both src/webviews/apps/shared/glicons.scss and every per-app webview *.html file (each declares its own @font-face). No manual search-replace needed.
Verify they're all unified (every reference must be the same hash):
grep -rho "glicons.woff2?[a-f0-9]*" src/ dist/ | sort | uniq -c
If any HTML file lags behind, re-run pnpm run build:icons — a stale hash leaves that webview pointing at a cached font without the new glyph.
In Lit components:
import { glIcon } from '../shared/components/icons.js';
html`${glIcon('my-new-icon')}`;
In CSS:
.my-element::before {
font-family: 'glicons';
content: '\{codepoint}';
}
pnpm run build:icons<style> tags, use fill="currentColor"