Smarter package insights for the Elixir Ecosystem
- Run
cp .env.sample .env - Generate a Github token here with no scopes. Add token to
.envfile. - Run
iex -S mix - Run
Toolbox.Tasks.Hexpm.run() - Run
Toolbox.Tasks.SCM.run()
How to deploy and use it: Deploying the sidecar on Fly.io (Porthole repository).
Porthole lets coding agents inspect
the live cluster with read-only SQL. This app only carries Porthole's
collectors (the :porthole dependency); queries are served by a separate
sidecar Fly app, ex-tools-porthole, built and configured from the Porthole
repository. The guide's commands, with the values for ex-tools:
$ fly deploy . \
--config sidecar/fly.toml \
--dockerfile sidecar/Dockerfile \
--app ex-tools-porthole \
--primary-region ewr \
--ha=false \
--build-arg ELIXIR_VERSION=1.18.4 \
--build-arg OTP_VERSION=28.1 \
--build-arg DEBIAN_VERSION=bookworm-20260610-slim \
--env DNS_CLUSTER_QUERY=ex-tools.internalRun it from a Porthole checkout at the revision in this app's mix.lock.
The sidecar's secrets are RELEASE_COOKIE (the same value as ex-tools') and
PORTHOLE_TOKENS. To use it:
$ fly proxy 4040:4040 -a ex-tools-porthole
$ claude mcp add --transport http ex-tools-porthole http://localhost:4040/ \
--header "Authorization: Bearer <your token>"When the Elixir/OTP versions in .tool-versions change, update the build
args above to match.