Skip to content

Releases: ucsandman/sidelook

Sidelook 0.17.0: local models, the Bench button, three words under the conversation

Choose a tag to compare

@ucsandman ucsandman released this 06 Sep 16:18

What changed

  • Three words under the conversation: New chat, Clear context, Compact. New chat is the old Clear conversation from Settings, moved where you need it. Clear context leaves the messages on screen and sends none of them with the next message. Compact is one send that trades the earlier messages for a summary under 150 words, and a line saying what it saved.
  • A meter line under them: how full the 24,000 characters the next send can carry is, what the last send cost in tokens, and what this chat has cost. Cached input is counted beside each number, never inside it. The percent turns warm past 80.
  • The model's token counts reach the page: Codex reports its cached input, Claude reports both its cache read and its cache write. They also go in the What goes panel.
  • Local models. Whatever LM Studio or Ollama holds on this computer appears in the model list under the runtime's name, while the runtime is running. Sidelook talks to it through Codex's open-source provider, in the same read-only sandbox as a subscription model; nothing leaves the machine and nothing is metered. Setup checks that the runtime answers and the model is still there, and offers Start LM Studio server when it is not. Proven with Qwen3 8B in LM Studio on 2026-09-06; Ollama is wired the same way but has not been run yet.
  • An LM Studio model is loaded with a 32,768-token context before the first request, because Codex's own prompt is about 12,700 tokens and LM Studio's default load of 4,096 refuses it. The studio shows "Loading into memory" while that happens, about ten seconds for an 8B model.
  • Local models get the schema inside their instructions and the JSON object read out of the reply, because LM Studio does not enforce Codex's output schema; low effort turns a local model's reasoning off (8 s a turn on Qwen3 8B instead of 30 to 50); the GPU share at load is computed from the card and the model so the 32k cache fits (every layer on an 8 GB card swapped at 5 tokens/s); a local chat has 300 s, the same as a build. A local model that answers in words instead of JSON is run once more; the conversation then takes words as the reply, a build fails closed. A suggestion the model invents reads as none.
  • Bench ↗ sits in the panel header and opens the studio. It was a line inside Settings, two presses away; that line is gone.
  • The studio opens to fit the monitor Sidelook lives on: 85% of the working area, capped at 1480x900 and floored at 760x520. Drag it to another size and it opens at that size next time, saved in studio-size.json beside the dock position. The panel and the dock still remember nothing.
  • The studio reflows instead of clipping. Above 1180 it is unchanged. From 900 to 1180 the chat column steps aside and a Chat button in the toolbar slides it over the right edge of the stage; Escape, ← Panel, or a window wide enough for the column closes it. Under 900 the rail stacks above the stage with its own scroll, the toolbar wraps and Share window and Live build shorten to Share and Live. Nothing scrolls sideways down to 760.
  • The browser check loads the studio at 1480, 1180, 1100, 900, 800 and 760, opens and closes the chat overlay at two of them, and fails on any horizontal overflow.

SHA-256 of Sidelook-0.17.0-Windows-x64.exe is in SHA256SUMS.txt. The exe is unsigned; the bundled Node and Codex are publisher-verified at build. See docs/MODELS.md for local models.

Sidelook 0.16.0: Sidelook, a Practical Systems product

Choose a tag to compare

@ucsandman ucsandman released this 06 Sep 13:54
  • Jarvis is now Sidelook, a Practical Systems product. Same app, same shortcuts, same port, same twelve versions. The exe is Sidelook-0.16.0-Windows-x64.exe; the site is https://sidelook.practicalsystems.io and the old address redirects.
  • The mark is one node of the Practical Systems mark: a white hexagon with two navy eyes. In the dock and in the panel header the eyes follow your mouse anywhere on the screen. Under Windows' animation switch they hold the sidelong look and nothing moves.
  • Graphite and mint became the family navy and teal. Every control was re-measured at rest and under the mouse.
  • Saved prototypes survive: the first start moves the old Jarvis profile folder to Sidelook once, or copies the profile and the dock position if a file is locked.
  • Summon fades the panel in, dismiss fades it out.
  • npm run lint refuses the old name outside history and marked legacy lines; npm run verify:mark compiles the mark and the profile move and checks the SVG, the C# and the icon build agree.

Jarvis 0.15.1: Buttons that stay under the mouse

Choose a tag to compare

@ucsandman ucsandman released this 06 Sep 10:21

Fixes 0.15.0: every filled button (Send, Follow my clicks, Start 10 minutes, Build, Sign in) lost its fill under the mouse because the hover token defined itself. New npm run verify:states measures every control under the mouse, every text node and every token across the app and the site, so this class of error fails a check. Two stale sentences on the site fixed.

Windows 10/11 x64, unsigned; verify the SHA-256 in SHA256SUMS.txt. Full notes in CHANGELOG.md.

