- Startup banner shows ASCII art and a boxed header with the active provider model label.
- Use
/clearto reset history,/exitto quit, and/modelto pick a provider when both API keys are set. - Tool output is abbreviated; errors are printed as red bullets.
- Always run
cargo testafter making code changes. /modelopens a selectable list (arrow keys + enter) to choose OpenRouter vs HybridAI./chatbotopens a selectable list of HybridAI chatbots when HybridAI is active; selection persists to~/.config/hybridai/nano_config.json.- Input history is navigable with up/down arrows and stored in
~/.hybridai/history.jsonl.
- If
HYBRIDAI_API_KEYis set (non-empty), HybridAI is used; otherwiseOPENROUTER_API_KEYis used. - HybridAI displays model label as
HybridAI/Codingbotin the header. - OpenRouter uses the chat completions API with tools.
- HybridAI uses a local chat completions endpoint with
messages,tools, andtool_choice, plusenable_rag, and requiresHYBRIDAI_CHATBOT_ID.
OPENROUTER_API_KEY(required for OpenRouter)OPENROUTER_MODEL(default:anthropic/claude-sonnet-4.5)OPENROUTER_REFERER,OPENROUTER_TITLE(optional headers for OpenRouter)HYBRIDAI_API_KEY(required for HybridAI)HYBRIDAI_MODEL(default:gpt-5-nano)HYBRIDAI_CHATBOT_ID(required for HybridAI)HYBRIDAI_BASE_URL(default:http://localhost:5000)
- Requests and responses are appended to
debug.log(URL + JSON body + status + raw response).