OTA GitHub Proxy Configuration
Overview
When downloading OTA updates from GitHub, network connectivity can be unstable in some regions. The OTA system now supports configuring GitHub proxy services to accelerate downloads.
Configure in Config Web
Connect the device over USB, open http://192.168.42.1, and find OTA → GitHub Proxy URL. Enter the complete HTTPS URL for the proxy service, for example:
https://gh-proxy.com/
Save the configuration to apply it. Leave the field empty to disable the proxy.
Configure in a File
OTA Config File (/userdata/ota/config.json)
Add the github_proxy_url field to your OTA configuration:
{
"github_proxy_url": "https://gh-proxy.com/"
}
Agent Config File (/userdata/agent/agent.toml)
Add the OTA section to your agent configuration:
[ota]
github_proxy_url = "https://gh-proxy.com/"
Proxy URL Format
You can use any GitHub proxy service that follows the standard pattern:
https://your-proxy.example.com/https://github.com/...
Example:
{
"github_proxy_url": "https://my-proxy.example.com/"
}
How It Works
When github_proxy_url is configured:
- The OTA updater detects GitHub URLs (github.com, api.github.com, raw.githubusercontent.com, objects.githubusercontent.com)
- It prepends the proxy URL to the original GitHub URL
- Downloads are fetched through the proxy service
Example transformation:
Original: https://github.com/AidenAI-IO/aiden-firmware/releases/download/v1.0.0/update.tar.gz
With proxy: https://gh-proxy.com/https://github.com/AidenAI-IO/aiden-firmware/releases/download/v1.0.0/update.tar.gz
Non-GitHub URLs are not affected by this setting.
The URL must be an absolute HTTPS URL. Common examples include https://gh-proxy.com/ and https://ghfast.top/, but you can use any trusted service that accepts the original GitHub URL as a suffix.
Disabling the Proxy
To disable the proxy, remove the github_proxy_url field or set it to an empty string:
{
"github_proxy_url": ""
}
Troubleshooting
If downloads fail with a proxy configured:
- Verify the proxy URL is accessible from your device
- Check that the proxy URL is a complete HTTPS URL
- Try a different proxy service
- Temporarily disable the proxy to verify it's not a GitHub connectivity issue
Security Note
Proxy services can see the URLs being accessed. Only use trusted proxy services, especially for production deployments.