Bench Automation
Automate Bench operations through Composio's Bench toolkit via Rube MCP
Category: productivity Source: ComposioHQ/awesome-claude-skillsWhat Is This
The "Bench Automation" skill for the Happycapy Skills platform provides seamless automation of Bench operations using Composio's Bench toolkit, accessible via the Rube MCP interface. Bench is a widely used CLI tool for managing Frappe and ERPNext sites, enabling developers and system administrators to efficiently handle tasks such as site creation, backups, migrations, app installation, and server management. By integrating Bench operations through a skill, Happycapy users can script, schedule, and orchestrate complex workflows that interact directly with their Frappe-based environments, without manual intervention on the command line.
This skill leverages the composio-skills/bench-automation package, which exposes selected Bench commands as programmable actions via Rube MCP. The integration abstracts the complexity of direct shell or CLI operations, making it easier to automate common tasks in a controlled, repeatable, and auditable manner.
Why Use It
Automating Bench operations provides significant benefits for teams managing Frappe or ERPNext deployments. Manual execution of Bench commands can be error-prone and time-consuming, particularly when managing multiple sites or instances. By using the Bench Automation skill, you can:
- Reduce human error by standardizing repetitive tasks like site setup or backup
- Improve developer productivity by automating environment provisioning or database migrations
- Facilitate continuous integration and deployment workflows with scripted Bench commands
- Schedule critical maintenance tasks without requiring manual intervention
- Integrate Bench operations with other automated systems via Rube MCP and Composio’s broader toolkit
For example, a development team can automate the process of creating new sites for testing, backing up databases before upgrades, or installing custom apps as part of a CI/CD pipeline. The skill provides a consistent interface to trigger these actions, reducing the risk of misconfiguration and ensuring reliable operations.
How to Use It
To use the Bench Automation skill, you must have access to the Happycapy Skills platform and the Rube MCP controller. The skill is installed as a composio skill and exposes specific actions that correspond to common Bench commands.
Prerequisites
- A running instance of Frappe/ERPNext managed by Bench
- Rube MCP configured to interact with your infrastructure
- Permissions to install and run skills on your Happycapy instance
Example Usage
Once installed, you can invoke Bench actions through Rube MCP workflows. Here is an example of how to automate site creation using this skill:
## bench-create-site.yaml
steps:
- skill: bench-automation
action: create-site
args:
site_name: "testsite.local"
db_root_password: "rootpassword"
admin_password: "admin123"
install_apps:
- "erpnext"
This workflow will trigger Bench to create a new site called "testsite.local", set the database root and administrator passwords, and install the ERPNext app. You can similarly automate other operations, such as taking backups:
## bench-backup-site.yaml
steps:
- skill: bench-automation
action: backup
args:
site_name: "testsite.local"
with_files: true
The skill supports a variety of actions, including but not limited to:
create-site: Create a new Frappe sitebackup: Backup a site’s database and filesrestore: Restore a site from a backupinstall-app: Install an app to a sitemigrate: Run migrations on a siteupdate: Update Bench and all apps
Each action requires a set of arguments matching the underlying Bench command.
When to Use It
Use the Bench Automation skill whenever you need to automate tasks involving Frappe or ERPNext environments managed by Bench. Common scenarios include:
- Continuous integration pipelines that require dynamic site creation or teardown
- Nightly or scheduled backups to protect against data loss
- Automated app installation or upgrades across multiple environments
- Staging or testing workflows that provision disposable environments
- Large-scale operations involving multiple sites where manual intervention would be inefficient
This skill is particularly valuable for teams practicing DevOps or managing multi-tenant Frappe-based solutions, where consistency and repeatability are critical.
Important Notes
- Ensure that the Rube MCP and the Happycapy Skills platform have sufficient permissions to execute Bench commands on your target infrastructure.
- Bench operations can affect the integrity and availability of your sites. Always test automation workflows in a non-production environment before rolling them out broadly.
- Sensitive information such as database credentials and admin passwords should be handled securely. Avoid hardcoding secrets in workflow files or version control.
- The set of available actions and arguments may evolve as the composio-skills/bench-automation package is updated. Refer to the official documentation for the latest capabilities and best practices.
- Monitor the output and logs of automated Bench operations for errors or warnings, and implement alerting where appropriate.
- Some actions may require downtime or can impact running services. Schedule disruptive operations during maintenance windows when possible.
By leveraging the Bench Automation skill, you can streamline Frappe and ERPNext management, reduce operational overhead, and enhance reliability across your environments.