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.7.tar.gz (16.6 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.7-py3-none-any.whl (25.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: code_edith-26.0.7.tar.gz
  • Upload date:
  • Size: 16.6 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.7.tar.gz
Algorithm Hash digest
SHA256 be606443f0ba6193ff809dba49e8ac628221e7ca50deb95edd0c952795674ff5
MD5 5a195bdb78e805bdb5349b1e525ec6d2
BLAKE2b-256 d73fa160901af4d516dad9a9e1d03bbfb8728ecef8a81d6421be107eb03e3713

See more details on using hashes here.

Provenance

The following attestation bundles were made for code_edith-26.0.7.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.7-py3-none-any.whl.

File metadata

  • Download URL: code_edith-26.0.7-py3-none-any.whl
  • Upload date:
  • Size: 25.7 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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 dc06638a6d9e7591619f2b1b34aa8bcf49158c159c3336916c30db8e3e81cabe
MD5 3d73662fca3c41593fc6b459a59ed526
BLAKE2b-256 95c323684e7f5124ec4505331a2e5c77fa5b227cd5c28eb983f92bfa241f4f96

See more details on using hashes here.

Provenance

The following attestation bundles were made for code_edith-26.0.7-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