Pull requests / #1144

#1144 serve: add opt-in instruction skills to Chat

open · draft · @medking82 · 0 comentarios · En GitHub

Server & APIAMD / HIPSecurity

Descripción

Chat can use configured MCP tools, but it has no way to discover and choose an instruction skill for the current request. This adds an opt-in `/ Skills` picker: `/outline` can load its instructions for that user turn while preserving the draft, attachments and earlier conversation.

The operator binds two existing MCP tools for catalog metadata and on-demand content. This is a documented adapter convention, not a standard MCP Skills API. The feature is disabled without configuration and ships no catalog, filesystem scanning or workflow runner.

- Keyboard and pointer selection; ordinary and unknown slash input remain plain messages.
- Only an explicit current-user selection reads a body. Catalog membership, identity, UTF-8 size and complete adapter results are validated before model dispatch; existing MCP admission and cancellation apply.
- A text-only Chat Completions count endpoint shares input preparation with generation, including selected instructions and offered tools. It does not load the model and refuses image requests.

No dependencies, engine changes, persistent schema, account policy, provider routing or bundled SOP are included. Draft for feedback on the operator-facing catalog/read binding before treating it as a stable integration contract.

Validation:

- 24 focused Python unit/HTTP checks, including actual disconnect cancellation, stale membership, bounds, origin/API-key admission and count/generation parity.
- 300 affected upstream Python checks: server, security, frontend, MCP, structured output, Responses and runconfig.
- 14 Node checks for the mounted picker and actual composer handlers, including cancelled/stale requests, literal metadata, multiline drafts and an instruction-only MCP adapter.
- Desktop browser exercise with a synthetic catalog and MockEngine: pointer and keyboard selection, Escape, retained draft, successful submission and disabled configuration. No real model, provider or production deployment was used.
- `git diff --check`.

En el sitio

Enlaces a install, modelos, releases.