diff --git a/aiserver.py b/aiserver.py index 782a929c..cd4854ba 100644 --- a/aiserver.py +++ b/aiserver.py @@ -1337,6 +1337,8 @@ def processsettings(js): koboldai_vars.chatmode = js["chatmode"] if("chatname" in js): koboldai_vars.chatname = js["chatname"] + if("botname" in js): + koboldai_vars.botname = js["botname"] if("dynamicscan" in js): koboldai_vars.dynamicscan = js["dynamicscan"] if("nopromptgen" in js): @@ -3858,6 +3860,7 @@ def lua_has_setting(setting): "useprompt", "chatmode", "chatname", + "botname", "adventure", "dynamicscan", "nopromptgen", @@ -4174,6 +4177,7 @@ def do_connect(): return logger.debug("{0}Client connected!{1}".format(colors.GREEN, colors.END)) emit('from_server', {'cmd': 'setchatname', 'data': koboldai_vars.chatname}, room="UI_1") + emit('from_server', {'cmd': 'setbotname', 'data': koboldai_vars.botname}, room="UI_1") emit('from_server', {'cmd': 'setanotetemplate', 'data': koboldai_vars.authornotetemplate}, room="UI_1") emit('from_server', {'cmd': 'connected', 'smandelete': koboldai_vars.smandelete, 'smanrename': koboldai_vars.smanrename, 'modelname': getmodelname()}, room="UI_1") if(koboldai_vars.host): @@ -4239,8 +4243,10 @@ def get_message(msg): if(type(msg['chatname']) is not str): raise ValueError("Chatname must be a string") koboldai_vars.chatname = msg['chatname'] + koboldai_vars.botname = msg['botname'] settingschanged() emit('from_server', {'cmd': 'setchatname', 'data': koboldai_vars.chatname}, room="UI_1") + emit('from_server', {'cmd': 'setbotname', 'data': koboldai_vars.botname}, room="UI_1") koboldai_vars.recentrng = koboldai_vars.recentrngm = None actionsubmit(msg['data'], actionmode=msg['actionmode']) elif(koboldai_vars.mode == "edit"): @@ -4258,8 +4264,10 @@ def get_message(msg): if(type(msg['chatname']) is not str): raise ValueError("Chatname must be a string") koboldai_vars.chatname = msg['chatname'] + koboldai_vars.botname = msg['botname'] settingschanged() emit('from_server', {'cmd': 'setchatname', 'data': koboldai_vars.chatname}, room="UI_1") + emit('from_server', {'cmd': 'setbotname', 'data': koboldai_vars.botname}, room="UI_1") actionretry(msg['data']) # Back/Undo Action elif(msg['cmd'] == 'back'): @@ -4875,9 +4883,13 @@ def actionsubmit(data, actionmode=0, force_submit=False, force_prompt_gen=False, # "Chat" mode if(koboldai_vars.chatmode and koboldai_vars.gamestarted): + if(koboldai_vars.botname): + botname = (koboldai_vars.botname + ":") + else: + botname = "" data = re.sub(r'\n+', ' ', data) if(len(data)): - data = f"\n{koboldai_vars.chatname}: {data}\n" + data = f"\n{koboldai_vars.chatname}: {data}\n{botname}" # If we're not continuing, store a copy of the raw input if(data != ""): diff --git a/koboldai_settings.py b/koboldai_settings.py index cc8e6290..d85e2919 100644 --- a/koboldai_settings.py +++ b/koboldai_settings.py @@ -870,6 +870,7 @@ class story_settings(settings): self.useprompt = False # Whether to send the full prompt with every submit action self.chatmode = False self.chatname = "You" + self.botname = "Bot" self.adventure = False self.actionmode = 0 self.storymode = 0 diff --git a/static/application.js b/static/application.js index 3e7ee4b5..df51b06e 100644 --- a/static/application.js +++ b/static/application.js @@ -949,7 +949,7 @@ function _dosubmit() { if(!memorymode){ hidegenseqs(); } - socket.send({'cmd': 'submit', 'allowabort': !disallow_abort, 'actionmode': adventure ? action_mode : 0, 'chatname': chatmode ? chat_name.val() : undefined, 'data': txt}); + socket.send({'cmd': 'submit', 'allowabort': !disallow_abort, 'actionmode': adventure ? action_mode : 0, 'chatname': chatmode ? chat_name.val() : undefined, 'botname': chatmode ? bot_name.val() : undefined, 'data': txt}); } function changemode() { @@ -1492,8 +1492,10 @@ function setmodevisibility(state) { function setchatnamevisibility(state) { if(state){ // Enabling show([chat_name]); + show([bot_name]); } else{ // Disabling hide([chat_name]); + hide([bot_name]); } } @@ -2266,6 +2268,7 @@ $(document).ready(function(){ input_text = $('#input_text'); message_text = $('#messagefield'); chat_name = $('#chatname'); + bot_name = $('#botname'); settings_menu = $("#settingsmenu"); format_menu = $('#formatmenu'); anote_menu = $('#anoterowcontainer'); @@ -2869,6 +2872,8 @@ $(document).ready(function(){ hidegenseqs(); } else if(msg.cmd == "setchatname") { chat_name.val(msg.data); + } else if(msg.cmd == "setbotname") { + bot_name.val(msg.data); } else if(msg.cmd == "setlabelnumseq") { // Update setting label with value from server $("#setnumseqcur").val(msg.data); @@ -3183,7 +3188,7 @@ $(document).ready(function(){ button_actretry.on("click", function(ev) { beginStream(); hideMessage(); - socket.send({'cmd': 'retry', 'chatname': chatmode ? chat_name.val() : undefined, 'data': ''}); + socket.send({'cmd': 'retry', 'chatname': chatmode ? chat_name.val() : undefined, 'botname': chatmode ? bot_name.val() : undefined, 'data': ''}); hidegenseqs(); }); diff --git a/static/custom.css b/static/custom.css index d4bfe872..3e266701 100644 --- a/static/custom.css +++ b/static/custom.css @@ -79,6 +79,13 @@ body.connected #topmenu, #topmenu.always-available { margin-left: 10px; } +#botname { + background-color: #404040; + color: #ffffff; + width: 200px; + margin-left: 10px; +} + #menuitems { display: flex; width: 100%; diff --git a/templates/index.html b/templates/index.html index d1995373..af99390f 100644 --- a/templates/index.html +++ b/templates/index.html @@ -144,6 +144,7 @@ +