Point every agent session at basecamp instructions when instructions are set
When an operator sets instructions, the plugin's session-start hook now tells every agent session to run basecamp instructions before it writes to Basecamp. Before this, the instructions reached only agents that loaded the basecamp skill or ran as connector subagents.
Why
basecamp instructions is the only thing that reads the setting. Write commands (comments create, cards create, chat post) say nothing about it. The two places that tell an agent to run it are a line in skills/basecamp/SKILL.md and skills/basecamp-connect/subagent.md, and Claude Code shows a skill's body only once the agent loads it.
A HEY² factory run on 2026-11-07 had CLI 0.24.0, the global setting and the 0.24.0 plugin. In 173 tool calls it never loaded a skill. It ran basecamp cards show from the shell, then handed its comment to a factory script that posted it. The comment ignored the style.
What changes
agent-hook pre-commit-snapshot, which the plugin runs at SessionStart, adds a short pointer to itsadditionalContextwhenever a shared or profile instructions source is set. This happens on startup, resume, clear and compact. It goes to the model only, with nosystemMessage. With nothing set the hook stays silent, as before.- The hook names the command and doesn't inline the text. A URL source can need a fetch the hook's 5s timeout can't cover, and the command reads the profile the post goes out as.
- Docs: the hooks.json description, the
instructionshelp and basecamp-connect's paragraph on instructions.
Verified
- New tests in
agent_hook_instructions_test.go. With the call removed, the two positive tests fail. - Headless
claude -pasked, with no tools, whether its context told it to run a command before writing to Basecamp. Installed 0.24.0: "No. Nothing in my current context …". This branch's build: "Yes: runbasecamp instructions… This comes from the SessionStart hook's additional context." bin/cigreen locally.