{"id":30137748,"url":"https://github.com/pacphi/claude-flow-on-fly","last_synced_at":"2025-08-11T00:55:13.941Z","repository":{"id":308420003,"uuid":"1032168859","full_name":"pacphi/claude-flow-on-fly","owner":"pacphi","description":"This repository contains everything you need to set up a secure, cost-optimized remote development environment running Claude Code and Claude Flow on Fly.io infrastructure.","archived":false,"fork":false,"pushed_at":"2025-08-05T21:34:41.000Z","size":102,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-05T21:35:17.741Z","etag":null,"topics":["bash","claude-code","claude-flow","docker","flyio","remote-ssh"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pacphi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-08-04T23:24:10.000Z","updated_at":"2025-08-05T21:34:44.000Z","dependencies_parsed_at":"2025-08-05T21:35:19.378Z","dependency_job_id":"17c29380-a591-4eb1-9bfa-0ee813c89815","html_url":"https://github.com/pacphi/claude-flow-on-fly","commit_stats":null,"previous_names":["pacphi/claude-flow-on-fly"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/pacphi/claude-flow-on-fly","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pacphi%2Fclaude-flow-on-fly","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pacphi%2Fclaude-flow-on-fly/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pacphi%2Fclaude-flow-on-fly/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pacphi%2Fclaude-flow-on-fly/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pacphi","download_url":"https://codeload.github.com/pacphi/claude-flow-on-fly/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pacphi%2Fclaude-flow-on-fly/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269814273,"owners_count":24479360,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-10T02:00:08.965Z","response_time":71,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash","claude-code","claude-flow","docker","flyio","remote-ssh"],"created_at":"2025-08-11T00:55:09.867Z","updated_at":"2025-08-11T00:55:13.921Z","avatar_url":"https://github.com/pacphi.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Claude Code and Claude Flow on Fly.io\n\n## A Complete Remote AI-Assisted Development Environment\n\nThis repository contains everything you need to set up a secure, cost-optimized remote development environment running Claude Code and Claude Flow on Fly.io infrastructure.\n\n## 🌟 What You Get\n\n- **Zero Local Installation**: All AI tools run on remote VMs\n- **Cost Optimization**: Auto-suspend VMs with persistent storage (~$2-5/month)\n- **IDE Integration**: Full VSCode and IntelliJ remote development support\n- **Team Collaboration**: Shared or individual VMs with persistent volumes\n- **Security**: SSH-based access with Fly.io's network isolation\n- **Scalability**: Easily scale resources up or down as needed\n\n## ⚡ Quick Start - 5 Minutes to Claude!\n\n### Option 1: Automated Setup (Recommended) 🚀\n\nGet up and running with a single command:\n\n```bash\n# Clone and run the automated setup\ngit clone https://github.com/pacphi/claude-flow-on-fly.git\ncd claude-flow-on-fly\nchmod +x scripts/*.sh\n\n# Run the setup script\n./scripts/vm-setup.sh --app-name my-claude-dev --region iad\n\n# For performance workloads, use dedicated CPU\n./scripts/vm-setup.sh --app-name my-claude-dev --cpu-kind performance --cpu-count 2 --memory 2048\n```\n\nThat's it! The script handles everything. For detailed options, see our **[Quick Start Guide](docs/QUICKSTART.md)**.\n\n### Option 2: Manual Setup\n\nFor advanced users who prefer manual configuration, see our **[Complete Setup Guide](docs/SETUP.md)**.\n\n### Prerequisites\n\nBefore starting, you'll need:\n- [Fly.io CLI](https://fly.io/docs/flyctl/install/) installed and authenticated\n- [SSH keys](https://www.ssh.com/academy/ssh-keys) (the script will check for these)\n- [Claude Max](https://www.anthropic.com/max) subscription or [Anthropic API key](https://console.anthropic.com/settings/keys)\n\n## 📁 Repository Structure\n\n```\n├── CLAUDE.md                          # Project instructions for Claude\n├── README.md                          # This file\n├── Dockerfile                         # Development environment container\n├── fly.toml                           # Fly.io configuration with auto-scaling\n├── docker/                            # Docker-related configurations\n│   ├── config/                        # Configuration files\n│   │   ├── developer-sudoers          # Sudo permissions for developer\n│   │   └── sshd_config                # SSH daemon configuration\n│   ├── scripts/                       # Docker setup scripts\n│   │   ├── create-welcome.sh          # Welcome message creator\n│   │   ├── entrypoint.sh              # Container entrypoint\n│   │   ├── install-claude-tools.sh    # Claude tools installer\n│   │   ├── install-nvm.sh             # Node Version Manager installer\n│   │   ├── install-packages.sh        # System packages installer\n│   │   ├── setup-bashrc.sh            # Bash configuration\n│   │   ├── setup-user.sh              # User account setup\n│   │   └── vm-configure.sh            # VM configuration script\n│   └── templates/                     # Docker templates\n│       └── health-check.sh            # Health check script\n├── scripts/                           # VM management scripts\n│   ├── vm-setup.sh                    # Initial VM deployment\n│   ├── vm-teardown.sh                 # Clean VM and resource removal\n│   ├── vm-suspend.sh                  # Cost-saving VM suspension\n│   ├── vm-resume.sh                   # VM resumption\n│   ├── cost-monitor.sh                # Usage and cost tracking\n│   ├── volume-backup.sh               # Data backup\n│   └── volume-restore.sh              # Data restoration\n├── templates/                         # Configuration templates\n│   ├── CLAUDE.md.template             # Project context template\n│   ├── settings.json.template         # Claude Code hooks\n│   └── ssh_config.template            # SSH configuration\n└── docs/                              # Documentation and guides\n    ├── QUICKSTART.md                  # Quick start guide\n    ├── SETUP.md                       # Complete setup guide\n    ├── VSCODE.md                      # VSCode remote development\n    └── INTELLIJ.md                    # IntelliJ remote development\n```\n\n## 🚀 Getting Started\n\nAfter running the automated setup above, connect to your environment:\n\n### Step 1: Connect Your IDE\n\n**For VSCode:**\n```bash\n# Follow the detailed guide\nopen docs/VSCODE.md\n\n# Quick connection\nssh developer@my-claude-dev.fly.dev -p 10022\n```\n\n**For IntelliJ:**\n```bash\n# Follow the detailed guide\nopen docs/INTELLIJ.md\n\n# Use JetBrains Gateway for remote connection\n```\n\n### Step 2: Configure Environment (First Time Only)\n\n```bash\n# SSH into your VM\nssh developer@my-claude-dev.fly.dev -p 10022\n\n# Run the configuration script\n/workspace/scripts/vm-configure.sh\n\n# This will:\n# - Install Node.js, Claude Code, and Claude Flow\n# - Set up Git configuration\n# - Create workspace structure\n# - Optionally install development tools\n```\n\n### Step 3: Start Developing\n\n```bash\n# Authenticate Claude Code\nclaude\n\n# Create or navigate to your project\ncd /workspace/projects/active/your-project\n\n# Start coding with AI assistance\nclaude\n\n# Or use Claude Flow for multi-agent development\nnpx claude-flow@alpha swarm \"build a REST API\"\n```\n\n## 💰 Cost Management\n\n### Automatic Cost Optimization\n- **Auto-suspend**: VMs automatically suspend when idle\n- **Scale-to-zero**: No compute charges when not in use\n- **Persistent volumes**: Keep your data while saving on compute\n\n### Manual Cost Control\n```bash\n# Suspend VM manually\n./scripts/vm-suspend.sh\n\n# Resume VM\n./scripts/vm-resume.sh\n\n# Monitor costs and usage\n./scripts/cost-monitor.sh\n```\n\n### Estimated Costs\n- **Minimal usage**: ~$2-3/month (mostly storage)\n- **Regular usage**: ~$5-8/month\n- **Heavy usage**: ~$10-15/month\n- **Always-on**: ~$30-50/month\n\n## 🔒 Security Features\n\n- **SSH-only access** with key authentication\n- **No password authentication** enabled\n- **Network isolation** via Fly.io private networking\n- **Non-standard SSH port** (10022) to reduce attack surface\n- **Automatic security updates** in container builds\n\n## 📊 Monitoring and Maintenance\n\n### Usage Tracking\n```bash\n# Check current status\n./scripts/cost-monitor.sh --action status\n\n# View usage history\n./scripts/cost-monitor.sh --action history\n\n# Export usage data\n./scripts/cost-monitor.sh --action export --export-format csv --export-file usage.csv\n```\n\n### Backup and Restore\n```bash\n# Create backup\n./scripts/volume-backup.sh\n\n# Restore from backup\n./scripts/volume-restore.sh --file backup_20250104_120000.tar.gz\n\n# Sync entire workspace\n./scripts/volume-backup.sh --action sync\n```\n\n## 🛠 Advanced Features\n\n### Team Collaboration\n- **Shared VMs**: Multiple developers on one VM\n- **Individual VMs**: Separate VMs with shared data volumes\n- **Claude Flow Swarm**: Multi-agent AI development coordination\n\n### Custom Configuration\n- **Project templates**: Pre-configured project structures\n- **Claude hooks**: Automated code formatting and linting\n- **Environment variables**: Secure secret management\n- **Resource scaling**: Dynamic VM sizing based on workload\n\n### Integration Examples\n```bash\n# Database integration\nflyctl postgres create --name my-db\nflyctl postgres attach my-db -a my-claude-dev\n\n# Redis for caching\nflyctl redis create --name my-cache\nflyctl redis attach my-cache -a my-claude-dev\n\n# Custom domains\nflyctl certs create example.com -a my-claude-dev\n```\n\n## 📚 Documentation\n\n- **[Quick Start Guide](docs/QUICKSTART.md)**: Fast-track setup using automated scripts\n- **[Complete Setup Guide](docs/SETUP.md)**: Comprehensive manual setup walkthrough\n- **[VSCode Setup](docs/VSCODE.md)**: Detailed VSCode remote development guide\n- **[IntelliJ Setup](docs/INTELLIJ.md)**: JetBrains IDE remote development guide\n\n## 🔧 Troubleshooting\n\n### Common Issues\n\n**VM won't start:**\n```bash\nflyctl status -a my-claude-dev\nflyctl machine list -a my-claude-dev\nflyctl machine restart \u003cmachine-id\u003e -a my-claude-dev\n```\n\n**SSH connection fails:**\n```bash\n# Test SSH configuration\nssh -vvv developer@my-claude-dev.fly.dev -p 10022\n\n# Check VM status\nflyctl logs -a my-claude-dev\n```\n\n**Claude Code authentication issues:**\n```bash\n# Re-authenticate\nssh developer@my-claude-dev.fly.dev -p 10022\nclaude auth\n```\n\n### Getting Help\n\n1. **Check the logs**: `flyctl logs -a your-app-name`\n2. **Review the guides**: See detailed setup documentation\n3. **Community support**: Fly.io community forums\n4. **GitHub issues**: Report bugs and feature requests\n\n## 🎯 Use Cases\n\n### Individual Developers\n- **Remote coding**: Code from anywhere with just a browser\n- **Powerful VMs**: Access to better hardware than local machine\n- **Cost control**: Pay only for what you use\n- **AI assistance**: Claude Code and Flow for productivity\n\n### Teams\n- **Standardized environments**: Everyone works in identical setups\n- **Collaboration**: Shared projects and configurations\n- **Onboarding**: New team members productive immediately\n- **Resource sharing**: Efficient use of development resources\n\n### Education\n- **Classroom environments**: Consistent setup for all students\n- **No local installation**: Students focus on learning, not setup\n- **Cost-effective**: Schools pay only for actual usage\n- **AI learning**: Students learn with AI assistance\n\n## 🛣 Roadmap\n\n- [ ] **Multi-region deployment** for global teams\n- [ ] **Automated testing** integration\n- [ ] **CI/CD pipeline** templates\n- [ ] **Docker Compose** support for complex applications\n- [ ] **GPU support** for AI/ML workloads\n- [ ] **Pre-built templates** for popular frameworks\n\n## 🤝 Contributing\n\nContributions are welcome! Please see our contributing guidelines:\n\n1. **Fork the repository**\n2. **Create a feature branch**: `git checkout -b feature/amazing-feature`\n3. **Make changes** and test thoroughly\n4. **Commit with conventional commits**: `feat: add amazing feature`\n5. **Push and create pull request**\n\n## 📄 License\n\nThis project is licensed under the MIT License. See LICENSE file for details.\n\n## 🙏 Acknowledgments\n\n- **Anthropic**: For Claude Code and Claude AI\n- **Fly.io**: For excellent container hosting platform\n- **Community**: For feedback and contributions\n\n---\n\n## Quick Reference\n\n### Essential Commands\n\n```bash\n# VM Management\nflyctl status -a my-claude-dev                # Check status\nflyctl machine list -a my-claude-dev          # List machines\nflyctl logs -a my-claude-dev                  # View logs\n\n# Cost Management\n./scripts/vm-suspend.sh                       # Suspend VM\n./scripts/vm-resume.sh                        # Resume VM\n./scripts/cost-monitor.sh                     # Monitor usage\n\n# Data Management\n./scripts/volume-backup.sh                    # Backup data\n./scripts/volume-restore.sh                   # Restore data\n\n# Teardown\n./scripts/vm-teardown.sh --app-name my-claude-dev          # Remove VM and volumes\n./scripts/vm-teardown.sh --app-name my-claude-dev --backup # Backup then remove\n\n# Development\nssh developer@my-claude-dev.fly.dev -p 10022  # Connect via SSH\nclaude                                        # Start Claude Code\nnpx claude-flow@alpha --help                  # Claude Flow help\n```\n\n### Important Paths\n\n- **Workspace**: `/workspace` (persistent volume)\n- **Projects**: `/workspace/projects/active/`\n- **Scripts**: `/workspace/scripts/`\n- **Backups**: `/workspace/backups/`\n- **Config**: `/workspace/.config/`\n\n### Configuration Files\n\n- **Fly.io**: [fly.toml](fly.toml)\n- **Docker**: [Dockerfile](Dockerfile)\n- **SSH**: `~/.ssh/config`\n- **Claude**: `/workspace/CLAUDE.md`\n- **Hooks**: `~/.claude/settings.json`\n\nStart building amazing things with AI-assisted development on Fly.io! 🚀\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpacphi%2Fclaude-flow-on-fly","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpacphi%2Fclaude-flow-on-fly","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpacphi%2Fclaude-flow-on-fly/lists"}