A hook reacts to something happening in Coroid. You pick an event, write instructions in plain language, and the hook runs when the event occurs.
You’ll find them under Settings → Automation → Automations.
Events you can respond to
| Category | Examples |
|---|---|
| Task | Created, status changed, phase changed, completed, failed |
| Agent | Started, iteration, tool called, completed, error |
| Repository | Commit pushed, branch created, pull request opened, pull request merged |
| Analysis | Dependency found, security issue, analysis completed |
| Sync | External source updated |
| Deploy | Started, completed, failed |
Read-only by default
Hooks analyse and report. They can create follow-up work; they do not alter your code directly.
That default setting makes them safe to use. An automation that edits code in response to an event operates at a moment when supervision is least likely. A hook that opens a task produces the same result via the usual workflow — specification, plan, verification, review, pull request.
Writing effective instructions
Hook instructions are processed by a model, so they read like directions to a colleague rather than code. The quality standard matches that of a specification: specify what to examine, what matters, and what to do.
Be precise about the “do nothing” scenario. Without it, a hook will generate output every time it runs, and hooks that fire constantly are often ignored.
Guardrails
Three safeguards exist because event-driven automation can fail in predictable ways:
Rate limits. Configurable per minute, per hour and per day for each hook. A hook linked to a high-frequency event could otherwise fire hundreds of times during a busy merge.
Chain depth. Hooks can trigger events that trigger further hooks. A maximum chain depth prevents this from becoming a loop.
Tool permissions. What a hook can access is controlled — read-only access, MCP calls and task creation are managed separately.
Permissions
Only admins can manage hooks; all members can view hooks and their execution history. Since a hook operates at the organisation level, this arrangement is deliberate.
Monitoring them
Each hook maintains a delivery log and analytics. Check the log after activating a new hook — the main issue isn’t an error, but constant firing without any useful output.
Hooks, schedules and Sentinel
| Mechanism | Triggered by |
|---|---|
| Hook | A platform event |
| Schedule | Time |
| Sentinel | A condition being observed |