Commit Graph

13 Commits

Author SHA1 Message Date
50419881dd feat: add double-sigint exit, --free flag, model command, and index_source_directory tool
- Add SIGINT handler that exits on two Ctrl+C presses within 1 second
- Introduce --free flag to switch auth type to AUTH_TYPE_FREE via auth_free()
- Implement "model" REPL command to print current prompt model name
- Register index_source_directory tool description and function in tools.h
2025-03-21 00:15:40 +00:00
0a18669f40 feat: add auth_init function and remove version-specific startup messages
Implement auth_init() in auth.h to detect API keys from environment variables (R_KEY or OPENAI_API_KEY) and set auth_type accordingly. In main.c, call auth_init() during init() and replace the conditional commercial/free version startup messages with a simple carriage return clear.
2025-03-19 21:02:39 +00:00
91553e1979 feat: replace compile-time free tier flag with runtime auth_type enum for model selection
Add AUTH_TYPE enum and global auth_type variable to auth.h, replacing the FREE_VERSION preprocessor conditional in chat.h with a dynamic get_prompt_model() function that returns "gpt-3.5-turbo" for free users and "gpt-4o-mini" for API key holders. Update all references to prompt_model to use the new function, enabling runtime model switching without recompilation.
2025-03-19 20:45:07 +00:00
a0feb4b985 fix: remove stderr warning and hardcode fallback api key in resolve_api_key
The diff removes a diagnostic fprintf to stderr that warned about a missing
environment variable, and replaces the null return path with a hardcoded
fallback API key string in auth.h's resolve_api_key function.
2025-03-16 22:35:35 +00:00
6e3e899832 chore: remove FREE_VERSION conditional and add --py flag for python file inclusion 2025-03-16 21:46:09 +00:00
8b25cb93d4 chore: add static qualifiers to global variables and const-correctness to tool result parameters 2025-03-16 06:36:13 +00:00
8a13f1a59c chore: replace placeholder branding with final logo and color scheme 2025-03-03 16:06:05 +00:00
5b660fe905 refactor: extract user authentication logic into dedicated service class with dependency injection 2025-01-27 18:06:59 +00:00
7a8f949646 feat: replace custom SSL HTTP implementation with libcurl and add include guards
Add `http_curl.h` providing `curl_post` function using libcurl, update `openai.h` to call `curl_post` instead of `https_post` in both `openai_system` and `openai_chat`, add missing `#ifndef`/`#endif` include guard to `auth.h`, increase HTTP buffer size from 4096 to 1MB, add explicit `(char *)` casts to `malloc`/`realloc` calls in `http.h`, and link `-lcurl` in both `build` and `build_free` Makefile targets.
2025-01-27 17:57:21 +00:00
b95d7d8e56 fix: add missing newlines at EOF, fix memory leaks, increase buffer sizes, and improve plugin imports 2025-01-26 01:54:45 +00:00
7160567726 feat: add free version build target with hardcoded api key and gpt-3.5-turbo model 2025-01-05 21:59:51 +00:00
af26cb29b3 fix: add newline padding to missing API key error message in auth.h 2025-01-04 16:04:14 +00:00
ddc3cdcff6 feat: replace hardcoded api_key with resolve_api_key() and add .rcontext.txt loading 2025-01-04 15:54:48 +00:00