Jarvis 0.15.0: The panel, quiet

Choose a tag to compare

@ucsandman ucsandman released this 06 Sep 10:06

The panel is quiet now. No native title bar: the header with the mark is the drag handle and the window's own edges resize it. It is only as tall as what is in it, about 380px when empty instead of 700, and grows upward as replies arrive while the box stays under your hands. The window Jarvis will look at is a tile with its app's icon; press it to pick another. Three short starters, no arrows, no cards. Your messages sit on the right with the sent screenshot as a thumbnail; Jarvis's replies are plain text. The box is one line at rest, grows a line at a time to eight, and has a grip for more. The Send button is with only words in the box and Send with screenshot ↑ with a chip.

New palette: graphite and mint, chosen from five rendered options. The mark, the dock, the tray and exe icons, the studio and the site all changed together.

The dock is movable: press to open, drag to move, and Jarvis lives in that corner from then on.

Windows 10/11 x64, unsigned; verify the SHA-256 in SHA256SUMS.txt. Full notes in CHANGELOG.md.

Jarvis 0.14.0: Read it back

Choose a tag to compare

@ucsandman ucsandman released this 06 Sep 09:00

The studio composer now works the way the panel does: no checkbox, no sharing tick. A frame is a chip in the box with ×, the button reads Build, Build with frame or Revise Version 02 with frame, and the line under the box names what goes, including the selected prototype source. Sharing a window or camera attaches nothing; Use this frame puts one still in the box.

Computer mode reads the window back after every approved action: one local reading of the same window, never a model call, never a second action. The screen shows "Windows accepted click · Seven." apart from what the reading showed, and says when verification was unavailable. The review names the consequence, window and target in plain words; IDs and the full tree sit behind Details.

Ready no longer waits for the preview (33 ms instead of 1548 ms with the preview held 1.5 s in the synthetic check). Effort changes are local. Screen on idles on one deadline timer instead of a 250 ms poll (2 DOM mutations per 2 s instead of 72) and no longer drops a screenshot that falls due while a send is running.

Windows 10/11 x64, unsigned; verify the SHA-256 in SHA256SUMS.txt. Full notes in CHANGELOG.md.

Jarvis 0.13.0: Screen on

Choose a tag to compare

@ucsandman ucsandman released this 06 Sep 07:50

Let Jarvis follow your clicks for ten minutes, with a fresh screenshot ready when you ask.

Screen on. "Screen & mic off" in the panel header is now a button. It opens a ten-minute lease with two ways in: Follow my clicks and Follow and keep a fresh screenshot. No checkbox; the button is the consent. The header then reads "Screen on · following clicks · 9:42" (or "fresh screenshots"), the dot lights, and pressing the line stops it. Ctrl+Shift+F12 stops it too.

Follows the window you click. While on, whatever top-level window you click is the one Jarvis looks at. "Looking at" names the window and the control you clicked, the starters refit to that app, and a thin amber border on the desktop outlines the followed window.

Fresh screenshots. With that option on, three quiet seconds after a click a screenshot of that window replaces the chip in the box, only if the window looks different from the last one. Send reads "Send with screenshot". Nothing is sent without Send. × on the chip mutes that window until you click a different one.

Ends on its own. After ten minutes the header returns to "Screen & mic off" and a line under the box says "Screen off · followed for 10 minutes". A chip already in the box stays.

Under the hood. The shell installs a mouse button-up hook and the border only during a lease; no keyboard hook, no values read, no coordinates kept. Messages screen-on, screen-off, screen, and target with via:'click' and element. The Computer helper's shortcut refusal now names Screen on as a possible holder. Not built, on purpose: automatic sends.

Windows 10/11 x64. The exe is unsigned; SHA256SUMS.txt carries its checksum. Defender's cloud heuristics flagged the 0.12.0 download as Trojan:Win32/Sabsik.TE.A!ml; that was a heuristic false positive on an unsigned self-extracting exe, and this build scans clean.

Jarvis 0.12.0: any model, minimized windows too

Choose a tag to compare

@ucsandman ucsandman released this 06 Sep 01:56

Pick any model in the catalog, and point Jarvis at a minimized window.

Any model. Settings now lists eleven models in two groups. OpenAI through Codex on your ChatGPT subscription: Astra, GPT-5.6 Sol, GPT-5.6 Terra, GPT-5.6 Luna, GPT-5.5, GPT-5.4 Mini and GPT-5.3 Codex Spark. Anthropic through Claude Code on your Claude subscription: Fable 5.1, Opus 5, Sonnet 5 and Haiku 4.5. Each request pins exactly the model you chose and fails closed if the CLI reports another one, if your plan lacks access, or on a usage limit. A model that stops at extra-high effort moves a saved maximum down and says so. Anthropic models can spend paid Claude usage credits; the billing line names the one you picked. No API key, no fallback, no automatic switching.

