Skip to content

VS Code chat participant exposes only CLI commands, not the ctx skill/workflow layer #127

Description

@bilersan

Problem

The shipped @ctx VS Code chat participant is a thin wrapper over ctx CLI subcommands — its ~31 slash-commands each shell out to a CLI command. It surfaces none of the ctx skill/workflow layer (/brainstorm, /implement, /reflect, /remember, /next, /spec, /audit, /blog, /changelog, /consolidate, /map, /verify, /worktree, /wrapup) — arguably the highest-value AI workflows in ctx, and exactly what belongs in a chat participant.

A complete skill-backed implementation was developed but never landed; main still ships the wrapper.

Impact

  • @ctx users can run CLI-equivalent commands but cannot invoke the skill workflows from chat.
  • The participant under-delivers relative to the ctx skill ecosystem / the .claude/skills surface.
  • Dedicated /decisions and /learnings management is missing (only /add covers creation).

Proposal

Land the skill-backed chat participant: reconcile contributes.chatParticipants to exactly the commands the extension dispatches (45), add the skill/workflow commands + a reminder status bar + violation guardrails, and cover the new handlers with tests.

Command-surface changes vs. the current wrapper:

  • +21 new commands (skill/workflow layer + dedicated /decisions, /learnings)
  • 4 renamed to plurals: /change/changes, /dep/deps, /task/tasks, /permission/permissions
  • Removed: /loop, /diag; /site folded into /journal, /doctor handled inline

Acceptance

  • contributes commands == dispatched commands (exact parity)
  • tsc (default + tsconfig.ci.json), eslint, vitest, and vsce package all green
  • CHANGELOG updated

A PR implementing this on top of current main is ready (rides on the existing ESLint 9 + tsconfig.ci + vitest/vsce CI).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions