Skip to main content

Eddie — the retro AI-powered CLI assistant

The key goal of Eddie is to serve as an educational resource for how to build real-world AI-powered applications using Mirascope.

https://github.com/Mirascope/eddie/assets/99370834/26b58035-d22d-432d-bb89-bffbee49b028

As we implement new features, we'll release detailed written walkthroughs to give you an inside look at the development process. By following along, you'll learn practical techniques and best practices for building your own AI-powered applications.

Here's what makes Eddie unique as a learning resource:

[!NOTE] Eddie currently runs using OpenAI models; however, we want everything to run locally and are working on figuring out how to match the functional calling capabilities (namely streaming tools) in order to support a fully local and open-source Eddie.

  1. Everything we use to build Eddie will be open-source (see above note). This way everyone can follow along and experiment themselves super easily. Who doesn't want a personal AI at home they can run on their laptop?
  2. We welcome and encourage external contributions. If there's an AI feature you'd like to see implemented in Eddie, you can submit a PR and even contribute to the accompanying educational content. Let's learn together!
  3. Eddie has a fun personality (inspired by the character from The Hitchhiker's Guide to the Galaxy), and we've included an eddie run command that launches a retro-style Textual app. These creative touches make the learning process more engaging and memorable.

Your feedback and contributions will be invaluable in shaping Eddie into a comprehensive resource for learning to build with AI.

So dive in, check out the code, and let us know what you think!

Happy building!

Installation

If you just want to play around with Eddie, simply install and run him:

pip install eddie-cli
eddie run

While we work on getting everything local, you'll also need to set your OpenAI API key for things to work:

# Set key
echo "export OPENAI_API_KEY='yourkey'" >> ~/.zshrc

# Reset shell
source ~/.zshrc

# Confirm things are all set
echo $OPENAI_API_KEY

Commands

Eddie currently supports the following commands:

  • eddie version: outputs the current version of the installed package
  • eddie chat: multi-turn chat with Eddie directly in the command line
  • eddie run: runs the Textual application for Eddie
  • eddie clear-memories: clears Eddie's current memories of user information

[!NOTE] The default model is gpt-4o.

Walkthroughs

You can find the written walkthroughs in the walkthroughs directory. We've labeled each walkthrough with the number corresponding to the order in which we've implemented things so it's easy to follow along.

Roadmap

If there are any particular features or projects you would be interested in watching us build, let us know! In the meantime, this is what’s on our mind roughly:

  • Basic chat with streaming
  • Memories of user for personalization using tools
  • Retro Textual CLI App (so Eddie looks like an on-board computer)
  • Match tool streaming functionality using local open-source LLM
  • RAG with Memory
  • Simple Gmail Tool-Use Agent
  • Researcher Agent
    • Web Search Tools
    • Web Scraping Tools
  • Technical Documentation Writer
  • Code Interpreter
  • Interpretable ML Data Scientist (PyTorch Lattice Bot)
  • API Documentation Assistant

Versioning

Eddie uses Semantic Versioning.

License

This project is licensed under the terms of the MIT License.

Metadata

Release files for eddie-cli 0.1.0

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

Source distribution (sdist)

Source distribution for eddie-cli 0.1.0
File Size Uploaded
eddie_cli-0.1.0.tar.gz 10.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for eddie-cli 0.1.0
File Interpreter ABI Platform
eddie_cli-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 28.5 kB

Release files / eddie_cli-0.1.0.tar.gz

Download URL eddie_cli-0.1.0.tar.gz
Size 10.4 kB
Tags Source
SHA-256 checksum
How to use checksums
7c52ddb3d4af50e940620548d94d6b32e53755adfae21d7e8dcdb8bb54f84d22
BLAKE2b-256 checksum
How to use checksums
77411105830b3f5efbcdddc35459dfe823b49054ee7973f05bfb15b946d2ba97
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.3 CPython/3.10.14 Linux/6.5.0-1021-azure

Release files / eddie_cli-0.1.0-py3-none-any.whl

Download URL eddie_cli-0.1.0-py3-none-any.whl
Size 18.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a6236372afc11a521d7d3ed7c74e1d626dc1f046ddccc442d4e80b15683fe26d
BLAKE2b-256 checksum
How to use checksums
c38ac08db98641020ee8fd196633c56a6c586affc2e13118ef598be143f3ff7d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.3 CPython/3.10.14 Linux/6.5.0-1021-azure

Release history Release notifications | RSS feed

This release

0.1.0 This release

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