atgc plugin #
A Claude Code plugin whose SessionStart hook tells an agent what Tangled is,
how it signs in to atgc as its own didbot identity, and that it has to name
the account on every command. It then points the agent at atgc agent for the
rest. bin/hook.py is the whole plugin. Its doc comment says what the hook
prints and when.
/plugin marketplace add https://tangled.org/permadeath.com/atgc.git
/plugin install atgc@atgc
What it needs #
The atgc command on PATH, installed as the top-level
README says. Without it the hook prints nothing. It
never tells an agent to install anything, because that is the human's call.
On a machine running didbot, with
the didbot command and its agent daemon's socket ($DIDBOT_SOCK, or else
didbot-agent/agent.sock under $XDG_RUNTIME_DIR, or under /tmp when that
is unset), the hook also says how the session signs in as its agent identity
and approves that sign-in with didbot oauth approve. Without didbot it
leaves those lines out.
Updates #
plugin.json names no version, so Claude Code versions the plugin by the
commit its marketplace is at, and every commit to main is an update. Claude
Code doesn't fetch updates on its own for a marketplace that isn't
Anthropic's until auto-update is turned on in /plugin > Marketplaces. To
update by hand:
claude plugin marketplace update atgc
claude plugin update atgc@atgc
Tests #
python3 -m unittest discover -s plugin/tests