Cline — Hooks
- File format
- Markdown
- Discovery path
-
.clinerules/hooks - Syllago install method
- Project scope
- Symlink support
- Yes
- Config file
-
.clinerules/hooks - Handler types
-
command
Hook events
Cline supports hooks, but syllago does not yet map its hook event names. Hook conversion to and from Cline is best-effort.
Features
How each feature converts to syllago's canonical format. See format conversion for what these statuses mean.
Fields
Native frontmatter or config fields this provider exposes. The first column is the provider's own field name; the canonical key column links to syllago's cross-provider equivalent.
| Provider field | Conversion | Canonical key | Summary |
|---|---|---|---|
cancel | Conversion type: No canonical equivalent — appended as prose in a conversion notes block so nothing is silently lost. Learn more → | — | PreToolUse hooks block tool execution by returning `cancel: true` with an `errorMessage`; PostToolUse can stop the task but not undo the call. |
contextModification | Conversion type: No canonical equivalent — appended as prose in a conversion notes block so nothing is silently lost. Learn more → | — | Hook stdout JSON `contextModification` (string) injects text into the active conversation as runtime context. |
model | Not portable Conversion type: Not portable Unique to this provider — can’t be carried across providers. Learn more → | — | Hook input JSON includes a `model` object with provider and slug, enabling model-aware logic in hook scripts. |
Other features
Behaviors, conventions, and capabilities that aren't tied to a single named field — things like path-based activation, discovery rules, and lifecycle behavior.
| Feature | Conversion | Summary |
|---|---|---|
context_injection | Translated Conversion type: Translated Actively mapped to the target provider’s equivalent field during conversion. Learn more → | context_modification_output: Cline hooks can inject additional context into the agent's session via hook output |
decision_control | Translated Conversion type: Translated Actively mapped to the target provider’s equivalent field during conversion. Learn more → | pre_tool_use_cancellation: PreToolUse hooks can cancel (block) the tool invocation; no allow or modify sub-capabilities documented |
| Eight Named Hook Types | Translated Conversion type: Translated Actively mapped to the target provider’s equivalent field during conversion. Learn more → | Eight lifecycle hook types: TaskStart, TaskResume, TaskCancel, TaskComplete, PreToolUse, PostToolUse, UserPromptSubmit, PreCompact. |
hook_scopes | Translated Conversion type: Translated Actively mapped to the target provider’s equivalent field during conversion. Learn more → | global_and_project_hooks: Cline supports global (user-wide) and project-level hook configuration |
input_modification | Translated Conversion type: Translated Actively mapped to the target provider’s equivalent field during conversion. Learn more → | context_modification_output: Cline PreToolUse hooks can return modified context/input before tool execution |
| Global and Project Hook Scopes with Additive Execution | Not portable Conversion type: Not portable Unique to this provider — can’t be carried across providers. Learn more → | Global (~/Documents/Cline/Hooks) and project (.clinerules/hooks) hooks both run for the same event; global first, then workspace. |
| Platform-Specific Hook File Format | Not portable Conversion type: Not portable Unique to this provider — can’t be carried across providers. Learn more → | Hook filenames are platform-sensitive: Windows uses <HookName>.ps1, macOS/Linux uses extensionless <HookName>; mismatches are silently skipped. |
Sources
| Source |
|---|
| https://docs.cline.bot/customization/hooks |