Minimized windows. The change picker lists minimized windows, marked "minimized". A screenshot shows the window without giving it focus, captures it, and minimizes it again with its placement intact. It appears on screen for well under a second. Computer mode restores a minimized window before an approved action.

Under the hood. One catalog, public/models.js, feeds the page and the server. The shell's windows rows carry a minimized boolean. GET /api/local-session returns the whole catalog.

Windows 10/11 x64. The exe is unsigned; SHA256SUMS.txt carries its checksum.

Jarvis 0.11.0: choose what it looks at

Choose a tag to compare

@ucsandman ucsandman released this 06 Sep 01:16

Jarvis 0.11.0 lets you choose what it looks at.

  • change on the "Looking at" line lists Whole desktop and every open window, as rows, the one that was in front marked. Pick one and the three starters re-fit to that app; Screenshot and the starters then capture it. The pick lasts until you summon Jarvis again, so Ctrl+Shift+E still grabs the window you were in.
  • Whole desktop captures every monitor at once, with the panel hidden for the capture so Jarvis is not in the picture.
  • A window half off the screen or on another monitor now captures whole. "Move the entire selected window onto the visible desktop" is gone; only a minimized window refuses, and the message says to restore it.
  • The list is titles and app names only. No pixels move until you press a starter or Screenshot.

Everything else from 0.10.0 stands: one box, one button, no tick, Computer mode as its own screen.

Windows 10/11 x64. The exe is unsigned; SHA256SUMS.txt is attached.

Jarvis 0.10.0: one box, one button

Choose a tag to compare

@ucsandman ucsandman released this 06 Sep 00:48

Jarvis 0.10.0 is the panel again, this time with almost nothing on it.

  • One box, one button. The Send button says what goes: "Send", "Send with screenshot", "Send with window text". No checkbox. A screenshot or the window's text sits inside the box as a chip with its name, time and size; × removes it; after a send it leaves the box and stays on the message as evidence. A refused or stopped send keeps it.
  • Nothing to scroll at rest, no details arrows, no chip strip. The three starters for the window you were in are full-width rows that each say what they take ("takes a screenshot of Brave", "reads the text of Notepad", "just asks"). They come back when you summon Jarvis from a different window.
  • One line in the header, "Screen & mic off", that nothing overwrites. One line under the box that names the model and the account, with "What goes" for the request body and every send this session. While a request is out it becomes "Thinking · 4s" with the only Stop on the screen.
  • Computer mode is a screen, not a card. Settings, Computer mode, then the screen takes over the panel: the window, the task, the one action waiting for your approval, the lease countdown at the top, Stop control in the footer. Back keeps the lease; Open brings the screen back. "Plan next action" is the consent; the line under it names the window whose fresh reading goes.
  • Settings gained a "Do more" section: Open the studio, Computer mode. The studio arrow left the header.

The studio, the lease dialog, the broker, per-action approval, Ctrl+Shift+F12 and the subscription transports did not change. Fable can still spend paid Claude credits.

Windows 10/11 x64. The exe is unsigned; SHA256SUMS.txt is attached.

Jarvis 0.9.0

Choose a tag to compare

@ucsandman ucsandman released this 05 Sep 23:59

Jarvis 0.9.0 is the panel, rebuilt around one idea: it already knows which window you were in.

  • The deck. Press Ctrl+Shift+Space and the panel names the window in front and offers three prewritten questions for it: "Unstick me" for an error, "What does this output mean?" for a terminal, "Draft a reply" for mail. No pixels and no model call until you press one. Ctrl+Shift+E does the first chip in one press and stops at the sharing tick.
  • One tick. A sentence next to one checkbox says exactly what goes ("this message, the 4 earlier messages and the attached frame"). "See exactly what goes" shows the request. The tick clears after every attempt and whenever what is attached changes. The footer counts sends and names refusals.
  • Read text. The panel reads the accessible text of the window you came from through the Computer broker, read-only: every character is shown with a count and whether it was cut short before its Include box can send it. Errors, spreadsheets and settings pages read text first.
  • Copy on every reply, write-only. The shell confirms each copy, and lint fails on any clipboard read.
  • One column. The studio (the old workbench) opens beside the panel without moving it; Computer mode is a line in the panel with its own ten-minute permission; one Settings dialog holds model, connection, effort, dictation, voice, import and allowance. Follow-up chips under replies; numbered replies render as lists.

Install: download Jarvis-0.9.0-Windows-x64.exe, quit any running Jarvis from its tray menu, and open the download. It extracts into its own version folder and moves your shortcuts. Saved work stays in the desktop profile.

The exe is unsigned, so Windows shows an unknown-publisher warning. Check the download against SHA256SUMS.txt. Bundled Node 24.15.0 and Codex 0.153.4 are publisher-verified at build time. Fable can spend paid Claude usage credits.