Available skills list re-injected as <system-reminder> on tool results, bloating context
The full list of available skills (with descriptions) is being re-emitted as a <system-reminder> block in tool results during a session, not just loaded once at session start. In a session with the Vercel plugin enabled (~40 skills) plus ~30 personal skills, this is ~10–15k tokens repeated multiple times across Edit, Bash, and WebSearch tool results in a single conversation.
This appears to be a sibling of #32057 (rules files re-injected on every tool call), but with the available-skills list as the payload rather than .claude/rules/ files. I did not find an existing issue specifically tracking the skills-list variant.
Repro signal
In a single conversation:
- The same
<system-reminder>block listing all ~75 skills appeared multiple times across different tool results - Same content each time — re-injection rather than incremental
- Disabling the Vercel plugin (40 skills) immediately halved the size of subsequent reminders, confirming the contents track installed-skill count rather than relevance
Environment
- Claude Code CLI, interactive mode (not headless /
-p) - macOS Darwin 23.4.0
- Vercel plugin v0.40.0 enabled at time of repro
- ~30 user skills under
~/.claude/skills/and project.claude/skills/
Expected
Skills list loaded once at session start (or on plugin reload), not re-emitted on tool results.
Impact
In long edit-heavy sessions, this compounds with the rules-file re-injection in #32057 to consume a substantial fraction of the context window.
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