Skip to main content

Ape

Ape is an AI for Linux commands.

ape "Find all the important PDF files in user/projects. An important PDF file has 'attention' in its name. Write the results to important_files.txt and then move it to Documents."

Output:

find ~/user/projects -type f -name "*attention*.pdf" > important_files.txt && mv important_files.txt ~/Documents/

Ape works with the following providers supported by Pydantic AI: OpenAI, Anthropic, Google, Groq, and Mistral.

To install (uv recommended):

uv tool install ape-linux

Next, choose a model with APE_MODEL in provider:name form (see the Pydantic AI docs for the supported providers and models) and set your provider API key in APE_API_KEY. Ape infers the provider from the model name and passes this key straight to it, so APE_API_KEY must be a key for that model's provider. Ape uses its own key variable rather than a provider's standard one (like OPENAI_API_KEY), so setting it up for Ape doesn't affect other tools on your system:

export APE_MODEL=openai:gpt-5.4-nano
export APE_API_KEY=key

Both are required.

To run:

ape Create a symbolic link called win pointing to /mnt/c/Users/jdoe

Output:

ln -s /mnt/c/Users/jdoe win

Another example:

ape Delete all the .venv directories under projects/

Output:

find projects/ -type d -name ".venv" -exec rm -rf {} +

If you ask for something that isn't a Linux command task:

ape Tell me about monkeys

Ape prints a short explanation to standard error and exits with status 2. Commands only ever go to standard output, so a refusal is never mistaken for one (and won't run if you pipe Ape into a shell):

ape: I can only help with Linux and Unix command-line tasks.

You can set the sampling temperature with the APE_TEMPERATURE environment variable (default 0.2). Some models — for example certain reasoning models — reject a temperature; set APE_TEMPERATURE=undefined to send none at all and let the model use its own default:

export APE_TEMPERATURE=0.7        # use a specific temperature
export APE_TEMPERATURE=undefined  # send no temperature at all

System-aware suggestions

Ape automatically detects a few facts about your machine and adds them to the prompt so the suggested command is correct for your environment — for example BSD (macOS) vs GNU (Linux) flags, the right package manager (brew, apt, dnf, pacman, ...), and tools that are actually installed. It looks at:

  • operating system and version (macOS version or Linux distribution),
  • whether the userland is BSD or GNU,
  • CPU architecture (e.g. arm64 vs x86_64),
  • your shell ($SHELL),
  • whether you are root,
  • available package manager(s) and common tools (rg, fd, jq, docker, ...).

This is all gathered locally with the Python standard library and is best-effort: if anything can't be determined it is simply left out. No identifying information is collected or sent — never your username, hostname, working directory, or home path.

To see exactly what Ape detects and sends (without calling the model), run ape-system-info:

ape-system-info

Output (example):

Operating system: Darwin
macOS version: 26.5
Userland: BSD (macOS) — prefer BSD-compatible flags
Architecture: arm64
Shell: /bin/zsh
Privileges: non-root (use sudo for privileged actions)
Package manager(s): brew
Available tools: rg, fd, jq, git, curl, docker, tar, rsync, sed, awk

See also: Gorilla

Metadata

Release files for ape-linux 0.5.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ape-linux 0.5.3
File Size Uploaded
ape_linux-0.5.3.tar.gz 128.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ape-linux 0.5.3
File Interpreter ABI Platform
ape_linux-0.5.3-py3-none-any.whl Python 3 none any Details

Total release size: 138.8 kB

Release files / ape_linux-0.5.3.tar.gz

Download URL ape_linux-0.5.3.tar.gz
Size 128.5 kB
Tags Source
SHA-256 checksum
How to use checksums
4917adfc851420d18da49658d07ac2a7324f48c3665ac875fa0b462f15bdb569
BLAKE2b-256 checksum
How to use checksums
e7226647981c9b7f95254c0e0b411c507182400c6e7bdf2aaae405ebc303e102
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ape_linux-0.5.3-py3-none-any.whl

Download URL ape_linux-0.5.3-py3-none-any.whl
Size 10.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
88b7b466ac096d6242da50f5f0be994c6cc7a89c1bd9f953e6a660cb3188b480
BLAKE2b-256 checksum
How to use checksums
95e30e56bd637bbbde3cf020b7efb05351841e08a473e69cc3fdbd6a52615f97
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

0.5.3 This release

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.6

2 release files

0.4.5

2 release files

0.4.4

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page