AI Coding ========= Claude Code ----------- * Subscription claude code pro Must pay extra for API keys |:middle_finger:|, on https://console.anthropic.com Cancel subscription: somewhere in https://claude.ai * API Keys, Aider Containerizing -------------- * Doityourself AI Into A Jail -------------- Prepackaged Aider from Dockerhub: ``paulgauthier/aider`` (the aider developer), last release 4 months ago .. code-block:: console $ docker run -it --rm \ -v $(pwd):/workspace \ -w /workspace \ -e OPENAI_API_KEY=$OPENAI_API_KEY \ paulgauthier/aider Have to do this myself, asking claude. .. literalinclude:: Dockerfile :caption: :download:`Dockerfile` :language: text .. code-block:: console $ docker build -t aider-jail . .. code-block:: console $ docker images --no-trunc REPOSITORY TAG IMAGE ID CREATED SIZE aider-jail latest sha256:b2a60396ce53544493ff0b198bb7d8e812909e54ab38446f7e949349d271f66f 8 minutes ago 1.75GB fedora 41 sha256:1e77ba7428ee878eaef53a52e72ed1cb268e000e54ba4e8c2755eb776867b1af 13 months ago 161MB .. code-block:: console ANTHROPIC_API_KEY=<...> $ docker run -it --rm \ -v $(pwd):/workspace \ -e ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY} \ aider-jail $ docker run -it --rm \ -v $(pwd)/..:/workspace \ aider-jail ``:z`` messes with selinux on fedora, gemini says .. code-block:: console ANTHROPIC_API_KEY=<...> $ docker run -it --rm \ --user $(id -u):$(id -g) \ -e HOME=/workspace \ -e ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY} \ -v ${HOME}/My-Projects/homepage/jfasch-home:/workspace:z \ aider-jail $ docker run -it --rm \ --user $(id -u):$(id -g) \ -e HOME=/workspace \ -e ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY} \ -v ${HOME}/My-Projects/homepage/jfasch-home:/workspace:z \ -v ${HOME}/My-Builds/jfasch-home-aider:/builddir:z \ aider-jail