Salastil and Claude Sonnet 5.5
239c1e0ced
Direct-messages headings made from a Steam account's folders are called protocol, then folder; a probe for QR sign-in
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-13 15:17:43 -04:00
Salastil and Claude Sonnet 5.5
2329abe29b
Probes: leave a Steam group through the window, and list an account's groups after a fresh sign-in
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-13 14:55:04 -04:00
Salastil and Claude Sonnet 5.5
f03f8b276b
Leaving a Steam group: a room's menu offers it, the settings dialog says when it fails, and a voice room is left with the group
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-13 14:41:44 -04:00
Salastil and Claude Sonnet 5.5
c6e3dd7ebf
Steam group invitation on the Invitations tile, photographed; nobilis updated
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-13 14:10:38 -04:00
Salastil and Claude Sonnet 5.5
0633a2c835
Dropping a conversation on a category lights the whole category, not a line above it
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-13 13:24:02 -04:00
Salastil and Claude Sonnet 5.5
786936e6e0
Steam account page: Steam's folders are headings that are made, renamed, deleted and filled on Steam
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-13 13:19:54 -04:00
Salastil and Claude Sonnet 5.5
b0bc9b6d3d
Steam account page: friends under Steam's folders, moved by dragging, and the move made on Steam
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-13 13:08:12 -04:00
Salastil and Claude Sonnet 5.5
9f8a104c53
A probe that places and answers a Steam 1:1 call against the official client
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-13 12:45:54 -04:00
Salastil and Claude Sonnet 5.5
48c070915b
Steam voice: a refused acknowledgement of a new offer does not end the call, as in the client; a probe that joins a group's voice room
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-13 12:35:25 -04:00
Salastil and Claude Sonnet 5.5
810f780c73
Steam voice in the window: a group's voice rooms and calls to friends
...
The window holds the WebRTC session (lib/steamvoice.ts, a port of the Steam
client's own order of calls) and the daemon carries the signalling. A voice
room is listed under a group's channels with who is in it and who is speaking,
the call you are in is the same Voice panel as any other, a friend can be
called from their conversation, a call ringing is the same incoming-call
panel, and the footer's mute and deafen apply. Tried against real Steam as the
throwaway account: connected in two seconds with audio going to the relay.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-13 07:10:53 -04:00
Salastil and Claude Sonnet 5.5
0a07aa6f28
Steam chat groups in the window: a group is a server, its rooms are channels
...
The rail entry has Group settings (name and tagline, rooms, people and what
they may do, roles and permissions, invite links, how loudly to be told);
the member list moderates a Steam group's members; the Join page joins one
from an invite link and starts one; a room's own messages can be deleted.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-13 01:30:24 -04:00
Salastil and Claude Sonnet 5.5
dc051ca232
Steam: Profile opens the card every service uses, with the names they have had; invite links and blocked people on the add-a-friend page
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-13 00:32:56 -04:00
Salastil and Claude Sonnet 5.5
6cc8578c41
Steam friend groups are headings on the direct-messages page, kept the same both ways
...
A group is one of moho's own categories: its friends' conversations are under it, and
filing, renaming or deleting it here is done to the group on Steam, as what Steam does is
done here. What was last agreed is remembered so neither side echoes the other.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-13 00:19:36 -04:00
Salastil and Claude Sonnet 5.5
7eac8104f3
Steam: Profile in a friend's right-click menu opens a column about them
...
Where the member list would be: their status, the game they are playing, when they were
last seen, the names they have had, and what they wrote on their profile. Status and game
are live from their presence.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-13 00:06:59 -04:00
Salastil and Claude Sonnet 5.5
3b427131c0
A Steam warning is a red dismissable banner over the conversation and a red line in the log
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-12 23:28:34 -04:00
Salastil and Claude Sonnet 5.5
ce38d537ec
Steam: the message just sent is recognised when Steam made a picture or card of its link
...
Before, the grey copy never matched the stored one, so an image link showed twice.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-12 22:06:46 -04:00
Salastil and Claude Sonnet 5.5
0770478d70
A link at the end of a clause does not take the clause's punctuation
...
Steam pages' cards draw as any link's do; checked in the real window.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-12 21:56:37 -04:00
Salastil and Claude Sonnet 5.5
2a2fda35fb
A Steam sticker is drawn at the size Steam draws it, not as a small emoji
...
The rule sizing every emoji to the line outranked the sticker's own size.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-12 21:24:51 -04:00
Salastil and Claude Sonnet 5.5
846feb114a
Steam videos are drawn, and a spoilered picture or video is covered like Discord's
...
The marker names a picture or a video, which an address with no extension cannot.
Anything in a spoiler - Steam's, Sneedchat's, a Discord ||link|| - gets the SPOILER
cover, and a link followed by || no longer loses its extension to the bars.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-12 20:21:29 -04:00
Salastil and Claude Sonnet 5.5
6728b53f6a
A Steam conversation's emoji picker has no Unicode emoji and no GIF button
...
The picker offers the account's own emoticons, with a Stickers tab for its
stickers; reactions pick from the same two; the GIF button is not drawn in a
Steam conversation.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-12 19:10:36 -04:00
Salastil and Claude Sonnet 5.5
68684a4004
The profile card has a Status section
...
How they are showing (the dot and its word) and what they are doing - a game,
a track, or words they wrote, with an away message standing in for the words -
in a section of its own at the top of the card. What they are doing comes from
the lookup where the service gave it, and otherwise from the member lists,
which already carry it for every service.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-12 16:16:08 -04:00
Salastil and Claude Sonnet 5.5
82665ee4a5
Comfy lists follow Discord on every service; classic stays names
...
In comfy a member list has a face on everybody and, under each name, what they
are doing - a gamepad and the game, a note and the artist, or words with no
picture - and a direct message's row says the same under its name. In classic
both are plain names, as IRC and Sneedchat always were. A screenshot script
photographs the two.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-12 16:10:39 -04:00
Salastil and Claude Sonnet 5.5
f1183958ab
Kick subscriptions, moderation and the stream's going live or ending are cards in the same theme as the gifts, raids and redeems
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-11 13:44:49 -04:00
Salastil and Claude Sonnet 5.5
97611c8742
No reference to the maintainer's own server: .gitmodules and PKGBUILD are the public ones on every branch, the nobilis release is its own script and the mirroring is kept outside the repository, and the maintainer is [email protected] everywhere it is named
...
Closes #335
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-11 00:28:47 -04:00
Salastil and Claude Sonnet 5.5
64ade92ee1
Kick cards sit where a person does: no join mark beside them, starting at the picture's edge with the name where a name is in the log - in comfy and in bubbles, where they had been centred - and with the air above them a message has
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-11 00:07:59 -04:00
Salastil and Claude Sonnet 5.5
39dcba548a
A conversation opens as Discord's does: at its first unread only when the run is short (fifty or fewer), otherwise at its end with the bar to go back by - and the line from a visit is dropped when the conversation is left, so a return no longer goes up the history to a place nothing is unread
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-10 23:58:14 -04:00
Salastil and Claude Sonnet 5.5
7bae0eaaa8
Kick events are cards in Kick's shape on this client's surfaces: KICKs sent with the gift and its tier, gifted subs with their recipients on a purple bar, a raid, and a redeemed reward in the streamer's colour
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-10 20:49:58 -04:00
Salastil and Claude Sonnet 5.5
5d826a785d
Mirror script: MIRROR_GITEA reaches Gitea by its own address for the files Cloudflare will not take
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-10 16:33:00 -04:00
Salastil and Claude Sonnet 5.5
99e03116e9
Mirror script: a file over Cloudflare's 100 MB limit stays on GitHub only, said plainly, instead of stopping the mirror before nobilis
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-10 16:28:04 -04:00
Salastil and Claude Sonnet 5.5
ee0120ff5e
A deploy tidies first: old AppImages, debug and cross builds, and a daemon build directory past 8 GB are removed, so a checkout stops growing to a hundred gigabytes
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-10 16:12:52 -04:00
Salastil and Claude Sonnet 5.5
7803cc38a6
A mute stops the interruptions, not the count: a muted channel still shows its mentions in the list, the rail, the switcher and the tray; a muted direct message shows none; and muting on Discord is written to the account as it is on Matrix
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-10 13:33:05 -04:00
Salastil and Claude Sonnet 5.5
336335a8a3
Scrolling a long unread run no longer snaps back: the place being read is found through the bar laid over the top of the log, not read off the bar, so a card or picture settling above does not put the view back where the bar appeared
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-10 13:17:22 -04:00
Salastil and Claude Sonnet 5.5
1e314f85b6
The tray's number is the window's: counted by the rail's rule - muted and hidden conversations out, a direct message by each unread message, anywhere else by its mentions - and told to the tray whenever it changes, instead of a tally of its own that drifted
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-09 20:08:34 -04:00
Salastil and Claude Sonnet 5.5
55248eb583
GIFs: a linked GIF is drawn as the picture - silent, looping, without the player - on every service, a GIF picker with trending, categories and search, and Klipy/Tenor/Giphy pages are never probed ( #331 )
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-09 17:55:10 -04:00
Salastil and Claude Sonnet 5.5
23c87dd353
Idle detection: how long since anything was used, from the system where it will say and moho's own windows where it will not; a setting for it and for how long; the plaque says Idle (away) and keeps what was chosen checked ( #332 )
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-09 17:35:58 -04:00
Salastil and Claude Sonnet 5.5
0dc048cdc0
Server rail: a tile counts the mentions waiting in it and not the messages, and a muted room counts for nothing, mentions included
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-09 15:28:01 -04:00
Salastil and Claude Sonnet 5.5
745641a1ad
The window stays where it is put: the link coming up is acted on once, a refresh does not follow the open conversation to its server, and the tray is told only what changed; Matrix's invisible is called offline; a mute held on a Matrix account can be taken off from the menu
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-09 11:45:38 -04:00
Salastil and Claude Sonnet 5.5
c1bcb72a38
Status: the plaque and the tray offer what each service has; idle from the tray reaches Discord and IRC and leaves the rest online; do-not-disturb silences desktop notifications everywhere
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-09 11:26:52 -04:00
Salastil and Claude Sonnet 5.5
53fb0f34ce
Tray: no notifications switch of its own - Do not disturb is that, and now silences an account's desktop notifications and the taskbar flash ( #330 )
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-09 11:07:50 -04:00
Salastil and Claude Sonnet 5.5
24106e51f4
Tray: a bubble drawn for the system's colour scheme with the number waiting on it; a menu of what is new, Status, notifications, Settings, Restart moho and Quit; no daemon plumbing ( #330 )
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-09 11:00:10 -04:00
Salastil and Claude Sonnet 5.5
dd0c25e054
Discord forums: a pane of posts (title, tags, first message, replies, age, picture, reaction), search, sort, older posts, New Post; a forum has no message box ( #329 )
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-08 23:26:07 -04:00
Salastil and Claude Sonnet 5.5
06bb812ed0
Recovery also covers a page that exits cleanly while its window is still there (that is what the log showed); the URL is logged
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-08 23:12:07 -04:00
Salastil and Claude Sonnet 5.5
dad55432b4
Server rail: the + is pinned below the list, under a rule and above the cog; the list scrolls above it
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-08 22:50:28 -04:00
Salastil and Claude Sonnet 5.5
d7c4215473
Discord's notices drawn as cards: a glyph, the time, the words and a button bar - red where it acts on the account ( #328 )
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-08 22:45:03 -04:00
Salastil and Claude Sonnet 5.5
ff7d313b46
Where the message box would be: a banner saying why nothing can be written here; embed fields and footer drawn ( #328 )
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-08 22:32:40 -04:00
Salastil and Claude Sonnet 5.5
2b41c5eb1c
Join: browsing an IRC network's channels asks the daemon for a page, times out after a minute, can be stopped, and says when the network refuses
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-08 22:14:43 -04:00
Salastil and Claude Sonnet 5.5
f8936c6734
Room settings: a tabbed dialog - Security, Moderation, Advanced - instead of a 400px popover ( #324 )
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-08 21:56:20 -04:00
Salastil and Claude Sonnet 5.5
078fe41261
Mentions page: service and unread filters, day groups, two-line bodies, put away one at a time ( #314 )
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-08 21:53:34 -04:00
Salastil and Claude Sonnet 5.5
f8dcccdb8f
Accounts and Join: groups open when there are few accounts, Remove in a danger zone, the add form stays open with a Cancel, Join picks its account and says Join ( #323 )
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-08 21:51:06 -04:00
Salastil and Claude Sonnet 5.5
82a0bdf8a8
Settings: a Keybinds page - every shortcut listed, and the global hotkey is recorded by pressing it ( #322 )
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-08 21:48:22 -04:00