Skip to content
Apothem
Install

Troubleshooting

Solutions for common Apothem installation failures and runtime issues across the plugin, npx, and installer paths.

Solutions for common Apothem install and runtime issues.

Installation issues

No Python 3.10+ found

The installers probe python3, python, and the versioned names (python3.14 through python3.10) — rejecting Microsoft Store launcher shims — and stop with No Python >= 3.10 found in PATH when no candidate meets the 3.10 floor. The npx shim probes APOTHEM_PYTHON when it is set, then python3, python, and py -3, and exits 1 with its own message when none qualifies. Install CPython 3.10 or newer from python.org or your OS package repository, confirm python3 --version (or py -3 --version on Windows) reports at least 3.10, then re-run.

Missing runtime dependencies: click, rich

The engine vendors most of its third-party dependencies inside the source tree, but click and rich must be importable under the interpreter the installer selects. When either is missing, the installer names it and offers to install it for you:

! Missing Python prerequisites under <python>: click rich
  Install click rich under <python> now? [y/N]

Accept the prompt to have the installer run pip install under that interpreter. To skip the prompt, pass --yes (-Yes on PowerShell) or set APOTHEM_AUTO_INSTALL_DEPS=1 to install automatically. If you decline — or pip is unavailable, or you prefer your OS package manager — install the named packages yourself (for example python3-click and python3-rich on Debian-family hosts, or pip install click rich) and re-run.

apothem not found after running the installer

The installer places the source tree at ~/.apothem and writes an apothem shim to ~/.local/bin by default (POSIX) or %LOCALAPPDATA%\Microsoft\WindowsApps (Windows). It does not edit your PATH. If apothem is not found, that directory is not on PATH; add it, or use the PYTHONPATH form below until you do. Run the engine through the invocation the installer prints at completion:

PYTHONPATH="$HOME/.apothem/src" python -m apothem <command>

or use the npx form (npx @ahmed-g-gad/apothem <command>), which needs no PATH entry.

/plugin marketplace add fails

/plugin marketplace add ahmed-g-gad/apothem fetches the marketplace listing from GitHub. When it fails, confirm the machine can reach https://github.com/ahmed-g-gad/apothem (network, proxy, or firewall rules), then retry. If the marketplace was added earlier under a partial fetch, remove and re-add it before running /plugin install apothem@apothem.

Adding the plugin host's marketplace times out

The plugin host's command that adds a marketplace clones its repository and gives up after 30 seconds. A full clone of this repository can take longer on a slow disk, such as a Windows drive under WSL, and an earlier full clone can also leave the plugin stuck at an old version when a later refresh times out. Fetch only the two folders the plugin needs:

codex plugin marketplace remove apothem
codex plugin marketplace add ahmed-g-gad/apothem --sparse .agents/plugins --sparse plugins/apothem
codex plugin add apothem@apothem

Listing the host's plugins then shows the current version of apothem@apothem.

npx serves a stale version

npx caches downloaded packages. When npx @ahmed-g-gad/apothem --version reports an older version than the current release, clear the cache or pin the dist-tag:

npx clear-npx-cache
npx @ahmed-g-gad/apothem@latest --version

The installer stops: the maintainer public key is not in the local keyring

The installer verifies the signed release tag and stops when the signing key is not in your keyring. Import it once, check that the fingerprint reads 5C89 98F9 F241 7204 45D3 F28B 7039 6FED 9C63 4163, then run the installer again:

macOS · Linux · WSL2 · BSD — import the key once
curl -fsSL https://github.com/ahmed-g-gad.gpg | gpg --import
gpg --fingerprint 70396FED9C634163
Windows · PowerShell — import the key once
& "$env:ProgramFiles\Git\bin\bash.exe" -c 'curl -fsSL https://github.com/ahmed-g-gad.gpg | gpg --import && gpg --fingerprint 70396FED9C634163'

On Windows, import through Git's bash as shown: git verify-tag reads the keyring of the gpg that ships with Git for Windows. A host without gpg can install with APOTHEM_VERIFY=checksum, which checks the release archive's digest instead of the tag signature.

irm / iex blocked on Windows

If PowerShell execution policy blocks the installer:

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
irm https://apothem.ahmedgad.com/install.ps1 | iex

Runtime issues

apothem install finds no harnesses

Run apothem doctor to read its Harness Status table, which has one row per harness. A row marked not installed means Apothem found no install for that harness. A row marked needs --project is a project-scope harness, which doctor checks only when you pass --project <path>. If doctor reports No harness is installed yet, ensure your harness is installed, then run apothem install --harness <name>.

apothem verify reports a failing adapter

Re-run apothem install to re-materialize the adapter. If the issue persists, check the adapter-specific page under Harness Adapters.

Hooks not firing in Claude Code

Confirm Apothem is wired by checking ~/.claude/settings.json for the hook entries. If the file is missing the hooks, run apothem install again.

Getting help

On this page