specialagent 😎
An agent is just something that acts (agent comes from the Latin agere, to do). Of course, all computer programs do something, but computer agents are expected to do more: operate autonomously, perceive their environment, persist over a prolonged time period, adapt to change, and create and pursue goals.
Designed with educational use in mind, this agent harness is intentionally only a few hundred lines of readable, dependency-free Python. It acts on its environment by running shell commands and receives output of those commands as percepts to drive subsequent actions.
Features
- Tool use. The agent has 4 tools:
exec- Runbashcommandswrite- Overwrites the contents of a filereplace- Find and replace in file
Security
This package allows LLMs to directly execute shell commands. It should never be used without appropriate sandboxing.
Usage
uvx specialagent
or
pipx specialagent
Configuration
In its default configuration, the agent will attempt to use the model hosted at http://127.0.0.1:8080/v1/chat/completions (the llama.cpp default). Alternatives may be provided by env variables. For example, to use Gemma 4 31B hosted on AI Studio:
export LLM_BASE_URL=https://generativelanguage.googleapis.com/v1beta/openai/chat/completions
export LLM_API_KEY=your-api-key-here
export LLM_MODEL=gemma-4-31b-it
Release files for specialagent 0.12.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| specialagent-0.12.2.tar.gz | 5.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| specialagent-0.12.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 11.5 kB
Release files / specialagent-0.12.2.tar.gz
| Download URL | specialagent-0.12.2.tar.gz |
|---|---|
| Size | 5.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b9da8e8e211cd613ce8af8f53f527ee4fa3211444db4d555921392a1c4e62df6
|
|
BLAKE2b-256 checksum How to use checksums |
48dd2cda591d61399349c4696d5f733ed5bbe6aaf1e2ed6654775ca6fe68fde3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.15 {"installer":{"name":"uv","version":"0.12.15","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 / specialagent-0.12.2-py3-none-any.whl
| Download URL | specialagent-0.12.2-py3-none-any.whl |
|---|---|
| Size | 5.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b31b0143a3a209b012e41b2734e5eac515b0c610b5d081ac6d1d0e581d184262
|
|
BLAKE2b-256 checksum How to use checksums |
3eefbe9463085cd71b53dc2c179850fb8087ad2a3ec6a6a66becb69c6bc41e05
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.15 {"installer":{"name":"uv","version":"0.12.15","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}
|