From b37c885f41640e316524419b01378fe77b301225 Mon Sep 17 00:00:00 2001 From: teahubxyz Date: Tue, 20 Oct 2026 03:49:45 +0000 Subject: [PATCH] =?UTF-8?q?abilities.js:=20with=20"every=20round"=20the=20?= =?UTF-8?q?move=20is=20asked=20for=20eagerly=20=E2=80=94=20a=20photo=20unl?= =?UTF-8?q?ess=20it=20would=20make=20no=20sense,=20not=20"nothing,=20most?= =?UTF-8?q?=20of=20the=20time"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Fable 5.1 Claude-Session: https://claude.ai/code/session_01VAvUH72XsdCitHdh3t7mjr --- ventures/havre/abilities.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/ventures/havre/abilities.js b/ventures/havre/abilities.js index 672ec6b..9af7882 100644 --- a/ventures/havre/abilities.js +++ b/ventures/havre/abilities.js @@ -334,10 +334,14 @@ export const MOVE_SCHEMA = { }; /** the messages for a text model to decide the character's next move (adult: their pictures can be adult, adultCheck) */ -export function moveMessages(card, history, { adult = false } = {}) { +/** the move prompt as it stands, or, for someone set to send things every round, told to lean in rather than hold back */ +export const EAGER = " This character is set to send things every round: choose \"photo\" (or \"voice\" or \"clip\" when that fits better) " + + "whenever a picture of them could go with what was just said, however small the reason; \"nothing\" only when a photo would make no sense at all."; +export function moveMessages(card, history, { adult = false, eager = false } = {}) { const lines = transcript(card, history, 12); const look = card.look && card.look.description; - return [{ role: "system", content: adult ? MOVE_SYSTEM_ADULT : MOVE_SYSTEM }, { role: "user", content: [ + const system = (adult ? MOVE_SYSTEM_ADULT : MOVE_SYSTEM) + (eager ? EAGER : ""); + return [{ role: "system", content: system }, { role: "user", content: [ `The character: ${card.name}${card.tagline ? ". " + card.tagline : ""}`, look ? `How they look: ${look}` : "", "The conversation, latest last (their reply just now is the last line):\n" + lines.join("\n"),