Files
Claude-Code-Workflow/ccw/frontend/src/locales/en/cli-hooks.json
catlog22 3b92bfae8c feat: add Discuss and Explore subagents for dynamic critique and code exploration
- Implement Discuss Subagent for multi-perspective critique with dynamic perspectives.
- Create Explore Subagent for shared codebase exploration with centralized caching.
- Add tests for CcwToolsMcpCard component to ensure enabled tools are preserved on config save.
- Introduce SessionPreviewPanel component for previewing and selecting sessions for Memory V2 extraction.
- Develop CommandCreateDialog component for creating/importing commands with import and CLI generate modes.
2026-02-27 17:25:52 +08:00

233 lines
8.6 KiB
JSON

{
"title": "Hook Manager",
"description": "Manage CLI hooks for automated workflows",
"allTools": "All tools",
"trigger": {
"SessionStart": "Session Start",
"UserPromptSubmit": "User Prompt Submit",
"PreToolUse": "Pre Tool Use",
"PostToolUse": "Post Tool Use",
"Stop": "Stop",
"Notification": "Notification",
"SubagentStart": "Subagent Start",
"SubagentStop": "Subagent Stop",
"PreCompact": "Pre Compact",
"SessionEnd": "Session End",
"PostToolUseFailure": "Post Tool Use Failure",
"PermissionRequest": "Permission Request"
},
"form": {
"name": "Hook Name",
"namePlaceholder": "my-hook",
"description": "Description",
"descriptionPlaceholder": "What does this hook do?",
"trigger": "Trigger Event",
"matcher": "Tool Matcher",
"matcherPlaceholder": "e.g., Write|Edit (optional)",
"matcherHelp": "Regex pattern to match tool names. Leave empty to match all tools.",
"command": "Command",
"commandPlaceholder": "echo 'Hello World'",
"commandHelp": "Shell command to execute. Use environment variables like $CLAUDE_TOOL_NAME."
},
"validation": {
"nameRequired": "Hook name is required",
"nameInvalid": "Hook name can only contain letters, numbers, hyphens, and underscores",
"triggerRequired": "Trigger event is required",
"commandRequired": "Command is required"
},
"actions": {
"add": "Add Hook",
"addFirst": "Create Your First Hook",
"edit": "Edit",
"delete": "Delete",
"deleteConfirm": "Are you sure you want to delete hook \"{hookName}\"?",
"enable": "Enable",
"disable": "Disable",
"expand": "Expand details",
"collapse": "Collapse details",
"expandAll": "Expand All",
"collapseAll": "Collapse All"
},
"dialog": {
"createTitle": "Create Hook",
"editTitle": "Edit Hook \"{hookName}\""
},
"stats": {
"total": "{count} total",
"enabled": "{count} enabled",
"count": "{enabled}/{total} hooks"
},
"filters": {
"searchPlaceholder": "Search hooks by name, description, or trigger..."
},
"empty": {
"title": "No hooks found",
"description": "Create your first hook to automate your CLI workflow",
"noHooksInEvent": "No hooks configured for this event"
},
"quickTemplates": {
"title": "Quick Install Templates"
},
"templates": {
"title": "Quick Install Templates",
"description": "One-click installation for common hook patterns",
"categories": {
"notification": "Notification",
"indexing": "Indexing",
"automation": "Automation",
"utility": "Utility"
},
"templates": {
"session-start-notify": {
"name": "Session Start Notify",
"description": "Notify dashboard when a new workflow session is created"
},
"session-state-watch": {
"name": "Session State Watch",
"description": "Watch for session metadata file changes (workflow-session.json)"
},
"stop-notify": {
"name": "Stop Notify",
"description": "Notify dashboard when Claude finishes responding"
},
"auto-format-on-write": {
"name": "Auto Format on Write",
"description": "Auto-format files after Claude writes or edits them"
},
"auto-lint-on-write": {
"name": "Auto Lint on Write",
"description": "Auto-lint files after Claude writes or edits them"
},
"block-sensitive-files": {
"name": "Block Sensitive Files",
"description": "Block modifications to sensitive files (.env, secrets, credentials)"
},
"git-auto-stage": {
"name": "Git Auto Stage",
"description": "Auto stage all modified files when Claude finishes responding"
},
"post-edit-index": {
"name": "Post Edit Index",
"description": "Notify indexing service when files are modified"
},
"session-end-summary": {
"name": "Session End Summary",
"description": "Send session summary to dashboard on session end"
},
"project-state-inject": {
"name": "Project State Inject",
"description": "Inject project guidelines and recent dev history at session start"
},
"memory-v2-extract": {
"name": "Memory V2 Extract",
"description": "Trigger Phase 1 extraction when session ends (after idle period)"
},
"memory-v2-auto-consolidate": {
"name": "Memory V2 Auto Consolidate",
"description": "Trigger Phase 2 consolidation after extraction jobs complete"
},
"memory-sync-dashboard": {
"name": "Memory Sync Dashboard",
"description": "Sync memory V2 status to dashboard on changes"
},
"memory-auto-compress": {
"name": "Auto Memory Compress",
"description": "Automatically compress memory when entries exceed threshold"
},
"memory-preview-extract": {
"name": "Memory Preview & Extract",
"description": "Preview extraction queue and extract eligible sessions"
},
"memory-status-check": {
"name": "Memory Status Check",
"description": "Check memory extraction and consolidation status"
}
},
"actions": {
"install": "Install",
"installed": "Installed"
}
},
"wizards": {
"title": "Hook Wizard",
"launch": "Wizard",
"sectionTitle": "Hook Wizards",
"sectionDescription": "Create hooks with guided step-by-step wizards",
"platform": {
"detected": "Detected Platform",
"compatible": "Compatible",
"incompatible": "Incompatible",
"compatibilityError": "This hook is not compatible with your platform",
"compatibilityWarning": "Some features may not work on your platform"
},
"steps": {
"triggerEvent": "This hook will trigger on",
"review": {
"title": "Review Configuration",
"description": "Review your hook configuration before creating",
"hookType": "Hook Type",
"trigger": "Trigger Event",
"platform": "Platform",
"commandPreview": "Command Preview",
"installTo": "Install To",
"scopeProject": "Project",
"scopeGlobal": "Global"
}
},
"navigation": {
"previous": "Previous",
"next": "Next",
"create": "Create Hook",
"creating": "Creating..."
},
"memoryUpdate": {
"title": "Memory Update Wizard",
"description": "Configure hook to update CLAUDE.md on session end",
"shortDescription": "Update CLAUDE.md automatically",
"cliTool": "CLI Tool",
"cliToolHelp": "CLI tool for CLAUDE.md generation",
"threshold": "Threshold (paths)",
"thresholdHelp": "Number of paths to trigger batch update (1-20)",
"timeout": "Timeout (seconds)",
"timeoutHelp": "Auto-flush queue after this time (60-1800)"
},
"dangerProtection": {
"title": "Danger Protection Wizard",
"description": "Configure confirmation hook for dangerous operations",
"shortDescription": "Confirm dangerous operations",
"selectProtections": "Select the protections you want to enable",
"selectedProtections": "Selected Protections",
"options": {
"bashConfirm": "Dangerous Commands",
"bashConfirmDesc": "Confirm before rm -rf, shutdown, kill, format, etc.",
"fileProtection": "Sensitive Files",
"fileProtectionDesc": "Block modifications to .env, .git/, secrets, keys",
"gitDestructive": "Git Operations",
"gitDestructiveDesc": "Confirm force push, hard reset, branch delete",
"networkConfirm": "Network Access",
"networkConfirmDesc": "Confirm curl, wget, ssh, WebFetch requests",
"systemPaths": "System Paths",
"systemPathsDesc": "Block/confirm operations on /etc, /usr, C:\\Windows",
"permissionChange": "Permission Changes",
"permissionChangeDesc": "Confirm chmod, chown, icacls operations"
}
},
"skillContext": {
"title": "SKILL Context Wizard",
"description": "Configure hook to load SKILL based on prompt keywords",
"shortDescription": "Auto-load SKILL based on keywords",
"loadingSkills": "Loading available skills...",
"selectSkill": "Select skill",
"addPair": "Add Skill Configuration",
"keywordMappings": "Keyword Mappings",
"keywordsPlaceholder": "react,workflow,api",
"mode": "Detection Mode",
"modeKeyword": "Keyword Matching",
"modeKeywordDesc": "Load specific SKILLs when keywords are detected",
"modeAuto": "Auto Detection",
"modeAutoDesc": "Automatically detect and load SKILLs by name",
"autoDescription": "Auto detection mode will scan user prompts for SKILL names and automatically load matching context. All available skills are shown below."
}
}
}