DimeAI
"Dime AI" is like a "Tell me, AI", translated from Spanish.
DimeAI is a command-line interface (CLI) tool for interacting with LLM models. It allows users to send prompts and receive responses directly from the terminal.
There are several other similar projects, including:
- AskGPT by Drew Baumann
- askGPT by Meir M
- askgpt by JBGruber
- chatGPT-shell-cli by 0xacx
- chatgpt-cli by Kardolus
- gpt-cli by Kharvd
Many of these projects are better than this one; they offer more features, better support, and larger communities that provide timely fixes. However, they all have one significant drawbackâthey are not developed by me. This one I feel fomfortable for me, may be will be useful for someone else.
Features
- Interact with OpenAI's GPT models from the command line
- Custom pre-prompts in the config file before each user message and at the beginning of the conversation
Planned Features
While the current feature set meets my needs, I plan to add the following in the future if inspiration or necessity arises:
- [ ] Create a Nix package and publish it in the Nix Store
- [ ] Create a Homebrew package and publish it as a Cask
- [*] Create a Debian package
- [ ] Store API key in the system keyring
- [ ] Support interactive conversations
- [ ] Save conversation history locally
- [ ] Support multiple profiles with different prompt presets
- [ ] Attach files to prompts
- [ ] Support the Anthropic Claude API
- [ ] Support LocalAI API
Build from Source
- Ensure you have Crystal installed on your system.
- Clone this repository:
git clone https://github.com/yourusername/dimeai.git cd dimeai
- Build the project:
The resulting binary will be located inshards build --static --release
./bin/dimeai
.
Installation
This app is a statically linked binary.
The easiest way to install it is to download the binary for your architecture from the GitHub releases page, git execution access to it and place it in /usr/local/bin
.
Usage
(Optional) Initialize the Default Profile
./dimeai --init
This command will create a default profile in $XDG_CONFIG_HOME/dimeai/profiles/
(or ~/.config/dimeai/profiles/
if XDG_CONFIG_HOME
is not set).
App works without profile as well, if OPENAI_API_KEY env is set. In that case it will use default settings.
Send a Prompt
./dimeai Your prompt here
or
./dimeai "Prompt & with special? * bash symbols"
or
echo "Your prompt here" | ./dimeai
Configuration
DimeAI uses configuration profiles stored in JSON format. The default profile is located at $XDG_CONFIG_HOME/dimeai/profiles/default.json
(or ~/.config/dimeai/profiles/default.json
).
Environment Variables
OPENAI_API_KEY
: Your OpenAI API key. If not set, the program will look for it in the profile configuration.XDG_CONFIG_HOME
: The directory where configuration files are stored. Defaults to~/.config
if not set.
Contributing
Contributions are welcome! Feel free to submit a pull request.