{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":682308998,"defaultBranch":"main","name":"shellChatGPT","ownerLogin":"mountaineerbr","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-08-23T22:36:48.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/92537363?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1692830209.402465","currentOid":""},"activityList":{"items":[{"before":"a7edd3e290becf0f9f322bab6270895872c22f7e","after":"27e5710e8c2d39b1e010919f54e2d793a8334b14","ref":"refs/heads/main","pushedAt":"2024-06-26T01:47:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Update docs, minor.\n\nAlso improve output of option -FF to print the configuration file sample to stdout with the path in which the script expects the file to be located.\n\n---\nCommit message:\n\n```\nEnhance -FF option output and update documentation\n\nThis commit updates the chatgpt.sh script in several subtle yet impactful ways:\n- The version number is bumped to v0.61.8, indicating a minor revision.\n- The default model identifier for Google integrations has been maintained but now includes a commented alternative, hinting at future flexibility or transition towards \"gemini-1.5-flash-latest\".\n- A small correction in environment variable documentation aligns it with actual usage (from MOD_GOOGLEAI to MOD_GOOGLE), which might influence external documentation or user expectations.\n- Adjustments are made to whitespace for clarity in options, reflecting a minor cosmetic but critical for usability enhancement.\n- Significantly, the -FF option now not only prints to stdout but also includes the path where the script expects the configuration file, improving user experience by providing contextual information directly within the option's output.\n\nPotential Unmentioned Effects:\n- The inclusion of a commented alternative model in the code suggests preparatory steps towards compatibility with newer versions of the Google model or a possible transition, which could affect users who manually edit their scripts for customization.\n- The correction in the documentation of environment variables could impact how external tools or scripts interface with `chatgpx.sh`, assuming the previous incorrect documentation might have led to misconfigurations.\n- Enhanced output of the -FF option not only improves usability but might also subtly change how automated scripts or user instructions involving `chatgpt.sh` need to account for parsing or reading configuration paths.\n```\n\nExplanation:\n- **Version number update**: Highlighting progression and implying non-breaking changes.\n- **Model identifier comment addition**: Suggests readiness for upcoming or alternative configurations without active change.\n- **Documentation correction for an environment variable**: Aligns usage with actual implementation, which is critical for accurate integration and avoids confusion.\n- **Whitespace adjustment in options**: Enhances readability, crucial for maintaining and understanding available script options.\n- **-FF option enhancement**: Significantly improves user interaction by displaying not just output but context about expected file paths, aiding in configuration without diving into documentation.","shortMessageHtmlLink":"Update docs, minor."}},{"before":"c2aca6d988c6f946ed314f38122458cc65826a42","after":"a7edd3e290becf0f9f322bab6270895872c22f7e","ref":"refs/heads/main","pushedAt":"2024-06-24T03:11:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Improve preview mode, and disable trailing blackslash for cat input mode.\n\nThe preview feature would not work correctly if the user prompt had spaces between the input proper and the trailing forward slash for activating the preview mode.\nBefore, as in chat completions the script removes trailing spaces, the preview user prompt would differ from the old user prompt in a second-step confirmation checking test, while trailing spaces should not be considered a new user prompt for this feature.\n\nAlso, disable the feature in which typing a trailing backslash added a new line to the user prompt and set the cat prompter mode. The idea was good at first but I rarely ever used this feature and got confused by it a few times (as I dont use it, I had forgotten about this feature), so better to disable this feature for a more simple user interface and experience.\n\nThere are many options to set the cat prompter or the text editor interfaces, so this feature now became an overload.\n\n---\nCommit Message:\n\n```\nFix preview mode issue, disable trailing backslash feature in chatgpt.sh\n\nThis update makes two significant adjustments to the chatgpt.sh script. First, it resolves a bug where the preview mode didn't operate correctly if there were spaces between the input text and the forward slash used to activate the preview. Previously, due to the stripping of trailing spaces, the script could mismatch user prompts during confirmation checks. This fix ensures that spaces preceding the preview activation slash no longer affect the preview functionality.\n\nSecondly, we've removed the ability to insert a newline by typing a trailing backslash at the end of the input. This change simplifies the user interface by eliminating a seldom-used and potentially confusing feature, aligning with our goal for a more user-friendly experience.\n```\n\nExplanation:\n\n- **Preview Mode Improvement**: The fix changes how the script handles spaces around the forward slash that activates preview mode. It uses a more refined trimming operation (`trim_trailf`) which now considers trailing spaces followed by a slash as part of the same command, reducing user confusion and improving the utility of the preview feature.\n\n- **Disabling Trailing Backslash for New Line Feature**: By commenting out the code associated with interpreting a trailing backslash as a command to insert a new line, the update streamlines user interactions. This change reduces the complexity of the script and avoids any unintended operations by users who might not remember or be aware of this feature.\n\nThese updates collectively aim to enhance the script's usability and reliability without significantly altering its core functionalities.","shortMessageHtmlLink":"Improve preview mode, and disable trailing blackslash for cat input m…"}},{"before":"2dacdb03f2e623eccd1b42c716e21cd709f388f3","after":"c2aca6d988c6f946ed314f38122458cc65826a42","ref":"refs/heads/main","pushedAt":"2024-06-24T00:39:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"On text editor Abort, unset the text editor option completely.\n\nBefore this update, the abort option would only give a one-shot non-text editor turn before returning to text editor. This update disables the text editor interface on Abort. The user can still type in the normal bash readline interface normally.\n\n---\nCommit Message:\n```\nDisable text editor interface upon Abort action in chatgpt.sh\n\nEffectively disables the text editor usage for subsequent commands after an Abort action, ensuring the bash readline interface remains the default input method unless explicitly re-enabled. This change could impact workflows relying on toggling back to the text editor mode automatically.\n\n```\n\nExplanation:\nThis update is significant because it changes the behavior of the script regarding how it handles the text editor interface when a user aborts. Previously, the script would revert to the text editor after a one-off use of the normal bash readline interface following an abort. With this update, once the user decides to abort, the script disables the text editor mode entirely unless the user manually re-enables it. This could have broader implications for usability and user experience, offering more predictability and control to users who prefer the bash readline interface or find themselves frequently aborting out of the text editor. This change makes the interaction mode more consistent and avoids unexpected switches back to the text editor mode, which might not be immediately clear to all users.","shortMessageHtmlLink":"On text editor Abort, unset the text editor option completely."}},{"before":"0450cbf5d28b7fc6719c0d302fa1d6fa6f5e43a6","after":"2dacdb03f2e623eccd1b42c716e21cd709f388f3","ref":"refs/heads/main","pushedAt":"2024-06-22T22:29:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Fix TTS request Retry on error when answer is NO.\n\n---\nUpdated `chatgpt.sh`: Improved error handling for TTS request retries.\n\nThis update changes the behavior of the script under specific failure conditions. Previously, encountering an error during a Text-To-Speech (TTS) request and responding with 'NO' would cause the script to enter a retry loop, potentially leading to unintended repetitions. The modification from 'false' to 'break 1' now correctly terminates the retry attempt, gracefully exiting the error state and improving user experience by preventing an infinite loop scenario when a TTS request cannot be successfully completed. This change enhances error handling robustness without altering the fundamental functionality but significantly improves usability in failure scenarios.","shortMessageHtmlLink":"Fix TTS request Retry on error when answer is NO."}},{"before":"d30af279c85e0e0948ce90557ff916bea8ef8116","after":"0450cbf5d28b7fc6719c0d302fa1d6fa6f5e43a6","ref":"refs/heads/main","pushedAt":"2024-06-20T02:05:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Polished chat cmd \"-S.[prompt]\" to set a system prompt (or user prompt)...\n\nAlso, improved UI for the \"-S /[awesome_prompt]\" chat command to align with \"-S .[prompt]\" command.\n\nSync documentation. Add note about custom prompts.\n\n I thought about it, and there should be a directory at ~/.config/chatgptsh to the custom prompt files \"*.pr\" and possibly the script conf file as well. However, that would demand a lot of code for the transition period, which would have to check ~/.cache/chatgptsh and ~/.config/chatgptsh for custom prompt files, and the conf file as well.\n\nSo, please backup the \".pr\" files at the user cache directory, please!\n\nChange to use shell built-in to check for the cache directory at start-up, this should optmise script start up time a little bit.\n\n---\n### Commit Message:\n```\nRefined chat command handling and improved UI prompt customization\n\n- Enhanced the functionality of \"-S.[prompt]\" and \"-S /[awesome_prompt]\" for setting system or user prompts, aligning their behaviors for a consistent user experience.\n- Updated the script documentation to include information on custom prompt configuration, introducing the storage of custom prompts in \"~/.config/chatgptsh\".\n- Implemented a shift towards using the shell's built-in checks to optimize script start-up by verifying the existence of the cache directory, reducing start-up time.\n- Minor adjustments to variable assignment and conditions for streamlined script execution and improved readability.\n\nImportant Unmentioned Effects:\n- The shift to \"~/.config/chatgptsh\" for storing custom prompts marks a transition toward a more standardized configuration file hierarchy, potentially affecting users with custom setups relying on the previous \"~/.cache\" location. Users may need to migrate their custom prompt files manually.\n- The optimization of start-up checks could marginally improve performance, particularly noticeable on systems with slower disk access or when the script is invoked frequently within short periods.\n- These updates might also lay groundwork for future enhancements or features related to customization and efficiency, indicating an ongoing effort to refine the script's usability and performance.\n```\n\nThis commit message captures the essence of the changes made, their intended improvements to the user experience, and addresses potential implications not explicitly mentioned by the developer. It maintains concisenity while providing adequate context for understanding the nature and impact of the adjustments.","shortMessageHtmlLink":"Polished chat cmd \"-S.[prompt]\" to set a system prompt (or user promp…"}},{"before":"5c834820bdaed83b06265d9c49eb781dd62506a0","after":"d30af279c85e0e0948ce90557ff916bea8ef8116","ref":"refs/heads/main","pushedAt":"2024-06-16T00:10:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Add quotes in restart and start sequence user feedback on chat command \"!start [seq]\" and \"!restart [seq]\".\n\nmake it easier to debug these sequences and there may be whitespaces and newlines...\n\n---\n**Commit Message:**\n\n```\nFix sequence feedback quoting in chat command handling\n\nThis update adds missing quotes around the variables in user feedback for the chat commands \"!start [seq]\" and \"!restart [seq]\". This change enhances debugging capabilities and ensures proper handling of sequences that contain whitespaces or newlines, which were not previously accommodated. The adjustment improves the script's robustness in processing complex command sequences.\n```\n\n**Explanation:**\n\nThe code change involves adding quotes around the `$RESTART` and `$START` variables in the feedback message functions (`__cmdmsgf`). By enclosing these variables in quotes, the developer ensures that any sequence containing spaces or newline characters is correctly interpreted as a single argument. This prevents potential issues where parts of the sequences could be mistakenly treated as separate arguments due to whitespace.\n\nMoreover, the explicit inclusion of quotes in the feedback enhances the readability of logs or console output during debugging, as it clearly demarcates the boundaries of the sequences. It may also prevent subtle bugs related to the handling of special characters or unintended command execution, contributing to safer script execution in environments where sequences might come from user input or external sources.","shortMessageHtmlLink":"Add quotes in restart and start sequence user feedback on chat comman…"}},{"before":"c252c5ef0e5304ea332479b4415448a140f941af","after":"5c834820bdaed83b06265d9c49eb781dd62506a0","ref":"refs/heads/main","pushedAt":"2024-06-15T23:42:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Improve user feedback on Stop sequences chat command \"-s [seq]\".\n\nThe chat command \"-s [seq]\" or \"!stop [seq]\" now displays the feedback of the input sequences more correctly as we escape the stop sequence buffer one by one, similarly how the codes proceeds with the \"!info\" chat command which also prints the stop sequences.\n\nWe also made the leading white space globbing more weak in chat commands \"!start [seq]\", \"!restart [seq]\", and \"!stop [seq]\". This means the code will glob out *only the first white space* after \"!stop\" command keyword to set the sequence that comes after it, meaning that a sequence of multiple white spaces is now recognised and set as a target.\n\nOn \"chatgpt.sh -ccvvv\", the code will feedback print to the user a \"p\" instead of an asterix to convey that the TTS function is going to play right away (there is still the 2 second buffer that applies).\n\nMajorly minor improvements, just a little polishing.\n\n---\n**Commit Message:** Improve user feedback and sequence recognition in chatgpt.sh\n\n**Description:**\nThis update enhances the chatgpt.sh script by refining how user inputs for stopping sequences are handled and feedback is given. Notably, the changes include:\n\n1. Improved parsing of \"-s [seq]\" or \"!stop [seq]\" commands, aligning the handling with the \"!info\" command for consistent user experience. This will likely ensure better accuracy in recognizing stop sequences as intended by the user.\n2. Adjusted chat command white space recognition to only consider the first white space after \"!stop\", \"!start\", and \"!restart\" commands. This change means the script now accurately identifies multiple white spaces following these commands as part of the intended sequence input, preventing potential misinterpretation or errors in sequence processing.\n3. Modified text-to-speech (TTS) feedback signal from an asterisk (*) to a \"p\" on verbose mode (`-ccvvv`), hinting at an immediate playback instead of a delayed action. This subtle cue might improve the user's understanding of the TTS function's state, especially regarding the 2-second buffer.\n\nThe changes made in this update address specific user interaction aspects and command parsing accuracy, enhancing overall usability and feedback clarity. These refinements might not only provide users with better control over the command functionalities but could also mitigate potential misunderstandings or misuse of sequence spacing in commands. It's worth noting that while these improvements seem minor, they contribute significantly to the user experience by ensuring commands are interpreted as intended and providing clearer, more immediate feedback where applicable.","shortMessageHtmlLink":"Improve user feedback on Stop sequences chat command \"-s [seq]\"."}},{"before":"53fcb8775f935cf03687154848fcd0242652dd2e","after":"c252c5ef0e5304ea332479b4415448a140f941af","ref":"refs/heads/main","pushedAt":"2024-06-12T00:26:30.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Improve retry request on TTS curl error.\n\nSince commit\ne2bd85172f944d9017239e2b878d475033072aa2 (gitlab)\nv0.24.14 dec/2023\nthe retry request in TTS curl error functionality seem to have been broken.\n\nWe updated the kill command with the \"-s INT\", so ctrl-c and pressing [k] will have the same effect,\nwe also wants to be sure to have a non-zero exit code for checking in the following case statement.\n\nAnd we updated the case statement with older conditions, so that it now works as expected.\n\nUpdate all curl commands with --fail-with-body and --fail only, because --fail-with-body was implemented in curl\nAdded in 7.76.0\n31-Mar-2021\n\nand we want to make sure this script works with older curl versions.\n\n---\n**Commit Message:**\n\n```\nFix retry mechanism on TTS curl error and ensure backward compatibility with older curl versions\n\n- Modified curl commands across the script to use `--fail` instead of `--fail-with-body` to ensure compatibility with curl versions before 7.76.0.\n- Updated signal handling for process termination (`kill -s INT`) to align keyboard interrupt (Ctrl-C) with the script's custom abort sequence.\n- Adjusted case statements and error handling logic to accurately reflect retry request behavior and error processing.\n- Refined process cleanup and error code management for more predictable script exit behavior under various conditions.\n\nThis update addresses issues introduced in previous versions where retry mechanisms on TTS command failures were not functioning as expected. Reverting to `--fail` ensures broader compatibility with diverse runtime environments. The adjustment in signal handling and error code propagation may alter how the script behaves under abort conditions, potentially leading to different outcomes in scripts or systems that rely on the precise exit status of this script. Review and testing are recommended for integrations sensitive to these aspects.\n```","shortMessageHtmlLink":"Improve retry request on TTS curl error."}},{"before":"08c827975c5f30319f86e15b2a29c3b0fa1eb69d","after":"53fcb8775f935cf03687154848fcd0242652dd2e","ref":"refs/heads/main","pushedAt":"2024-06-11T03:03:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Tidy the code, and improve the chat command \"!regen\" (regenerate last response).\n\nUpdate unset variables on some functions that break the session.\n\nAdd code into a function grep_usr_lastlinef() to re-use it in some other\nspecific cases to activate the regeneration mechanism (last response regeneration)\nto grep and load the last user entry from history file as the prompt\nto make the new request.\n\nI think this solves some issues when changing history files, resuming/\ncontinuing the last session from this other history file,\nand trying to regenerate the last response from the last question (request prompt).\n\nThis ensures that the last regeneration of response matches the session of the\nhistory file even if it has changed and resumed (so no buffer in the running programme yet).\n\nI use the regenerate functions (mainly the alias \"//\" on a new prompt) to\nregenerate the last response of a session, and I have been experimenting a lot with changing from history files.\n\nThe new update makes the chat command \"/regen\" or its alias \"/\", or even \"//\" on a new prompt to correctly regenerate the last response when changing to\ndifferent history files.\n\nAlso, just improve how some code is spaced and paragraphed to better reading.\n\nOverall, in v0.60 through v0.61, the script has regained code optimisations\nfor speed, some updated benefited even the start up time, which should be noticeable specially for google gemini models.\n\n---\nCommit message:\n\n```\nImprove session continuity and command regen effectiveness\n\nThis update refines the chatgpt.sh script by cleaning up the code, enhancing readability, and notably improving the \"!regen\" command functionality across history file transitions. Specifically, we introduced a function `grep_usr_lastlinef()` to efficiently fetch the last user entry for prompt regeneration, which is critical for maintaining session relevance when switching history files. Unnecessary variables are now effectively unset to prevent session breaks. Besides direct improvements, this change could lead to subtler enhancements in session management and startup times due to code optimizations, especially noticeable with intensive models like google gemini.\n```\n\nExplanation:\n- The introduction of `grep_usr_lastlinef()` simplifies retrieving the last prompt from the history file, crucial for session integrity during history file changes and ensuring the regenerated response is contextually accurate within the current session.\n- Unsetting obsolete variables (`TOTAL_OLD`, `MAX_PREV`, etc.) clears potential mismatches or errors during session transitions, contributing to smoother session resumption and error reduction.\n- Code cleaning for readability indirectly benefits maintenance efforts, making future updates more efficient.\n- Though not explicitly mentioned, these improvements might significantly affect performance and reliability, particularly in environments with vigorous session activity or when leveraging resource-intensive computation models.","shortMessageHtmlLink":"Tidy the code, and improve the chat command \"!regen\" (regenerate last…"}},{"before":"67823ac7f07665520594c6be172b4bbd6327bb82","after":"08c827975c5f30319f86e15b2a29c3b0fa1eb69d","ref":"refs/heads/main","pushedAt":"2024-06-10T02:36:53.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Dont remove leading newlines from stop sequences for chat mode.\n\nThe example I was using came from OpenAI Playground, but it has caused some problems lately in which generation would halt, and the problem is the too short stop sequences \"Q:\" and \"A:\", now they are \"\\nQ:\" and \"\\nA:\".\n\n---\nFix: Stop sequences for chat mode\n\nThis commit fixes an issue where chat generation would halt due to too short stop sequences. The stop sequences \"Q:\" and \"A:\" have been changed to \"\\nQ:\" and \"\\nA:\" to ensure proper generation.","shortMessageHtmlLink":"Dont remove leading newlines from stop sequences for chat mode."}},{"before":"c810f98aa8eced25aa0dd6a600112afbf69327e4","after":"67823ac7f07665520594c6be172b4bbd6327bb82","ref":"refs/heads/main","pushedAt":"2024-06-10T00:45:33.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Just improve one line in the last code update.\n\n---\nFix: Correctly pass the FIFO file path to the session\n\nThis commit fixes an issue where the FIFO file path was not being correctly passed to the session. The issue was caused by a missing `$` before `FILEFIFO` in the `session_sub_printf` command. This commit adds the missing `$` to ensure that the correct file path is passed to the session.","shortMessageHtmlLink":"Just improve one line in the last code update."}},{"before":"f5bcb32be2b98eaee45d54c25f794e79546708a9","after":"c810f98aa8eced25aa0dd6a600112afbf69327e4","ref":"refs/heads/main","pushedAt":"2024-06-10T00:36:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Optimise start-up time in some circunstances.\n\nOnly preview input prompt tokens when that is not a session nor a chat command. For that, we were able to change the code position in the script so that is only activated when we are certain of user input from the command line.\n\nAlso, move the block of warning and tips with that.\n\nRevert a change in recognising session commands from the command line input I had dome as an experiment but forgot to remove in the last update.\n\n---\nfeat: optimise start-up time\n\nRefactor code to optimise start-up time.\n\nMove token preview to only activate for input from the command line.\n\nMove warnings and tips to the correct place.\n\nRevert a change in recognising session commands from the command line input.","shortMessageHtmlLink":"Optimise start-up time in some circunstances."}},{"before":"5de2d15efaea11f683d306d729c2983a6611d788","after":"f5bcb32be2b98eaee45d54c25f794e79546708a9","ref":"refs/heads/main","pushedAt":"2024-06-10T00:07:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Print session context on -C (continue), aglutinate code of session and chat commands.\n\nThe session commands can now be aglutinated with the chat commands becase they dont break the session in a history file before the end of the loop now!\n\nHowever, to kep the old behavior to change to a history file as a positional parameter `/[histfile]` shortcut for `/session [histfile]`, we dont remove the old code.\n\n---\nfeat: aglutinate session and chat commands\n\nThe session commands can now be aglutinated with the chat commands because they don't break the session in a history file before the end of the loop now!\n\nHowever, to keep the old behavior to change to a history file as a positional parameter `/[histfile]` shortcut for `/session [histfile]`, we don't remove the old code.","shortMessageHtmlLink":"Print session context on -C (continue), aglutinate code of session an…"}},{"before":"8c873a1ddb5e11dccc9470cda54a7114d94dd2e2","after":"5de2d15efaea11f683d306d729c2983a6611d788","ref":"refs/heads/main","pushedAt":"2024-06-09T22:44:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Optmise _mediachatf() function (in multimodal).\n\nThis function worked with slow bash glob substitutions on long strings only. Now use of sed to speed everything up...\n\n---\nchore(multimodal): Optimize _mediachatf() function\n\nThis commit optimizes the `_mediachatf()` function by using `sed` instead of bash glob substitutions for faster string manipulation. This improves the performance of the multimodal feature.","shortMessageHtmlLink":"Optmise _mediachatf() function (in multimodal)."}},{"before":"60da0a449242a6582146ffb6826f9f183e26930c","after":"8c873a1ddb5e11dccc9470cda54a7114d94dd2e2","ref":"refs/heads/main","pushedAt":"2024-06-09T16:54:39.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Regression: fix retry whisper API request on error.\n\nThe retry mechanism had been restricted since\n\nd4d0b458dd490ba80021f6cfcbde8619473ec552 (gitlab)\n17 February 2024\n\nSo it was not working correctly anymore.\n\nNow it is fixed.\n\n---\nFix: Retry whisper API request on error\n\nThis commit fixes a regression introduced in commit d4d0b458dd490ba80021f6cfcbde8619473ec552 where the retry mechanism for whisper API requests was restricted.","shortMessageHtmlLink":"Regression: fix retry whisper API request on error."}},{"before":"0f84fff9d840048711dd4e94c570551fa8945e77","after":"60da0a449242a6582146ffb6826f9f183e26930c","ref":"refs/heads/main","pushedAt":"2024-06-09T16:05:01.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Regression: fix session management commands\n\nSession management commands (`!session`, `!copy`, and `!fork`),\nwere not working correctly since at least commit\n7b94eab386185cefb5286727e8590582007c9f5e (at gitlab)\non 15 May 2024 at 19:04:30 GMT-3 (3 weeks ago).\n\nThis is due to how the history recording system has changed since the start of this year,\nwhich in retrospective I did not think this refactoring would change almost all\nfunctions dealing with session and history!\n\nI reckon that the change was good because it stopped littering the history file\nwith unecessary buffers but breaking a session now has become much of a larger problem.\n\nAlso, add some more examples of how these commands may be used to copy an older session to the current (tail) session of the history file. Not so straightforwards but the simplest I can think of, anyways.\n\n---\nFix: session management commands\n\nThis commit fixes session management commands (`!session`, `!copy`, and `!fork`), which were broken since commit 7b94eab386185cefb5286727e8590582007c9f5e.\n\nThe issue was caused by changes to the history recording system, which inadvertently broke session management functionality. This commit fixes the issue by restoring the correct behavior.\n\nAdditionally, this commit adds examples of how to copy older sessions to the current session.","shortMessageHtmlLink":"Regression: fix session management commands"}},{"before":"4686613c000a56f3c4d6dbfc4342c59b32012451","after":"0f84fff9d840048711dd4e94c570551fa8945e77","ref":"refs/heads/main","pushedAt":"2024-06-06T04:26:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Remove the backslash \\ shortcut from the end of input prompt.\n\nThis is an old shortcut to enter the CTRL+D prompter, to type a backslash at teh end of input prompt. It will remove the backslash and add a newline, and enter ctrld-d prompter mode.\n\n---\nRemove backslash shortcut for CTRL+D prompter in chatgpt.sh","shortMessageHtmlLink":"Remove the backslash \\ shortcut from the end of input prompt."}},{"before":"4a301f4478272cc1bd8fcbf2059bfed9609ce812","after":"4686613c000a56f3c4d6dbfc4342c59b32012451","ref":"refs/heads/main","pushedAt":"2024-06-04T19:33:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Regression bug fix: chat command \"!url:\", \"!cat:\", and \"!sh:\" to add to buffer as user message.\n\nEven on commit 24dc22b4c072aa1f0492d0dd0c96557b78bb8b5b (from about 2 weeks ago)\nwhen I thought we had corrected these commands (v0.58.4), that update was not good enough.\n\nNow we stream lined \"!url:\", \"!cat:\", and \"!sh:\"\ncommands and simplified how the \":\" operator is processed in these cases\n(buffer output as user message).\n\n---\nFixed regression in \"!url:\", \"!cat:\", and \"!sh:\" commands, streamlining ':' operator processing for user message buffer output. Simplified pattern matching and command parsing logic for better consistency and reliability.","shortMessageHtmlLink":"Regression bug fix: chat command \"!url:\", \"!cat:\", and \"!sh:\" to add …"}},{"before":"2d782fa8cae8d162c5ad15028ea00a75b055becd","after":"4a301f4478272cc1bd8fcbf2059bfed9609ce812","ref":"refs/heads/main","pushedAt":"2024-06-03T22:31:29.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Documentation sync.\n\n---\nUpdate: Improved API key option documentation and corrected `--keep-alive` syntax in `chatgpt.sh`.","shortMessageHtmlLink":"Documentation sync."}},{"before":"657673a550a30af9dc7b026c752af0498d53f442","after":"2d782fa8cae8d162c5ad15028ea00a75b055becd","ref":"refs/heads/main","pushedAt":"2024-06-03T22:23:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Update config file example +++++.\n\n---","shortMessageHtmlLink":"Update config file example +++++."}},{"before":"60035c988f4059f303c6f79535667cad976bb901","after":"657673a550a30af9dc7b026c752af0498d53f442","ref":"refs/heads/main","pushedAt":"2024-06-03T22:22:23.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Update config file example ++++.\n\n---","shortMessageHtmlLink":"Update config file example ++++."}},{"before":"10f10538fc7dbe6e31008d7889dce606f212ed9e","after":"60035c988f4059f303c6f79535667cad976bb901","ref":"refs/heads/main","pushedAt":"2024-06-03T22:20:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Update config file example.\n\n---","shortMessageHtmlLink":"Update config file example."}},{"before":"d65d2c536f7adcb28367454420b02e17692fd79b","after":"10f10538fc7dbe6e31008d7889dce606f212ed9e","ref":"refs/heads/main","pushedAt":"2024-06-03T22:16:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Update config file example.\n\n---","shortMessageHtmlLink":"Update config file example."}},{"before":"6d6432f06120a21f1fd7ba81a71090ef83a90041","after":"d65d2c536f7adcb28367454420b02e17692fd79b","ref":"refs/heads/main","pushedAt":"2024-06-03T21:04:39.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Minor adjustment in TTS: initial buffering timeout is now 2 secs (was 3 secs)\n\nActually, now the minimum amount of time if 2 secs but the buffering may go on to as almost 3 seconds.\n\nFunction new_prompt_confirmf() receives improved case statements to check and set up for extra options.\n\nNew \"option whisper_append\" as \"[W]hspr_Add\", to append more input to the previous input in whisper mode.\nType \"W\" or \"A\" to activate it (only for the full verbose interface).\n\nImprove the chat command \"-w\" (or \"/w\") to accept one-shot whisper mode with \"-ww\" and \"/ww\".\n\nOBS: case statements are used because they are faster than [[ test for glob matching.\n\n\n\n---\n```\nUpdate chatgpt.sh to v0.59: optimize whisper mode and TTS buffering\n\n- Reduce initial TTS buffering timeout to 2 secs\n- Improve case statements for new prompt confirmation options\n- Implement \"whisper append\" function activated by \"W\" or \"A\"\n- Enhance one-shot whisper mode with \"-ww\" and \"/ww\" commands\n- Miscellaneous code cleanup and minor bug fixes\n```","shortMessageHtmlLink":"Minor adjustment in TTS: initial buffering timeout is now 2 secs (was…"}},{"before":"744494c9388841791521da3a6435f3b8ddeedc60","after":"6d6432f06120a21f1fd7ba81a71090ef83a90041","ref":"refs/heads/main","pushedAt":"2024-05-17T22:26:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Update `~/.chatgpt.conf`, expose `$OPTMD` for markdown option (0,1).\n\n---","shortMessageHtmlLink":"Update ~/.chatgpt.conf, expose $OPTMD for markdown option (0,1)."}},{"before":"79def9be9657a086d4e9149759a650e5e2882a21","after":"744494c9388841791521da3a6435f3b8ddeedc60","ref":"refs/heads/main","pushedAt":"2024-05-17T21:42:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Update documentation.\n\nMD code in README.md\n\n---","shortMessageHtmlLink":"Update documentation."}},{"before":"1a68a3cbbb84ea13b54bc4028c44c3a17228b487","after":"79def9be9657a086d4e9149759a650e5e2882a21","ref":"refs/heads/main","pushedAt":"2024-05-17T21:37:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Update documentation.\n\nAdd some python modules that are optional.\n\n---","shortMessageHtmlLink":"Update documentation."}},{"before":"f28f801670dfa6738071be4dd70b35c9791a84f8","after":"1a68a3cbbb84ea13b54bc4028c44c3a17228b487","ref":"refs/heads/main","pushedAt":"2024-05-17T21:02:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"if python markdown module is not found, then do not use it and do not print errors\n\nthis is optionally oused for tts function in chat mode.\n\n---\nHere’s a concise commit message for the `bash chatgpt.sh` script update:\n\n```\nHandle missing Python markdown module gracefully.\n```\n\nIn the developer comments: \"if python markdown module is not found, then do not use it and do not print errors\". The diff output shows that instead of printing errors and exiting with a non-zero status (`sys.exit(2)`), it handles the missing module by not using it.\n\nNote: It's important to ensure the implementation aligns with the requirement—handling the exception without exiting and without printing errors. If more adjustments are needed to match this behavior exactly, you might need to adjust the code inside the try-except block accordingly. For instance:\n\n```python\ntry:\n import markdown\n from bs4 import BeautifulSoup\nexcept ImportError:\n markdown = None # or any other appropriate handling\n ```\n\nThis change avoids exiting or printing errors, inline with the developer comments provided.","shortMessageHtmlLink":"if python markdown module is not found, then do not use it and do not…"}},{"before":"7feabf40e6fad3033565f9e00abb001e77dfe65b","after":"f28f801670dfa6738071be4dd70b35c9791a84f8","ref":"refs/heads/main","pushedAt":"2024-05-17T20:17:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Update code in ttsf() to split input that is longer than 4096 chars (OpenAI).\n\nThe code for splitting the input in various audio files was just so out-dated! I cannot even believe the code logic with the variables was so astray.. I remember that it worked correctly at one point in time..\n\nWell, I guess it makespart of the recently updating ttsf() fun, which is really a newer function than the other ones.. LOL\n\nAlso, it shall print user feedback \"Max Response / Capacity tokens\" when options -cc are set with -zw when the script is invoked...\n\n---\nCommit Message:\n```\nUpdate ttsf(): Split input longer than 4096 chars and add feedback for -cc with -zw options.\n```\n\nThe updated commit message highlights key areas:\n\n1. Modified `ttsf()` function to handle input string splitting when longer than 4096 characters.\n2. Added user feedback printing \"Max Response / Capacity tokens\" when options -cc are set with -zw during script invocation.\n\nThis concise commit message ensures clarity without repeating what's already in the developer comments and diff output.","shortMessageHtmlLink":"Update code in ttsf() to split input that is longer than 4096 chars (…"}},{"before":"90befa134e70080141718e5f9514ae3a9081242d","after":"7feabf40e6fad3033565f9e00abb001e77dfe65b","ref":"refs/heads/main","pushedAt":"2024-05-17T17:17:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"bionota","name":"JSN","path":"/bionota","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/84939133?s=80&v=4"},"commit":{"message":"Adjust TTS interface (option -z) with less verbose (option -vv).\n\nMinor adjustments to improve the TTS UX.\n\nAlso, dont edit \"!sh [cmd]\" output by defaults.\n\nAnd change what we record in the shell history. We will not record the output of \"!sh\" command anymore (which may be big!).\n\n---\n```\nImprove TTS interface and update history handling\n\nSimplified TTS options (-z, -vv) for better UX.\nAvoid recording large output of \"!sh\" in shell history.\n```","shortMessageHtmlLink":"Adjust TTS interface (option -z) with less verbose (option -vv)."}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEbzcxbQA","startCursor":null,"endCursor":null}},"title":"Activity · mountaineerbr/shellChatGPT"}