Commit Graph
442 Commits
Author SHA1 Message Date
teahubxyzandClaude Opus 5.5 af428c42cb havre smoke: exports stay in the harbor tab too
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 20:40:39 +00:00
teahubxyzandClaude Opus 5.5 183673c8a9 havre smoke: remix stays in the harbor tab, where the card is
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 20:38:27 +00:00
teahubxyzandClaude Opus 5.5 f26345b9ba havre: a harbor row's name is its own button, not a second "card" link
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 20:36:15 +00:00
teahubxyzandClaude Opus 5.5 871b665c22 havre smoke: back to the characters tab after the card opened the harbor
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 20:34:32 +00:00
teahubxyzandClaude Opus 5.5 50f9e2e1ea havre smoke: the card shows only in the harbor tab
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 20:33:08 +00:00
teahubxyzandClaude Opus 5.5 b154e6fffc havre: harbor rows look clickable
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 20:31:47 +00:00
teahubxyzandClaude Opus 5.5 cc773726bc havre: the card lives in the harbor tab; a harbor row opens its card
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 20:31:44 +00:00
teahubxyzandClaude Opus 5.5 b5ce690709 havre /open: build Havre's own openvenice (upstream + openvenice/havre.py)
Generate works on every tab again: each model's spec decides steps, voices, formats, durations,
lyrics and video inputs, and music/video results are fetched with model + queue_id. Adds a
temporary chat, a light/dark switch shared with Havre's page (havre.theme), Havre's look, and
the phone fixes (labeled New chat, no shortcut hints).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 19:32:15 +00:00
teahubxyzandClaude Opus 5.5 2d6d7c0970 havre /open: Havre's openvenice changes as exact edits (openvenice/havre.py)
Not wired into the build yet; tools/open.sh picks it up in the next commit.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 19:30:15 +00:00
teahubxyzandClaude Opus 5.5 932264124c havre: tests for rewriting a shot and the tempo of moves
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 19:10:11 +00:00
teahubxyzandClaude Opus 5.5 4628df2b2f havre: dark theme, the picture lightbox, the rewrite row
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 19:09:46 +00:00
teahubxyzandClaude Opus 5.5 00ee9772f1 havre: theme switch in the nav
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 19:09:33 +00:00
teahubxyzandClaude Opus 5.5 901c902d76 havre: light or dark, before the page draws, and the switch in the nav (shared with /open as havre.theme)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 19:09:30 +00:00
teahubxyzandClaude Opus 5.5 65175dbefa havre: rewrite a shot to an instruction, how often they send things, what a chat cost, prices on the ask links, a picture opens big
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 19:09:20 +00:00
teahubxyzandClaude Opus 5.5 2327833f88 havre: shots rewritten to an instruction (or made different), and a tempo for moves on their own
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 19:08:53 +00:00
teahubxyzandClaude Opus 5.5 f9b9d6adbe havre /open: labeled New chat button on mobile, hide ⌘ shortcut hints on phones
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 18:51:46 +00:00
teahubxyzandClaude Opus 5.5 cd57ecba9f havre: the browser test opens the Harbor tab before exporting from it
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 18:47:56 +00:00
teahubxyzandClaude Opus 5.5 205f540c92 havre: the about footer
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 18:45:47 +00:00
teahubxyzandClaude Opus 5.5 1114f6c509 havre: a link into the about footer opens it
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 18:45:43 +00:00
teahubxyzandClaude Opus 5.5 39fd8177dc havre: the reading folds into one footer
How it works, for agents, costs, plans, coming next, fine print and the name now sit in one collapsed "about havre"
at the bottom. The links at the top open it at the right part.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 18:45:39 +00:00
teahubxyzandClaude Opus 5.5 61dfca95a0 havre: the browser test goes back to the Characters tab after the Harbor one
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 18:45:30 +00:00
teahubxyzandClaude Opus 5.5 a0280af2d3 havre: the left tabs' list gets a name of its own
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 18:43:47 +00:00
teahubxyzandClaude Opus 5.5 48255a03fd havre: the browser test opens the Harbor tab, and meets the harbor's own by their links
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 18:42:28 +00:00
teahubxyzandClaude Opus 5.5 16eed118bb havre: the left column's third tab, Harbor
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 18:42:21 +00:00
teahubxyzandClaude Opus 5.5 293969acd8 havre: Harbor is a tab beside Chats and Characters; the harbor's own leave the characters list
Your harbor (every character you have) moves from below the studio into a third tab: CHATS / CHARACTERS / HARBOR.
The harbor's own (Maren, Odile, Taskmaster) are no longer listed above Venice's characters; their links (?meet=)
and pages (c/) still work.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 18:42:10 +00:00
teahubxyzandClaude Opus 5.5 1d55783a8f havre: the one-line key bar
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 18:34:20 +00:00
teahubxyzandClaude Opus 5.5 65ee184c9e havre: the one-line key bar
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 18:34:16 +00:00
teahubxyzandClaude Opus 5.5 378a3ab95c havre: with a key saved, the key bar is one line
"venice key: saved on this device · <balance> · change". Change opens the full form again; saving or leaving it empty
folds it back.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 18:34:12 +00:00
teahubxyzandClaude Opus 5.5 c7cc062dbe havre: the browser test counts Ines's memories from a baseline (Venice characters remember now too)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 17:33:23 +00:00
teahubxyzandClaude Opus 5.5 e58b78327a havre: tests for Venice characters' memory and the port
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 17:31:32 +00:00
teahubxyzandClaude Opus 5.5 a55e036dfe havre: Port shows only for a Venice character
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 17:31:15 +00:00
teahubxyzandClaude Opus 5.5 ef21f07e9f havre: Port on the Remix tab
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 17:31:08 +00:00
teahubxyzandClaude Opus 5.5 35587af911 havre: you can add a note to a Venice character's memory too
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 17:31:03 +00:00
teahubxyzandClaude Opus 5.5 fec60fe729 havre: Venice characters remember, can be marked adult, and can be ported
- Memory: a Venice character now remembers your chats like any other (the notes ride beside Venice's own prompt).
- Adult: the 18+ toggle works on a Venice character too. Venice's adult ones stay adult; a safe-for-work one can be
  marked adult by you, after the 18+ check.
- Port (on the Remix tab): Havre interviews a Venice character and writes them down as a card of your own: same
  name, same face, their memory carried over, credited to their creator. Remix still makes someone new.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 17:30:56 +00:00
teahubxyzandClaude Opus 5.5 77e4f945ea havre: the port schema doesn't lean on a helper defined below it
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 17:30:32 +00:00
teahubxyzandClaude Opus 5.5 f5963a02f7 havre: Venice characters remember, take the 18+ rule, and can be ported
A Venice character brings its own prompt; Havre now adds a short system message beside it with what they remember
of your chats and, for one marked adult, the 18+ rule. Porting: an interview made for keeping the same character
(PORT_INTERVIEW) and a writer that turns the answers into a Havre card of them, in its own words, with the credit.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 17:30:24 +00:00
teahubxyzandClaude Opus 5.5 75c547b94e havre: the play mark on a clip's still
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 15:41:35 +00:00
teahubxyzandClaude Opus 5.5 c548db64cb havre: clips in the gallery show a still, with a play mark
Phones don't draw a video's first frame until it plays, so clip tiles were black. The gallery now takes a frame
from each clip (a hidden, muted video, seeked a moment in, drawn to a canvas) and shows it as a picture.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 15:41:31 +00:00
teahubxyzandClaude Opus 5.5 e82881d163 havre: the gallery grid
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 15:34:28 +00:00
teahubxyzandClaude Opus 5.5 a672459dd4 havre: the gallery dialog
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 15:34:23 +00:00
teahubxyzandClaude Opus 5.5 635530f8db havre: the gallery closes
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 15:34:19 +00:00
teahubxyzandClaude Opus 5.5 dd28f8b910 havre: a gallery of every photo and clip, for a chat or for everyone of yours with a character
"gallery" next to the chat's name opens it: this chat, or all your chats with them. Newest first; tap one to go to
it in its chat.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 15:34:07 +00:00
teahubxyzandClaude Opus 5.5 1cc0701a64 havre: messages said without a key can be edited and deleted too
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 03:50:26 +00:00
teahubxyzandClaude Opus 5.5 21f26517bd havre: the edit / delete links under a message
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 03:44:02 +00:00
teahubxyzandClaude Opus 5.5 7b35f348da havre: edit and delete messages; an old chat opens at its latest message
Delete takes one message out of a chat (yours or theirs). Edit changes something you said and sends it again: the
replies after it are replaced. A chat opens scrolled to the bottom, on a phone too (it used to be drawn while
hidden, and a hidden box can't scroll), and stays there while its photos and clips load.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 03:43:53 +00:00
teahubxyzandClaude Opus 5.5 f6159b745d havre: /open takes the key from the handoff Havre leaves, and deletes it
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 03:09:28 +00:00
teahubxyzandClaude Opus 5.5 5476348800 havre: hand the key to /open across windows
An installed app on desktop opens /open in another window, which gets none of this tab's session storage. The
link now leaves the key for /open in local storage for a minute; /open takes it and deletes it at once.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 03:09:22 +00:00
teahubxyzandClaude Opus 5.5 5606bbbe51 havre: a link to /open in the nav
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 03:00:12 +00:00
teahubxyzandClaude Opus 5.5 c56b6e43b4 havre: /open uses the key you gave Havre
A small script, loaded first on /open/, copies Havre's key (this tab's, or the remembered one) into openvenice's
own session slot when openvenice has none yet. The page is the same origin, so nothing leaves the browser.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 03:00:05 +00:00
teahubxyzandClaude Opus 5.5 d3970e4731 havre: the build makes /open (openvenice)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BQqGFv54JJTw7p3rgGjP7C
2026-10-19 02:51:09 +00:00