- Added 44 external skills from obra/superpowers, ui-ux-pro-max-skill, claude-codex-settings - Added 8 autonomous agents (commit-creator, pr-creator, pr-reviewer, etc.) - Added 23 slash commands for Git/GitHub, setup, and plugin development - Added hooks for code formatting, notifications, and validation - Added MCP configurations for Azure, GCloud, Supabase, MongoDB, etc. - Added awesome-openclaw-skills registry (3,002 skills referenced) - Updated comprehensive README with full documentation Sources: - github.com/obra/superpowers (14 skills) - github.com/nextlevelbuilder/ui-ux-pro-max-skill (1 skill) - github.com/fcakyon/claude-codex-settings (29 skills, 8 agents, 23 commands) - github.com/VoltAgent/awesome-openclaw-skills (registry) - skills.sh (reference) - buildwithclaude.com (reference)
54 lines
1.7 KiB
Python
Executable File
54 lines
1.7 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
"""Intercept mcp__tavily__tavily-extract to upgrade extract_depth and suggest gh CLI for GitHub URLs."""
|
|
|
|
import json
|
|
import sys
|
|
|
|
try:
|
|
data = json.load(sys.stdin)
|
|
tool_input = data["tool_input"]
|
|
urls = tool_input.get("urls", [])
|
|
|
|
# Always ensure extract_depth="advanced"
|
|
tool_input["extract_depth"] = "advanced"
|
|
|
|
# Check for GitHub URLs and add soft suggestion
|
|
github_domains = ("github.com", "raw.githubusercontent.com", "gist.github.com")
|
|
github_urls = [url for url in urls if any(domain in url for domain in github_domains)]
|
|
|
|
if github_urls:
|
|
# Allow but suggest GitHub MCP/gh CLI for next time
|
|
print(
|
|
json.dumps(
|
|
{
|
|
"systemMessage": "Tip: For GitHub URLs, use gh CLI: `gh api repos/{owner}/{repo}/contents/{path} --jq '.content' | base64 -d` for files, `gh pr view` for PRs, `gh issue view` for issues.",
|
|
"hookSpecificOutput": {
|
|
"hookEventName": "PreToolUse",
|
|
"permissionDecision": "allow",
|
|
"updatedInput": tool_input,
|
|
},
|
|
},
|
|
separators=(",", ":"),
|
|
)
|
|
)
|
|
sys.exit(0)
|
|
|
|
# Allow the call to proceed
|
|
print(
|
|
json.dumps(
|
|
{
|
|
"hookSpecificOutput": {
|
|
"hookEventName": "PreToolUse",
|
|
"permissionDecision": "allow",
|
|
"updatedInput": tool_input,
|
|
}
|
|
},
|
|
separators=(",", ":"),
|
|
)
|
|
)
|
|
sys.exit(0)
|
|
|
|
except (KeyError, json.JSONDecodeError) as err:
|
|
print(f"hook-error: {err}", file=sys.stderr)
|
|
sys.exit(1)
|