🤷 Someguy
April 24, 2026 · View on GitHub
Someguy is an HTTP Delegated Routing V1 server that proxies requests to the Amino DHT and other Delegated Routing servers such as the Network Indexer.
Shipyard also runs a public Someguy instance at https://delegated-ipfs.dev/routing/v1.
Build
go build -o someguy
Install
go install github.com/ipfs/someguy@latest
Docker
Automated Docker container releases are available from the Github container registry:
- 🟢 Releases
latestalways points at the latest stable releasevN.N.Npoint at a specific release tag
- 🟠 Unreleased developer builds
main-latestalways points at theHEADof themainbranchmain-YYYY-DD-MM-GITSHApoints at a specific commit from themainbranch
- ⚠️ Experimental, unstable builds
staging-latestalways points at theHEADof thestagingbranchstaging-YYYY-DD-MM-GITSHApoints at a specific commit from thestagingbranch- This tag is used by developers for internal testing, not intended for end users
When using Docker, pass configuration via -e:
$ docker pull ghcr.io/ipfs/someguy:main-latest
$ docker run --rm -it --net=host ghcr.io/ipfs/someguy:main-latest
See /docs/environment-variables.md.
Usage
Run someguy as a client or as a server.
Server
Start the server with someguy start. By default it proxies requests to the IPFS Amino DHT and the cid.contact indexer (IPNI) node.
For more details, run someguy start --help.
Client
To query an existing server without running one yourself, use someguy ask <subcommand> to look up a provider, peer, or IPNS record.
For more details, run someguy ask --help.
AutoConf
Automatic configuration of bootstrap peers and delegated routing endpoints. When enabled (default), Someguy replaces the auto placeholder with network-recommended values fetched from a remote URL.
Configuration:
--autoconf/SOMEGUY_AUTOCONF--autoconf-url/SOMEGUY_AUTOCONF_URL--autoconf-refresh/SOMEGUY_AUTOCONF_REFRESH
Endpoint flags (default to auto):
--provider-endpoints/SOMEGUY_PROVIDER_ENDPOINTS--peer-endpoints/SOMEGUY_PEER_ENDPOINTS--ipns-endpoints/SOMEGUY_IPNS_ENDPOINTS
To use custom endpoints instead of auto:
someguy start --ipns-endpoints https://example.com
See environment-variables.md for URL formats and configuration details.
Deployment
For self-hosting, run the prebuilt Docker image.
Release
- Create a PR from branch
release-vX.Y.Zagainstmainthat:- Updates
CHANGELOG.mdwith entries for the current release - Updates the
version.jsonfile
- Updates
- Once the release checker creates a draft release, copy-paste the changelog into the draft
- Merge the PR; the release workflow tags and publishes automatically
License
Dual-licensed under MIT + Apache 2.0