Features: - 30+ Custom Skills (cognitive, development, UI/UX, autonomous agents) - RalphLoop autonomous agent integration - Multi-AI consultation (Qwen) - Agent management system with sync capabilities - Custom hooks for session management - MCP servers integration - Plugin marketplace setup - Comprehensive installation script Components: - Skills: always-use-superpowers, ralph, brainstorming, ui-ux-pro-max, etc. - Agents: 100+ agents across engineering, marketing, product, etc. - Hooks: session-start-superpowers, qwen-consult, ralph-auto-trigger - Commands: /brainstorm, /write-plan, /execute-plan - MCP Servers: zai-mcp-server, web-search-prime, web-reader, zread - Binaries: ralphloop wrapper Installation: ./supercharge.sh
3.0 KiB
3.0 KiB
description, allowed-tools
| description | allowed-tools |
|---|---|
| Set custom rules for Safety Net | Bash, Read, Write, AskUserQuestion |
You are helping the user configure custom blocking rules for claude-code-safety-net.
Context
Schema Documentation
!npx -y cc-safety-net --custom-rules-doc
Your Task
Follow this flow exactly:
Step 1: Ask for Scope
Use AskUserQuestion to let user select scope:
{
"questions": [
{
"question": "Which scope would you like to configure?",
"header": "Configure",
"multiSelect": false,
"options": [
{
"label": "User",
"description": "(`~/.cc-safety-net/config.json`) - applies to all your projects"
},
{
"label": "Project",
"description": "(`.safety-net.json`) - applies only to this project"
}
]
}
]
}
Step 2: Show Examples and Ask for Rules
Show examples in natural language:
- "Block
git add -Aandgit add .to prevent blanket staging" - "Block
npm install -gto prevent global package installs" - "Block
docker system pruneto prevent accidental cleanup"
Ask the user to describe rules in natural language. They can list multiple.
Step 3: Generate and Show JSON Config
Parse user input and generate valid schema JSON using the schema documentation above.
Then show the generated config JSON to the user.
Step 4: Ask for Confirmation
Use AskUserQuestion to let user choose:
{
"questions": [
{
"question": "Does this look correct?",
"header": "Confirmation",
"multiSelect": false,
"options": [
{
"label": "Yes",
},
{
"label": "No",
}
]
}
]
}
Step 5: Check and Handle Existing Config
- Check existing User Config with
cat ~/.cc-safety-net/config.json 2>/dev/null || echo "No user config found" - Check existing Project Config with
cat .safety-net.json 2>/dev/null || echo "No project config found"
If the chosen scope already has a config:
Show the existing config to the user. Use AskUserQuestion tool to let user choose:
{
"questions": [
{
"question": "The chosen scope already has a config. What would you like to do?",
"header": "Configure",
"multiSelect": false,
"options": [
{
"label": "Merge",
},
{
"label": "Replace",
}
]
}
]
}
Step 6: Write and Validate
Write the config to the chosen scope, then validate with npx -y cc-safety-net --verify-config.
If validation errors:
- Show specific errors
- Offer to fix with your best suggestion
- Confirm before proceeding
Step 7: Confirm Success
Tell the user:
- Config saved to [path]
- Changes take effect immediately - no restart needed
- Summary of rules added
Important Notes
- Custom rules can only ADD restrictions, not bypass built-in protections
- Rule names must be unique (case-insensitive)
- Invalid config → entire config ignored, only built-in rules apply