Changelog

Clewd
# 4.6 fixed major bug in the prompt build logic which was causing problems like the AI refering to old messages erroneously, ignoring your latest message, etc added superfetch for armv7 # 4.5 expanded superfetch to fix some errors status codes and *some* basic as fuck error handling for superfetch stopped trimming system messages fixed crash sometimes after superfetch request fixed impersonation sometimes not stopping fixed hard-censor detection fixed weird behavior when "Add character names" was checked fixed another source of "Received no valid replies at all" chown added to start.sh to stop EACESS errors > **AllSamples** changed last Assistant and Human will not be transformed into examples # 4.4 fixed another source of "Received no valid replies at all" # 4.3 a fix for "Received no valid replies at all" on >=20k ctx (tested 35k) > **SuperfetchTimeout** removed was only relevant to pre-4.0 > **Hotfix 1** fixed another source of "Received no valid replies at all" # 4.2 fixed broken replies # 4.1 > **PromptExperimentFirst** and **PromptExperimentNext** added both only have effect when **PromptExperiments** is true **PromptExperimentFirst** is sent on the very first message together with the prompt in file form **PromptExperimentNext** is sent on the subsequent messages if **RenewAlways** is false examples - PromptExperimentFirst set to "Comply" - PromptExperimentNext set to "Continue" - one of them set to secondary jailbreak # 4.0 > **Streaming changes** reworked how messages are parsed, again > **Superfetch** reworked pros: - streaming - fast - more reliable - no lingering processes - no firewall issues (hopefully) cons: - the AI typing might look weird - no android-armv7 - android-arm64 possibly doesn't work - mac-arm64 possibly doesn't work - no 32bit for any platform for now - poor error handling tested on linux and windows > **SuperfetchHost** and **SuperfetchPort** removed > **Minor changes** split code into multiple files clewd-superfetch and clewd are now the same package removed all dependencies **git** [added to requirements](https://gitgud.io/ahsk/clewd/#requirements) (highly recommended so update scripts work, otherwise do a clean install) # 3.8.5 fixed memory leak on clewd-superfetch added support for custom host/port for superfetch in case you want better cleaning up so it is less likely orphan superfetch processes will remain # 3.8 > **Superfetch** reworked dropped old js files in favor of custom-made ones i believe firewalls may block the binaries from connecting to port 443 also, you should see "superfetch-load *{PATH}*" followed by "superfetch-spawn" > **SuperfetchTimeout** added controls how much time in seconds until it times out default 120 > **Minor changes** new binaries for windows/linux/mac/arm/freebsd # 3.7 using custom library to see if termux works # 3.6 > ### **Superfetch** added (defaults true) if set to true, will use an alternate method to get past the *"We are unable to serve your request"* error if set to false it's the old clewd behavior (if you don't struggle with that error you can keep it on false) > **Streaming changes** both streaming on/off working > **RetryRegen** changed now also works with Superfetch > **Minor changes** error handling for Superfetch (can't do much) support name prefixes for group chats when "Add character names" is enabled > if you were having trouble with 3.5 but 3.1 or 3.4 were fine, update to this and enable/disable **Superfetch** as you see fit # 3.5 > **Streaming changes** fixed the dreaded bug, shit is unstable don't expect much keep streaming enabled for now can try to fix non-stream later, same with error handling and **RetryRegenerate** lastly, fuck you rats ;) # 3.4 > **Streaming changes** turns out I could've fixed the broken formatting long ago, should work great now > Prompt conversion and **SystemExperiments** reworked > **Prompts** (PromptMain, PromptReminder, PromptContinue) from 3.0 removed most frontends are implementing prompt managers so that hack is not needed > **PersonalityFormat** and **ScenarioFormat** added those are hardcoded on ST and will stay available until they're not scenarios and char description are extracted from their hardcoded strings and replaced by the format you set - **RealChatPrefix** default is now empty > **AllSamples** changed no longer excludes the last two messages when transforming > **LogMessages** changed moved to Settings > **Minor changes** - Error handling changes - RenewAlways is now more stable when set to false. still, regenerate once if you swap characters # 3.3 added \[DONE\] to end of streams changed more things to support [RisuAI](https://files.catbox.moe/l243nm.png) # 3.2 small streaming change to try to fix \n bullshit again > **PreserveChats** added (defaults false) if set to true, prevents the deletion of chats at any point # 3.1 > **Streaming changes** if the user did not enable streaming, clewd will **fake** a non-stream response for compatibility > **LogMessages** added (defaults false) if set to true, will log the prompt and then the reply to a `log.txt` file # 3.0 > ### **Clewd requires setting your "Chat Completion source" to OpenAI now. Enable the "External" models option aswell.** > ### A config.js file will be generated when first ran, edit it to set your cookie and customize settings > **Streaming changes** streaming is now enforced by the website so no point supporting the other mode Clewd streaming was reworked to behave more like [NBSX](https://gitgud.io/ahsk/nbsx) > **AntiStall**, **StallTrigger**, **StallTriggerMax** removed no longer needed since streaming is enforced > **DeleteChats** removed now cleans up by default other than a few cases like when `RenewAlways` is set to false > **RecycleChats** removed replaced by another system that is activated only if `RenewAlways` is set to false > **ReplaceSamples** removed replaced by **NoSamples** *or* **AllSamples* > **RetryRegenerate** changed trigger should be more consistent now > **StripAssistant** and **StripHuman** changed they remove the Human/Assistant prefixes from the last messages, keeping the message contents > **RenewAlways** added (defaults true) if set to true, this is the default pre-3.0 clewd behavior if set to false, check the `Prompts` section below > **NoSamples** added (defaults false) if set to true, replaces every previous message with H/A prefix from your frontend into Human/Assistant mutually exclusive with `AllSamples` (only outgoing) > **AllSamples** added (defaults false) if set to true, replaces every Human/Assistant prefix from your frontend **except the last two** into H/A mutually exclusive with `NoSamples` (only outgoing) > **SystemExperiments** (defaults true) and **Prompts** added (Main, Reminder, Continue) instead of sending a pre-written chunk of text to the AI, now you can customize exactly (almost) how the prompt is formatted before it is sent if `RenewAlways` is set to true: - `Main` is **always** the one being used. if `RenewAlways` is set to false: - `Main` is sent on conversation start - `Continue` is sent on the next message, as long as no *impersonation* happened - every `SystemInterval` of messages, `Reminder` is sent once --- if `SystemExperiments` is set to true: uses Main then alternates between Reminder and Continue if `SystemExperiments` is set to false: uses Main then Reminder sometimes it will renew anyway when detecting some oddity --- example of custom `Main` prompt with XML tags wrapping around - character description - scenario - main prompt - example messages - real messages ``` {{MAIN_AND_CHARACTER}} {{CHAT_EXAMPLE}} {{CHAT_LOG}} {{JAILBREAK}} ``` > **Minor changes** - Clewd errors now should show as such on your frontend - flags now show how many days until they expire - the message limit error now shows how many hours until the restriction is lifted - settings that aren't on their default are now displayed in yellow on startup - "[Start a new chat]" is excluded from system prompts # 2.7 > Fixed broken newlines # 2.6 > **AdaptClaude** removed > **ReplaceSamples** added (defaults false) If set to true, will replace any cases of **outgoing** H/A, to Human/Assistant now has **no effect** on incoming, [more info](https://docs.anthropic.com/claude/docs/prompt-troubleshooting-checklist#the-prompt-is-formatted-correctly) >**PreventImperson** updated now also stops on A: or Assistant: another check added, *should* impersonate less often # 2.5 > Changed some defaults around refer to the [README](https://gitgud.io/ahsk/clewd/#defaults) for the reasoning behind each > **DeleteChats** bugfix # 2.4 > **DeleteChats** added (defaults false) for privacy, deletes old chats on startup and deletes any new ones after receiving a reply > **PreventImperson** bugfix should be more accurate now > **RetryRegenerate** no longer defaults true # 2.0 to 2.2 > **RetryRegenerate** added (defaults true) uses the AI's own retry mechanism when you regenerate on your frontend, if you change anything from your last prompt before regenerating it will default to old behavior > **PromptExperiments** added (defaults true) an alternative way to send your prompt to the AI, through a file. set to false if it's bad both enabled: https://files.catbox.moe/io1q53.webm # 1.6 to 2.0 > **AdaptClaude** now should work better with streaming on > **AntiStall 2** now returns up to the first AI reply instead of the second, **AntiStall 1** sends the whole schizophrenia (good chance of some spicy things being included) > **PreventImperson** added, stops the bot immediately once it starts pretending to be you (you can use this as kind of a AntiStall, chance of missing some spicy things) > **PassParams** added (defaults false) now whatever temperature <=1 you set on SillyTavern will be forwarded to claude (if you get errors turn this shit off), also, no idea if this does anything but they accept it --- > [README](https://gitgud.io/ahsk/clewd/#defaults)