
pushbutan
pushbutan pushed the butans
Repository Info
About This Server
pushbutan pushed the butans
Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.
Documentation
Pushbutan
A tool to manage GPU instances in the rocket-platform GitHub Actions environment.
Installation
git clone https://github.com/jnoller/pushbutan
cd pushbutan
conda create -n pushbutan
conda activate pushbutan
pip install -e .
Usage
First, set your GitHub token:
export GITHUB_TOKEN=your_github_token
The token can be a classic Github Token but must have actions scope, and be SSO authenticated.
CLI Commands
List available workflows:
pushbutan list
Start a Linux GPU instance (default):
pushbutan start
Start with specific options:
# Choose instance type
pushbutan start --instance-type p3.2xlarge
# Set instance lifetime
pushbutan start --lifetime 48
# Start a Windows instance
pushbutan start --windows
# Save logs for debugging
pushbutan start --save-logs
# Combine multiple options
pushbutan start --instance-type p3.2xlarge --lifetime 48 --windows --save-logs
Stop an instance:
pushbutan stop i-1234567890abcdef0
Sign Windows packages:
# Basic usage - sign all packages in a channel
pushbutan codesign --channel jnoller/label/jnoller --package "llama.cpp=*" \
--download-dir win-64-signed
# Sign specific package with options
pushbutan codesign \
--cert prod \
--channel jnoller/label/jnoller \
--package "llama.cpp=*" \
--generate-repodata \
--download-dir win-64-signed \
--save-logs \
--timeout 180 # Wait up to 3 hours
Python API
from pushbutan import Pushbutan
pb = Pushbutan()
# Create a Linux GPU instance
result = pb.trigger_linux_gpu_instance(
instance_type="g4dn.4xlarge", # or "p3.2xlarge"
lifetime="24" # hours
)
# Wait for instance and get details
instance = pb.wait_for_instance(result["run_id"])
print(f"Instance ID: {instance['instance_id']}")
print(f"IP Address: {instance['ip_address']}")
print(f"Instance Type: {instance['instance_type']}")
# Create a Windows GPU instance
result = pb.trigger_windows_gpu_instance(
instance_type="g4dn.4xlarge",
lifetime="24"
)
Available Instance Types
g4dn.4xlargep3.2xlarge
Available Architectures
linux-64: Linux with CUDA 12.4win-64: Windows (CUDA handled differently)
Development
git clone https://github.com/your-username/pushbutan.git
cd pushbutan
pip install -e .
Using the Presbutn MCP Server with Claude Desktop
git clone https://github.com/jnoller/pushbutan
cd pushbutan
conda create -n pushbutan
conda activate pushbutan
pip install -e .
Modify your Claude Desktop Configuration file (claude_desktop_config.json) to launch the MCP server:
- Set the
commandto the path to your conda binary - Set the
GITHUB_TOKENto your GitHub token
{
"Presbutan": {
"command": "<path_to_conda_binary>",
"args": ["run", "-n", "pushbutan", "--no-capture-output", "mcpserver"],
"env": {
"GITHUB_TOKEN": "<your_github_token>"
}
}
}
}
Quick Start
Clone the repository
git clone https://github.com/jnoller/pushbutanInstall dependencies
cd pushbutan
npm installFollow the documentation
Check the repository's README.md file for specific installation and usage instructions.
Repository Details
Recommended MCP Servers
Discord MCP
Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.
Knit MCP
Connect AI agents to 200+ SaaS applications and automate workflows.
Apify MCP Server
Deploy and interact with Apify actors for web scraping and data extraction.
BrowserStack MCP
BrowserStack MCP Server for automated testing across multiple browsers.
Zapier MCP
A Zapier server that provides automation capabilities for various apps.