- Clarify how the prompt is formed
- Add a configuration file
- Integrate rustyline
- Use ollama API instead of run commands
- Parse the chat history to a correctly formatted JSON
- Implement simple completions with rustyline
- Commands
- Files
- Support multiline input with alt + enter (using rustyline)
- Update the default sysprompt
- Keep track of the model's context window and file size
- Add support for knowledge directory
- The model might not realize that it has the context file available
- Support streaming with an interrupt thread
- Add an option to hide thinking
- Custom completions for
modelandprofilecommands - Keybinds for commands?
- Support memories, which are included in the prompt by default (session/global) (could be implemented as a tool)
- Add Anthropic context sizes manually? There doesn't seem to be an API
- Refactor model information and display (context size and tool support (+ future requirements))
- Add an option to run a temporary chat
- Add OS checks to avoid calling unsupported commands
- Check if the user has the required tools installed (e.g.
git) - Add support for
rg - Check Anthropic's tool support
- Add an option to show tool results in the chat
- Allow searching using a vector db
- Configure loop amount
- Create an extension system for adding tools
- Add tool validation for user-defined tools (e.g., check unique names)
- Should tool results be saved (to history or maybe an alternative file) or (even) printed?
append_tool_inputin git history
- Allow changing the context file during a chat
-
config.create_editor- Handle command/file command logic using the registry
-
-
prompt- Enable creating, editing and using prompt files- The user should be able to define where their actual prompt is injected
-
clear- Clear the current history file -
fork- Copy the history file to another location. Edit the copy of the file -
rename- Rename the current history file - Truncate chat (line count, estimated tokens, or LLM assisted)
- Default prefix handling (when user completes a command, also insert the prefix)
- Allow configuring the default prefix for each command