maildir_ai

Crates.iomaildir_ai
lib.rsmaildir_ai
version0.4.0
sourcesrc
created_at2024-10-18 01:56:03.83314
updated_at2024-10-20 12:33:20.263253
descriptionmaildir_ai connects a maildir to your LLMs
homepage
repository
max_upload_size
id1413783
size63,577
Robert Escriva (rescrv)

documentation

README

maildir-ai

A way to live in the past of the future.

Seeing it in Action

Visit the non-interactive demo of maildir-ai in action.

What is maildir-ai?

maildir.ai connects to large language models via an email interface. Specifically, maildir_ai watches a maildir directory for new messages, and then sends them to a language model for processing. The language model then generates a response, which maildir_ai "sends" back to the sender.

I've been using it to help me brainstorm ideas for my research. Specifically, I've been using it to help myself solidify my thoughts on Blue, a new system I've been working on in my spare time.

The interface to maildir-ai is not complex. If you have ollama running, set the OLLAMA_HOST variable to point to it. Then:

  1. $ cargo install maildir_ai
    
  2. Initialize a new knowledge base by running:

    $ maildir-ai init ~/knowledge-base "Your Name Here"
    

    This will do two things: It will initialize a standard maildir at ~/knowledge-base (you can change this to anything you like), and it will configure a .muttrc within knowledge-base that is a starting point for interacting with the maildir-ai as "Your Name Here". Obviously, if that's not your name you should change it.

  3. In a separate background terminal, so that you can run and monitor a background daemon, run:

    $ maildir-ai maintain ~/knowledge-base
    

    This will watch the maildir for new messages in Sent and process them. It will send the email as the prompt verbatim to the language model, and then save the response in INBOX. This sounds backwards, but the next step will explain why.

  4. In your main terminal, run:

    $ maildir-ai mail ~/knowledge-base
    

    This will open mutt, my favorite email client, with the maildir-ai knowledge base. It opens to INBOX, which is where the responses are saved. You can then compose new messages or reply to existing messages and they will be saved to Sent as if you really composed them in an email. No actual email is sent, it just gets saved to ~/knowledge-base/Sent/cur/. The maintain process watches this directory for new messages and processes them, moving the saved message back to the INBOX when it begins processing the message. This way, you can see the response to your prompt in the same thread as the prompt itself.

That's it. That's the basics of maildir-ai.

Commit count: 0

cargo fmt