Skip to main content

AI Coding Assistant CLI

Project description

Code Edith

A lightweight, terminal-based AI coding agent. Connects to any OpenAI-compatible API endpoint — hosted providers or self-hosted models both work.

License Python


Requirements

  • Python 3.10 or higher
  • An OpenAI-compatible API endpoint (e.g. OpenAI, Anthropic via proxy, Ollama, LM Studio)
  • A .env file in your home directory (~/.env) — see Configuration

Installation

From PyPI (stable):

pip install code-edith

From GitHub (latest):

pip install git+https://github.com/sapirrior/code-edith

Configuration

Create a .env file in your home directory (~/.env) with the following variables:

EDITH_API_KEY=your_api_key
EDITH_BASE_URL=https://api.openai.com/v1
EDITH_MODEL_NAME=gpt-4o
Variable Description
EDITH_API_KEY API key from your provider
EDITH_BASE_URL Base URL of the OpenAI-compatible endpoint
EDITH_MODEL_NAME Model identifier (e.g. gpt-4o, claude-3-5-sonnet, llama3)

The config is read from ~/.env at startup. Edith does not touch your project files during configuration.


Usage

Navigate to the folder you want to work in, then launch Edith:

cd your-project
edith

Trust prompt. The first time you run Edith in a folder, it will ask whether you trust it. Answering y creates a .edith/TRUST marker file in the current directory. Subsequent launches in the same folder skip this step. If you answer n, Edith exits immediately without doing anything.

Once running, type your request at the >> prompt and press Enter.


Tools

Edith has four built-in tools it can invoke autonomously to complete tasks:

Tool What it does Requires confirmation
WebSearch Searches the web using DuckDuckGo No
ReadFile Reads a local file and returns its contents No
WriteFile Creates or overwrites a file with new content Yes
ShellCommand Runs a bash command in the current directory Yes

For WriteFile and ShellCommand, Edith will always pause and show you exactly what it is about to do before asking Allow? (y/n). Typing anything other than y or yes cancels the action. The model is instructed not to retry a denied action.


Commands

Type these at the prompt at any time:

Command Description
/clear Clear the terminal and redraw the banner
/copy Copy the last response to the clipboard
/reset Wipe the conversation history (model forgets the session)
/exit Exit Edith cleanly
/help Show the command list

Reporting Issues

Open an issue on the GitHub repository.


License

Apache-2.0. See LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

code_edith-26.0.6.tar.gz (17.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

code_edith-26.0.6-py3-none-any.whl (26.0 kB view details)

Uploaded Python 3

File details

Details for the file code_edith-26.0.6.tar.gz.

File metadata

  • Download URL: code_edith-26.0.6.tar.gz
  • Upload date:
  • Size: 17.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for code_edith-26.0.6.tar.gz
Algorithm Hash digest
SHA256 b61372611dec8bfbf55ec4913118870a771e305baac0d5f7d7fc27d857f9ef60
MD5 a5197a78fba38dd9868da8bb9bc83909
BLAKE2b-256 3a562867011e5f2b758b6dc639a2f9c80a63fcfc2d457a97edc337b9a70fe0c9

See more details on using hashes here.

Provenance

The following attestation bundles were made for code_edith-26.0.6.tar.gz:

Publisher: python-publish.yml on sapirrior/code-edith

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file code_edith-26.0.6-py3-none-any.whl.

File metadata

  • Download URL: code_edith-26.0.6-py3-none-any.whl
  • Upload date:
  • Size: 26.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for code_edith-26.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 0a16f67812b309146d905daeb353d1e167e41630b886b75f2a1e54c0aa77b774
MD5 a86ac2d10bb4b0dff946d6b75e725c5d
BLAKE2b-256 579de0bbf2dc9372bd0d56a808d09d26db381cf03ac943caff20f8a08d68f9ce

See more details on using hashes here.

Provenance

The following attestation bundles were made for code_edith-26.0.6-py3-none-any.whl:

Publisher: python-publish.yml on sapirrior/code-edith

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page