vestige/crates
Sam Valladares 5772cdcb19 feat(mcp): opt-in VESTIGE_SYSTEM_PROMPT_MODE=full composition mandate
The MCP `instructions` field is injected into every connecting client's
system prompt on Initialize — Claude Code, Cursor, Zed, Windsurf, and
anyone else running Vestige. That reach demands a default that serves
every user, not the project maintainer's personal workflow.

Default ("minimal", 3 sentences) tells the client how to use Vestige
and how to respond to explicit feedback signals. It is safe for every
audience: competitive coders, hobbyists saving recipes, Rails devs
saving bug fixes, enterprise deployments under system-prompt review.

The full composition mandate — Composing / Never-composed /
Recommendation shape + FSRS-trust blocking phrase + origin case study
— is load-bearing for decision-adjacent work but misfires on trivial
retrievals ("what's my favorite color"). Opt in on your own machine
with `VESTIGE_SYSTEM_PROMPT_MODE=full`; four hundred strangers do not
inherit one maintainer's trauma scar on every session.

Extracted into build_instructions() so the branch is a single env-var
check on Initialize, not a compile-time switch. main.rs --help output
advertises the new variable alongside VESTIGE_DASHBOARD_ENABLED.
2026-04-18 18:33:31 -05:00
..
vestige-core fix(ci): unblock Intel Mac + Windows MSVC builds in v2.0.5 release workflow 2026-04-14 18:03:56 -05:00
vestige-mcp feat(mcp): opt-in VESTIGE_SYSTEM_PROMPT_MODE=full composition mandate 2026-04-18 18:33:31 -05:00