Edi (pronounced "Eddie") is a command-line chatbot interface that allows users to interact with various AI models through the Poe API. Edi supports maintaining conversation context across multiple messages.
If Edi has a song, it will be this one: Erste Allgemeine Verunsicherung (EAV) - Edi
- Multi-line input support.
- Context preservation during chat sessions.
- Easy configuration management.
- Loading indicators during model responses.
- Option to continue previous sessions or start fresh.
Imagine this: you're in the terminal when a question pops up. Instead of switching to a browser, just tap into your favorite AI bot right from the terminal. Type your question, hit enter, and you get the answer!
As your conversation can be saved locally, you can call Edi as your mentor anytime from anywhere for wise advice based on prior interactions.
- Python 3.x
- Clone the repository or download the
edi.py
file. - Ensure you have Python 3 installed on your machine.
- (Optional.) Link
edi.py
to/usr/local/bin/edi
and make Edi executable, so you can just typeedi
on the terminal to run it:
chmod +x /path/to/edi.py
sudo ln -s /path/to/edi/edi.py /usr/local/bin/edi
Before running Edi, you need to set up your Poe API key under https://poe.com/api_key.
- Run Edi:
python3 edi.py
edi # if linked to /usr/loca/bin/
- Enter your Poe API key when prompted (it should be 43 characters long).
- Select a model from the list provided.
The configuration will be saved in ~/.config/edi/config.json
.
The message history will be saved in ~/.config/edi/session.json
.
- Run Edi:
python3 edi.py
edi # if linked to /usr/loca/bin/
- Run Edi with
--help
to see the list of supported command-line arguments. - Follow the prompts to enter your input.
- Press Enter twice to end input.
- Press Enter on a blank line to exit.
You can pipe input into Edi and await the response from the bot for scripted use.
The optional --continue
command-line argument allows you to continue the last session.
To start a fresh session, do not provide a command-line argument.
Example:
echo 'Please summarize.\nWrite a paragraph and a list of about 5 bullet points.' | \
edi --continue
- Assistant
- Web-Search
- Claude-Opus-4.1
- Claude-Sonnet-4
- GPT-5
- GPT-5-Chat
- GPT-5-mini
- Gemini-2.5-Pro
- Grok-4
- ...and more models supported by poe.com
Edi can be written using Edi, although you have to start somewhere.
For fun and the sake of good education, feel free read "Reflections on Trusting Trust" by Ken Thompson.
This project was written to build something useful for myself, while getting familiar with the Poe API. Feel free to submit pull requests for improvements or bug fixes.
This project is licensed under the MIT License.