Skip to content

Add skill remove --mcp for global scope removal - #524

Draft
xsh310 wants to merge 1 commit into
xshen/skill-per-agent-statusfrom
xshen/skill-remove
Draft

Add skill remove --mcp for global scope removal#524
xsh310 wants to merge 1 commit into
xshen/skill-per-agent-statusfrom
xshen/skill-remove

Conversation

@xsh310

@xsh310 xsh310 commented Sep 8, 2026

Copy link
Copy Markdown
Collaborator

What

Adds ucode skill remove --mcp, the inverse of ucode skill add --mcp. It interactively removes skill schemas from the skills MCP connection across every configured agent. Removing downloaded skills is not supported yet, so the command requires --mcp.

How

  • remove_skills_command() reads each configured client's skills scope, offers the union of schemas via a picker (each annotated with the clients that carry it), and removes the selected schemas from every client that has them.
  • It reuses the per-client update path, so dropping the last schema leaves the schema-less connection registered rather than deleting it. It never adds or reconfigures anything and needs no Databricks auth.
  • cli.py gains the skill remove command and a status hint pointing at ug skill add / ug skill remove --mcp.

Tests

  • test_mcp.py: a selected schema is removed from every client and each is re-registered; removing all schemas keeps the schema-less connection; an empty scope is a no-op that never opens the picker; the picker is offered each client's real scope.
  • test_cli.py: skill remove without --mcp errors; skill remove --mcp dispatches the global removal.

uv run pytest tests/test_mcp.py tests/test_cli.py tests/test_lint.py is green.

Stacking

Third in the stacked per-agent skills series, based on xshen/skill-per-agent-status (#523). Per-agent remove builds on this next. Reviewing the diff against that base shows just this change. It rebuilds behavior originally designed by Arthur Jenoudet on the current per-client-map state model.

This pull request and its description were written by Isaac.

Introduce `ucode skill remove --mcp`, the inverse of `ucode skill add --mcp`. It
shows the schemas in each configured client's skills scope, annotated with the
clients that carry them, and removes the selected schemas from every client that
has them. `remove_skills_command` reuses the per-client update path, so dropping
the last schema leaves the schema-less connection in place. It never adds or
reconfigures anything and needs no Databricks auth. Removing downloaded skills is
not supported yet, so the command requires `--mcp`. A status hint points at the
new add/remove commands.

Co-authored-by: Arthur Jenoudet <arthur.jenoudet@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
@xsh310
xsh310 force-pushed the xshen/skill-remove branch from fb94ba5 to 59d2fd5 Compare September 8, 2026 05:43
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