Commit Graph

63 Commits

Author SHA1 Message Date
Jeff Carr 5fff0c4d70 testing 2025-08-26 11:42:51 -05:00
Jeff Carr a20e4e0533 work in progress 2025-08-26 11:12:23 -05:00
Castor Regex 25e483898f feat(regex): print regex.log and sleep after ready 2025-08-25 17:24:00 -05:00
Castor Regex 3db9d84b63 fix(regex): delete ready file after detection 2025-08-25 11:57:20 -05:00
Castor Regex 4f215037a1 feat(editor): wait for ready file and rename to doEditor.go 2025-08-25 11:49:30 -05:00
Jeff Carr f5b923f180 can now send questions to gemini-cli from regex 2025-08-25 10:58:47 -05:00
Jeff Carr a813b2e206 test 2025-08-25 10:48:59 -05:00
Castor Regex 0b2ec9ce15 fix: correct build errors and clean up code 2025-08-25 10:15:39 -05:00
Jeff Carr c39a2f31e6 stuff 2025-08-24 19:34:44 -05:00
Castor Regex a9b7fca08d feat(chat): add --get-next-auto-topic flag 2025-08-24 13:23:12 -05:00
Castor Regex 82eba977cd fix(count-auto): load chats before counting 2025-08-24 13:14:48 -05:00
Castor Regex 9c7d2a9c9e fix(count-auto): suppress debug output 2025-08-24 13:11:19 -05:00
Castor Regex b03889101d feat(chat): add --new-chat and --count-auto flags 2025-08-24 13:07:43 -05:00
Castor Gemini 1a6b367144 feat(stats): add --stats flag to save session stats 2025-08-24 09:01:34 -05:00
Castor Gemini cd170de677 feat(playback): Improve formatting of long playback 2025-08-24 08:39:59 -05:00
Castor Gemini 357c20027f Refactor: Rename gemini to regex throughout the codebase 2025-08-24 01:21:01 -05:00
Castor Gemini 0a28d985b8 Fix: Update Makefile to build regex binary 2025-08-24 01:08:38 -05:00
Castor Gemini 40243de35b feat(gemini): add file import capability
This commit introduces the `doImport` function, which allows importing
the content of a file directly into the "auto" chat session.

The imported content is added as a `ChatEntry` from GEMINI, structured
as a `ToolCall` with the name "Shell" and the file content as the input.
This allows external command outputs to be seamlessly integrated into
the chat history for context.
2025-08-22 11:47:00 -05:00
Jeff Carr 7646310dd4 show 'auto' by default 2025-08-22 11:22:52 -05:00
Jeff Carr cf812da1d3 add doInput() 2025-08-22 10:43:52 -05:00
Castor Gemini 5db2567e60 feat(gemini): add timestamp to auto chat entries 2025-08-22 10:16:00 -05:00
Castor Gemini 3f6a796181 fix(gemini): set author to GEMINI in doOutput 2025-08-22 10:13:55 -05:00
Castor Gemini 48ba121435 feat(gemini): update "auto" chat on --output 2025-08-22 10:12:05 -05:00
Jeff Carr e6737ba635 fix log output 2025-08-22 08:55:59 -05:00
Castor Gemini 249c2a97b8 Log doOutput to /tmp/gemini-output.log 2025-08-22 06:18:18 -05:00
Jeff Carr fbc5ebe4ce wtf. this should work 2025-08-22 06:12:47 -05:00
Castor Gemini d9e7420b31 fix(playback): Improve formatting of code snippets
- Refactor the 'printCodeSnippet' function to draw a complete,
  correctly padded box around the code.
- Each line is now padded with spaces to ensure the right border
  aligns perfectly at the terminal width.
2025-08-22 05:47:02 -05:00
Castor Gemini a08314efb8 fix(playback): Correct Printf formatting for right-alignment
- Fix a bug where the format string for the right-aligned prefix
  was being printed literally instead of being evaluated.
- The user message prefix now displays the timestamp and author
  correctly.
2025-08-22 05:44:42 -05:00
Castor Gemini 9b71be25d0 fix(playback): Correct right-alignment of user messages
- Refactor the 'printRightAligned' function to print the author
  prefix line *before* the content.
- This fixes a bug where the prefix was incorrectly appearing after
  the message body.
2025-08-22 05:40:02 -05:00
Castor Gemini 7b65b5b237 fix(playback): Add spacing before code snippets 2025-08-22 05:37:49 -05:00
Castor Gemini e26d8dd9b3 feat(playback): Add right-alignment for user messages
- Refactor the 'printContent' function to align user messages to
  the right side of the terminal.
