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.
Configuration
Option 1: OTA Config File (/userdata/ota/config.json)
Add the github_proxy_url field to your OTA configuration:
{
"github_proxy_url": "https://gh-proxy.com/"
}
Option 2: Agent Config File (agent.toml)
Add the OTA section to your agent configuration:
[ota]
github_proxy_url = "https://gh-proxy.com/"
Supported Proxy Services
Pre-configured Options
-
gh-proxy.com
{"github_proxy_url": "https://gh-proxy.com/"} -
ghfast.top
{"github_proxy_url": "https://ghfast.top/"}
Custom Proxy
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.
Disabling 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 ends with a
/(it will be added automatically if missing) - 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.