# Claude Code-plugin — glossar **Agent (subagent)** — et avgrenset Claude-instans med egen system-prompt, verktøy-sett og modell, spawnet for en deloppgave. Defineres i `agents/descriptive-name-agent.md` med frontmatter (`name`, `description`, `model`, `color`, `tools`). Velges automatisk på `description`-en. **Auto-discovery** — Claude Code finner commands/agents/skills/hooks ved konvensjonelle stier uten manuell deklarasjon i `plugin.json` (forutsetter `auto_discover: true`). Hooks auto-discoveres fra `hooks/hooks.json`. **`${CLAUDE_PLUGIN_ROOT}`** — miljøvariabel som ekspanderer til plugin-rotmappa ved kjøretid; brukes i hook-command-stier slik at plugin-en virker uavhengig av installasjonssted. **Command (slash-command)** — `/plugin:command`, definert i `commands/command.md` med frontmatter (`name`, `description`, `allowed-tools`, `model`). Kjøres av brukeren i terminalen. **Hook** — event-drevet automasjon. Konfigureres i `hooks/hooks.json` som et **objekt** med event-nøkler (`SessionStart`, `UserPromptSubmit`, `PreToolUse`, `PostToolUse`, `Stop`, `SubagentStop`, `PreCompact`, `Notification`, `SessionEnd`). To typer: `command` (kjør et script) eller `prompt` (injiser tekst). **`matcher`** — i en hook-oppføring: en string som bestemmer hvilke verktøy/eventer hooken gjelder (`"Bash"`, `"Write|Edit"`). Ikke et nestet objekt. **MCP (Model Context Protocol)** — protokoll for å koble eksterne verktøy/tjenester til Claude Code; konfigureres via `.mcp.json` i plugin-en. Server-typer: stdio, SSE, HTTP, WebSocket. **Marketplace** — register over plugins (her: `ktg-privat`, `ktg-plugin-marketplace`). Plugins aktiveres i `~/.claude/settings.json` under `enabledPlugins` med `plugin@marketplace`-notasjon. **Progressive disclosure** — skill-mønster: en kompakt `SKILL.md` med oversikt + `references/*.md` for detaljer som lastes kun ved behov. Holder kontekst-forbruket lavt. **Skill** — `skills/skill-name/SKILL.md` (+ `references/`). En `description` som beskriver hva skillen gjør *og når den skal aktiveres* (triggering avhenger av dette). Kan være user-invocable (`/skill-name`) eller modell-invoked. **`subagent_type`** — den registrerte typen som velges når man spawner en agent; å bruke `general-purpose` + "les agentfilen" i stedet er en context-budget-anti-pattern. **Three-layer architecture** — referansemønster (fra `kiur`): orkestrator-lag (hovedkontekst) / agent-lag (delegert arbeid) / knowledge-lag (`references/`, lastes max 3 av gangen). Brukes for å holde plugins skalerbare uten kontekst-eksplosjon.