clewd / CHANGELOG.md
teralomaniac's picture
Upload 23 files
d70d08b

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 (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

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

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
<chat>
{{MAIN_AND_CHARACTER}}
{{CHAT_EXAMPLE}}
{{CHAT_LOG}}
</chat>
{{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

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 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