{"id":43917491,"url":"https://github.com/limehawk/rmm-scripts","last_synced_at":"2026-02-06T21:35:52.164Z","repository":{"id":324983270,"uuid":"1088101210","full_name":"limehawk/rmm-scripts","owner":"limehawk","description":"Production-ready PowerShell and Bash scripts for RMM platforms (SuperOps, Datto, NinjaRMM)","archived":false,"fork":false,"pushed_at":"2026-01-29T23:39:28.000Z","size":1229,"stargazers_count":15,"open_issues_count":1,"forks_count":3,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-30T05:20:49.289Z","etag":null,"topics":["automation","bash","datto","msp","ninjarmm","powershell","rmm","scripts","superops"],"latest_commit_sha":null,"homepage":null,"language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/limehawk.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":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-02T10:10:49.000Z","updated_at":"2026-01-29T23:39:31.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/limehawk/rmm-scripts","commit_stats":null,"previous_names":["limehawk/rmm-scripts"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/limehawk/rmm-scripts","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/limehawk%2Frmm-scripts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/limehawk%2Frmm-scripts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/limehawk%2Frmm-scripts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/limehawk%2Frmm-scripts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/limehawk","download_url":"https://codeload.github.com/limehawk/rmm-scripts/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/limehawk%2Frmm-scripts/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29177557,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-06T20:14:21.878Z","status":"ssl_error","status_checked_at":"2026-02-06T20:14:21.443Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["automation","bash","datto","msp","ninjarmm","powershell","rmm","scripts","superops"],"created_at":"2026-02-06T21:35:51.548Z","updated_at":"2026-02-06T21:35:52.153Z","avatar_url":"https://github.com/limehawk.png","language":"PowerShell","funding_links":[],"categories":[],"sub_categories":[],"readme":"```\n██╗     ██╗███╗   ███╗███████╗██╗  ██╗ █████╗ ██╗    ██╗██╗  ██╗\n██║     ██║████╗ ████║██╔════╝██║  ██║██╔══██╗██║    ██║██║ ██╔╝\n██║     ██║██╔████╔██║█████╗  ███████║███████║██║ █╗ ██║█████╔╝ \n██║     ██║██║╚██╔╝██║██╔══╝  ██╔══██║██╔══██║██║███╗██║██╔═██╗ \n███████╗██║██║ ╚═╝ ██║███████╗██║  ██║██║  ██║╚███╔███╔╝██║  ██╗\n╚══════╝╚═╝╚═╝     ╚═╝╚══════╝╚═╝  ╚═╝╚═╝  ╚═╝ ╚══╝╚══╝ ╚═╝  ╚═╝\n```\n# RMM Scripts\n\nA collection of production-ready PowerShell scripts optimized for Remote Monitoring and Management (RMM) platforms including SuperOps, Datto, and NinjaRMM.\n\n## About\n\nThis repository contains PowerShell and Bash automation scripts designed specifically for RMM environments. All scripts follow the **Limehawk Script Framework**, ensuring consistency, reliability, and production-readiness across the entire collection.\n\n## Limehawk Script Framework\n\nAll scripts in this repository adhere to the **Limehawk Script Framework** for RMM scripting. This methodology ensures:\n\n- **Hardcoded inputs** - No param blocks or command-line arguments; all configuration is defined within the script\n- **Comprehensive documentation** - Every script includes a detailed README/CHANGELOG block with purpose, behavior, prerequisites, and examples\n- **Structured console output** - Clear, parseable output with labeled sections and key-value formatting\n- **Robust error handling** - Uses `$ErrorActionPreference = 'Stop'` with contextual error messages\n- **Production-ready code** - No secrets in logs, proper validation, and consistent exit codes\n\nFor complete guidelines, see:\n- [PowerShell Script Guidelines](docs/powershell_script_guidelines.md)\n- [Bash Script Guidelines](docs/bash_script_guidelines.md)\n\n## Scripts\n\nFor detailed documentation on all available scripts, please visit the **[Wiki](https://github.com/limehawk/rmm-scripts/wiki)**.\n\n### Script Categories\n\n- **System Administration** - Disk analysis, BitLocker management, hardware reporting, system maintenance\n- **Installation \u0026 Updates** - MSI deployment, winget installation\n- **Device Management** - Device renaming, reboot scheduling, admin account management\n- **Monitoring \u0026 Reporting** - Speed testing, product key extraction, workstation information\n- **RMM Agent Management** - Agent installation and removal\n\nBrowse the [complete script index](https://github.com/limehawk/rmm-scripts/wiki) with detailed documentation for each script including prerequisites, configuration, usage examples, and more.\n\n## Usage\n\n### Running Scripts in RMM Platforms\n\n1. **Review the script** - Each script contains a README block at the top with:\n   - Purpose and behavior description\n   - Required inputs (hardcoded values to modify)\n   - Prerequisites and permissions needed\n   - Example output\n\n2. **Configure hardcoded inputs** - Edit the variables section after `Set-StrictMode` to match your environment:\n   ```powershell\n   # Example - modify these values as needed\n   $apiKey = 'your-api-key-here'\n   $targetPath = 'C:\\Your\\Path'\n   $timeout = 300\n   ```\n\n3. **Deploy to RMM** - Upload the script to your RMM platform (SuperOps, Datto, NinjaRMM, etc.)\n\n4. **Execute and monitor** - Run the script and review console output for status\n   - Exit code 0 = Success\n   - Exit code 1 = Failure\n   - Check `[ ERROR OCCURRED ]` sections for troubleshooting\n\n### Local Testing\n\n```powershell\n# Run in PowerShell with appropriate permissions\n.\\scripts\\script_name.ps1\n```\n\n## Creating New Scripts\n\nTo create new scripts following the Limehawk Script Framework:\n\n1. **Review the guidelines** - Read [PowerShell](docs/powershell_script_guidelines.md) or [Bash](docs/bash_script_guidelines.md) guidelines\n\n2. **Follow the 4-phase approach**:\n   - **Understand** - Define the automation task and requirements\n   - **Architect** - Design operational phases and error handling\n   - **Structure** - Create README block and console sections\n   - **Generate** - Write production-ready code\n\n3. **Use the quality checklist**:\n   - README has all required sections (80 = rulers, 62 - dividers)\n   - Filename uses snake_case convention\n   - All inputs are hardcoded\n   - Input validation is present\n   - Console sections match operations\n   - Error handling provides context\n   - No secrets in output\n\n## Contributing\n\nContributions are welcome! When submitting scripts:\n\n1. **Follow the framework** - All scripts must comply with the Limehawk Script Framework\n2. **Include comprehensive README** - Document purpose, inputs, behavior, and examples\n3. **Test thoroughly** - Ensure scripts work in target RMM environments\n4. **Use descriptive commit messages** - Explain what the script does and why\n5. **No secrets** - Never commit API keys, passwords, or sensitive credentials\n\n## File Naming Convention\n\nAll scripts use snake_case naming:\n- ✅ `speedtest_to_superops.ps1`\n- ✅ `windows_update_check.ps1`\n- ✅ `chrome_installer.ps1`\n- ❌ `SpeedTest-To-SuperOps.ps1`\n- ❌ `WindowsUpdateCheck.ps1`\n\n## License\n\nThis repository is provided as-is for use in RMM environments. Review and test all scripts before production deployment.\n\n## Support\n\nFor issues or questions:\n- Review the script's README block for troubleshooting guidance\n- Check the Limehawk Script Framework guidelines for scripting standards\n- Open an issue for bug reports or feature requests\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flimehawk%2Frmm-scripts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flimehawk%2Frmm-scripts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flimehawk%2Frmm-scripts/lists"}