Installation Scopes
Claude Code installs plugins at one of three scopes. That single choice also decides where Prism writes your telemetry settings — /prism:setup detects the scope the plugin is in and writes only that scope’s settings file. There is nothing to choose twice.
Plugin install scope
Section titled “Plugin install scope”| Scope | Settings file | Shared with team |
|---|---|---|
user | ~/.claude/settings.json | No (default) |
project | .claude/settings.json | Yes (commit to git) |
local | .claude/settings.local.json | No (gitignored) |
/plugin install prism@optra-prism --scope projectValid values: user (default), project, local. You can also use /plugin → Discover and pick a scope interactively.
What Prism writes, and where
Section titled “What Prism writes, and where”Telemetry only works if a set of OTEL_* environment variables is present when Claude Code starts — one of them embeds your prism_* key in OTEL_EXPORTER_OTLP_HEADERS. Claude Code reads those from a settings file’s "env" block at process launch.
/prism:setup writes them into the settings file for the scope the plugin was installed in. Install at user scope and telemetry follows you into every project; install at project or local and it stays with that repository.
Checking the current state
Section titled “Checking the current state”/prism:statusIt reports the scope in effect and which settings file holds the OTEL vars. If it reports both, two scopes are competing and only one wins depending on where you launch Claude Code — remove the vars from the one you don’t want.
Changing scope
Section titled “Changing scope”Claude Code has no “move” command, so reinstall at the scope you want:
/plugin uninstall prism@optra-prism --scope user/plugin install prism@optra-prism --scope projectThen run /prism:setup prism_YOUR_KEY again so the settings land in the new scope. Restart Claude Code afterwards.
Team distribution
Section titled “Team distribution”Commit the plugin registration at project scope so everyone who clones the repo gets Prism enabled:
{ "extraKnownMarketplaces": { "optra-prism": { "source": { "source": "github", "repo": "grumatic/optra-prism-plugin" } } }, "enabledPlugins": { "prism@optra-prism": true }}Each user then runs /prism:setup prism_THEIR_KEY on their own machine. The repository says “Prism is enabled here”; nobody’s key is ever committed.