aboutsummaryrefslogtreecommitdiffstats
path: root/docs
AgeCommit message (Collapse)AuthorFilesLines
2026-10-23docs: plan cloud models, daemon sideDanilo M.1-0/+806
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23docs: spec cloud models, chosen per chatDanilo M.1-0/+152
Providers are OpenAI-compatible [[cloud]] tables with a key_cmd; a chat stores its model; cloud chats get only tools marked cloud = true, and audio is always transcribed locally. Replaces the everything-local rule with no silent cloud fallback. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19clone tool: name the target owner-repoDanilo M.1-5/+9
A generic repo such as evgen2571/wallpapers cloned into wallpapers; the target now takes the owner's name, collapsing when owner and repo match and falling back to the bare name when the URL has none.
2026-10-19clone tool: clone a public repo into the host's folderDanilo M.1-0/+78
A public URL is cloned into ~/Programming/GIT/<host-folder>/<repo>, the folder chosen by host from ~/.config/desktop-assistant/clone-hosts (github.com, gitlab.com, forge.slackware.nl seeded). An unknown host or an already-cloned repo stops and asks with a concrete action; approving a new host folder appends it to the map, so later clones of that host ask nothing. Update pulls with --ff-only, never clones over the folder. test-clone.sh stubs git and uses a scratch tree and map.
2026-10-19docs: the new project tool, live checkDanilo M.1-1/+1
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19project tool: end the prompt with a period, plan-friendly opencode promptDanilo M.1-2/+5
The model sends the description without a final period, so the prompt read "...tool Fill in". opencode now starts in its plan agent, which cannot edit, so its prompt asks for a proposal instead. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19project tool: start a new project and open an agent on itDanilo M.1-1/+7
project.sh makes a folder in ~/Programming/GIT with AGENTS.md, CLAUDE.md, README.md and LICENSE (GPLv2 only, GPLv2+, GPLv3 or MIT, texts shipped in licenses/), commits it signed, and opens Claude Code or opencode in a kitty tab, or a new window when no kitty listens. The tool description asks the model to confirm before calling. Check: test-project.sh. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19docs: plan the new project tool, agent choice in the specDanilo M.2-15/+274
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19docs: spec the new project toolDanilo M.1-0/+119
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19voice input: ask takes a WAV, the model transcribes itDanilo M.2-8/+13
An ask with audio sends a transcribing state, has the loaded model transcribe the clip (thinking off, no tools, the prompt naming Italian or English), then answers the transcript as a typed question, so the user event, history and search hold the words. A stop while transcribing ends the turn like any reply. Refused: a relative path, a file that is not a WAV, over 60 s (the ubatch bound, untried for audio), a model without audio input, and an empty transcript. The length comes from the file size, since a recording stopped by a signal leaves the header's length unset. Live: 10/10 clips heard right, the right tool each time. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19docs: spec voice input, the model transcribesDanilo M.1-0/+86
Gemma4 heard 10/10 short clips right as a transcript, but answered straight from the audio in Estonian or Spanish 5 times in 6. So the daemon transcribes first and asks the words as text. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19docs: the desktop modes tool, live checkDanilo M.1-1/+1
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19mode tool: read and set the desktop modesDanilo M.1-0/+100
dnd, presentation, nolock and quiet through statusctl. The output is read back after a set, so a set that did not land is not reported as done, and a running game's hold on presentation is named. test-mode.sh checks it against a scratch runtime dir. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19docs: spec the desktop modes toolDanilo M.1-0/+72
The first tool that changes something: dnd, presentation, nolock and quiet through statusctl, applied with no confirmation since a mode is one bit and undone by asking again. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16Write a reply to a file: the write commandDanilo M.1-1/+1
For the canvas's To .md: a one-off request with attachments, no history, no thinking and no tools, whose reply is written to the first free name in a folder instead of the conversation. It streams progress as a character count, unwraps a reply the model fenced whole, and shares the turn counter, so it stops a reply in flight and stop ends it with no file left behind. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16Spec the write commandDanilo M.1-0/+45
A one-off request with attachments whose reply goes to a file, for the canvas's To .md: no history, no thinking, a free name, nothing written when stopped. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16Docs: page render boundDanilo M.1-1/+1
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16Docs: attachmentsDanilo M.1-2/+2
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16Plan attachmentsDanilo M.1-0/+615
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16Spec attachmentsDanilo M.1-0/+99
ask takes file paths; text and PDFs are extracted and inlined within half the free context, images and scanned pages go as image parts to a model that reports vision. History keeps extracted text inline and images as a path and hash, re-read on reopen while unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16Mark the errors that end a replyDanilo M.1-1/+1
Every client sees every event, so a command error from one client, such as opening a conversation another just deleted, reached a canvas watching a reply and was taken as that reply's end: the canvas stopped rendering tokens the daemon kept streaming. An error from the reply thread now carries turn: true; command errors carry none. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16Final review: startup probe, error messages, refusal exit, docsDanilo M.1-4/+4
A startup probe that failed with anything but OSError (llama-server not in router mode, an empty model list) crashed the daemon at boot, against its own comment; it is caught like the per-request failures now. llama-server's reasons reach the client: an HTTP error carries its body and an error chunk mid-stream its message, where the client used to see 'choices'. A daemon that refuses to start, or fails before serving, exits 1 instead of 0. assistant.sh no longer mistakes a --test run for the daemon. AGENTS.md said every section from Hardware to Kokoro was voice-only, which included findings the daemon still applies; it now names the voice ones. It also claimed a stopped reply emits nothing after done, while a late ctx can. The spec lists every error message, the example config no longer shows a non-default temperature as the default, and the updates tool stops telling the model not to read lists aloud. The spec is marked implemented. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16Docs: desktop-assistant is a text daemon nowDanilo M.2-8/+12
README and AGENTS.md describe the socket protocol and the history instead of the voice pipeline; the voice-era findings stay, marked as such, since a return to voice starts from them and from the voice-v1 tag. The overlay spec is marked superseded, the daemon spec records what changed while planning, and the example tools lose their spoken announcements. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16Plan the text daemonvoice-v1Danilo M.1-0/+1574
Six tasks: tag voice-v1 and strip voice, SQLite history, the two-way protocol and reply loop, assistant.sh, a live check against the router, docs. Every code block was assembled stage by stage into a scratch copy and its self-check run; the planning-time deviations from the spec are listed at the top and folded back into it by the docs task. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16Spec the text assistant daemonDanilo M.1-0/+180
Voice is dropped for now: the daemon becomes the single brain behind a quickshell conversation canvas, with typed turns over the existing socket, streamed think/token/tool events, and SQLite FTS5 history. The last voice commit gets tagged voice-v1 before deletion, so later voice work starts from the tag instead of dormant code. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30Plan local memory implementationDanilo M.1-0/+1424
Eleven tasks: the local-memory CLI with its self-check, detached commit and push, install, assistant tools and prompt block, llamachat memory module, config key, tool loop and local-only UI gate, the private server repo, guardrails against cloud agents, and the live measurement. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30Spec local memory shared with llamachatDanilo M.1-0/+196
Topic files under ~/.local/share/local-memory, a local-memory CLI both clients call, recall/remember/forget tools offered to local models only, offer-to-save plus explicit "remember that", and a private git repo on the user's server with a detached commit and push after every write. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-26Add implementation plan for the assistant overlayDanilo M.1-0/+1000
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-26Add design spec for the assistant overlayDanilo M.1-0/+170
A quickshell overlay fed by a JSON-lines Unix socket the assistant owns: state, tool, context use and real audio levels. Ignored presses send a notification instead. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-26Add implementation plan for tools and the config folderDanilo M.1-0/+1016
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-26Add design spec for tools and the config folderDanilo M.1-0/+242
Phase 1 of 2: read-only tools (time, calendar, weather, search) defined as shell-command TOML files in a config folder, plus config.toml for the settings that are constants today. Modifying tools get their own spec after phase 1 is tested live. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>