- Gemini messages remain left-aligned.
- This provides a clearer visual distinction in the conversation flow.
2025-08-22 05:35:20 -05:00
Castor Gemini 684503fd07 fix(playback): Correct content indentation logic
- Refactor the word-wrapping algorithm in 'printContent' to
  ensure every line of conversational text is correctly
  prepended with a tab character.
- This fixes the issue where only the first line of a wrapped
  paragraph was being indented.
2025-08-22 05:31:35 -05:00
Castor Gemini b8b64da118 fix(playback): Improve content word wrapping
- Refactor the 'printContent' function to provide a cleaner layout.
- The author and timestamp prefix now appear on their own line.
- All subsequent lines of content are indented with a standard tab
  and wrapped correctly to the terminal width.
2025-08-22 05:28:06 -05:00
Castor Gemini 69395ccb0a fix(playback): Implement word wrapping for content
- Add a new 'printContent' function to handle word wrapping for the
  main conversational text in the detailed playback view.
- This ensures that long lines of text are correctly wrapped to the
  terminal width, improving readability.
2025-08-22 05:21:25 -05:00
Castor Gemini 02dd197abc refactor(ui): Adjust playback format width to 100 characters 2025-08-22 05:18:09 -05:00
Jeff Carr 1fb23427bd jesus 2025-08-22 05:00:08 -05:00
Jeff Carr 24f9157d50 blah 2025-08-22 04:35:14 -05:00
Castor Gemini 0e6bc36984 feat(playback): Implement listEntries for chat summary
- Implement a new 'listEntries' function that provides a one-line
  summary for each entry within a chat topic.
- The 'showChat' function (triggered by 'playback --uuid') now
  calls this new summary view.
2025-08-22 04:30:02 -05:00
Jeff Carr d0c27606a3 Revert "feat(playback): Implement listEntries for chat summary"
This reverts commit af9bc2db8c.
2025-08-22 04:29:10 -05:00
Castor Gemini af9bc2db8c feat(playback): Implement listEntries for chat summary
- Implement a new 'listEntries' function that provides a one-line
  summary for each entry within a chat topic.
- The 'showChat' function (triggered by 'playback --uuid') now
  calls this new summary view instead of the full rich format.
2025-08-22 04:26:25 -05:00
Jeff Carr eceb945b9c something new 2025-08-22 04:23:28 -05:00
Castor Gemini 126495ff38 fix(playback): Correctly handle UUID argument
- Update the main command loop to correctly parse and pass the
  '--uuid' flag to the showChat function.
- This fixes the 'invalid subcommand' error and makes the detailed
  playback view fully functional.
2025-08-22 04:08:54 -05:00
Jeff Carr 76ef21fc66 new logging 2025-08-22 04:00:41 -05:00
Castor Gemini 8f9726c6e4 refactor(add): Create dedicated addFile function
- Move all file reading and content-inlining logic into a new
  'addFile' function in its own 'add.go' file.
- The main function now calls this to parse a log file and then
  appends the returned chats to the main session.
- This improves separation of concerns and makes the main loop cleaner.
2025-08-22 03:45:34 -05:00
Castor Gemini 73bc0f73aa fix(playback): Make playback independent of the filesystem
- Refactor the prettyFormat.go functions to render all content
  directly from the 'Content' fields of the protobuf messages.
- Remove all 'os.ReadFile' calls from the formatting logic.
- This ensures the 'playback' command is self-contained and works
  correctly on saved protobuf data where the original content files
  are no longer available.
2025-08-22 03:36:54 -05:00
Jeff Carr 5b7e2daf65 stuff 2025-08-22 03:34:45 -05:00
Castor Gemini f6e881b064 refactor(playback): Move formatting logic to prettyFormat.go
- Create a new prettyFormat.go file to contain all the detailed
  log formatting and printing logic.
- Simplify doPlayback.go to handle the summary view and call out
  to the new prettyFormatChat function for detailed views.
- This separation of concerns makes the code cleaner and fixes
  compilation errors related to redeclared functions.
2025-08-22 03:26:39 -05:00
Jeff Carr dc2b0eeb06 something 2025-08-22 03:22:52 -05:00
Jeff Carr baba0da261 Revert "feat(playback): Implement detailed view for showChat"
This reverts commit df4e63ea75.
2025-08-22 03:20:11 -05:00
Castor Gemini df4e63ea75 feat(playback): Implement detailed view for showChat
- Integrate the rich formatting logic into the 'showChat' function.
- When 'playback' is called with a UUID, it now prints a full,
  detailed transcript of that specific chat topic, including
  content from external files, tool calls, and code snippets.
2025-08-22 03:19:10 -05:00