🤖 Generated with assistance of [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode)
1.1 KiB
1.1 KiB
src/hooks/claude-code-hooks/ — Claude Code Compatibility
Generated: 2026-02-19
OVERVIEW
~2110 LOC across 19 files. Provides Claude Code settings.json compatibility layer. Parses CC permission rules and maps CC hooks (PreToolUse, PostToolUse) to OpenCode hooks.
WHAT IT DOES
- Parses Claude Code
settings.jsonpermission format - Maps CC hook types to OpenCode event types
- Enforces CC permission rules (allow/deny per tool)
- Supports CC
.claude/settings.jsonand.claude/settings.local.json
CC → OPENCODE HOOK MAPPING
| CC Hook | OpenCode Event |
|---|---|
| PreToolUse | tool.execute.before |
| PostToolUse | tool.execute.after |
| Notification | event (session.idle) |
| Stop | event (session.idle) |
PERMISSION SYSTEM
CC permissions format:
{
"permissions": {
"allow": ["Edit", "Write"],
"deny": ["Bash(rm:*)"]
}
}
Translated to OpenCode tool restrictions via permission-compat in shared/.
FILES
Key files: settings-loader.ts (parse CC settings), hook-mapper.ts (CC→OC mapping), permission-handler.ts (rule enforcement), types.ts (CC type definitions).