中文文档 | English
A lightweight Webhook management panel that supports script execution, logging, and system configuration.
![]() | ![]() |
![]() | ![]() |
Linux x64:
curl -L https://github.com/slowlyo/hook-panel/releases/latest/download/hook-panel-linux-amd64.tar.gz | tar -xzLinux ARM64:
curl -L https://github.com/slowlyo/hook-panel/releases/latest/download/hook-panel-linux-arm64.tar.gz | tar -xz💡 Tip: If you need sudo permissions, simply add
sudoat the beginning:sudo curl -L ... | tar -xz
Visit the GitHub Releases page to download the corresponding archive:
- Linux (x64):
hook-panel-linux-amd64.tar.gz - Linux (ARM64):
hook-panel-linux-arm64.tar.gz
Extract the archive after downloading.
# Add execute permission chmod +x hook-panel # Default startup (port 8080) ./hook-panel # Custom port startup ./hook-panel --port 3000 # Or use shorthand ./hook-panel -p 3000After the program starts, visit in your browser: http://localhost:8080
Note: When starting with a custom port, the system will automatically set the domain configuration to http://localhost:port for generating correct Webhook URLs.
- 🎯 Webhook Management: Create and manage Webhook endpoints with script execution support
- 📝 Script Editing: Built-in code editor supporting Shell, Python, Node.js and other scripts
- 📊 Real-time Logs: View Webhook execution logs and results
- ⚙️ System Configuration: Custom domain and timeout settings
- 🔐 Security Authentication: Bearer Token authentication to protect management interfaces
- 🌙 Theme Switching: Support for light and dark theme switching
| Parameter | Short | Description | Example |
|---|---|---|---|
| --port | -p | Specify service port | --port 3000 |
| --help | -h | Show help information | --help |
After the program starts, you can configure it through the "System Configuration" page in the Web interface:
- Domain Setting: Used to generate Webhook URLs
- Timeout: Script execution timeout
- Authentication Key: Automatically generated on first startup, saved in
data/secret.keyfile
- Open your browser and visit
http://localhost:8080 - Login with the default key
your-secret-key(recommended to change)
- Create a new script on the script management page
- Write your script code (supports Shell, Python, Node.js, etc.)
- Save and get the Webhook URL:
http://your-domain/h/{script-id}
# GET request (signature via query parameter) curl "http://localhost:8080/h/your-script-id?signature=your-signature" # POST request (signature via Header) curl -X POST \ -H "X-Signature: your-signature" \ -H "Content-Type: application/json" \ -d '{"key": "value"}' \ http://localhost:8080/h/your-script-idOn the Webhook logs page, you can view:
- Execution time and status
- Request parameters and response results
- Script output and error information
- Authentication Key: Automatically generates a random key on first startup, saved in
data/secret.keyfile - Key Management: You can regenerate a new key by deleting the
data/secret.keyfile - Webhook Signature: Supports signature verification to ensure trusted request sources
- Access Control: Management interfaces require Bearer Token authentication
- Port occupied: Use the
-pparameter to specify another port - Insufficient permissions: Ensure the file has execute permissions (
chmod +x hook-panel) - Script execution failure: Check script syntax and system environment dependencies
# Check service status (no authentication required) curl http://localhost:8080/healthThis project is licensed under the MIT License. See the LICENSE file for details.



