Drop the icon sample row; give tool panes a working PATH and a reason to stay open; answer the open questions

This commit is contained in:
Sam
2026-11-10 18:35:11 +11:00
parent 4a23f05d20
commit 7b12b45064
11 changed files with 499 additions and 9 deletions

View File

@@ -139,3 +139,65 @@ existing cheap model already configured for agents (`omni/deepseek/deepseek-v4-f
Each of the first four is one pane, one program, no change to the working layout. Nothing in
this list requires splitting workspaces again.
---
# Answers to the open questions, 2026-11-10
**Where settings are set.** `Agents>agents` has a fourth tab, **settings**, which edits the
chosen agent: role, job title, model, monthly budget, heartbeat. `enter` edits the field in
place, `esc` cancels, and `p` / `P` / `w` pause, resume and wake. Each save is one
`PATCH /api/agents/{id}` merged into that agent's existing configuration, so a model change
never wipes its folder or instructions. `Project>project` shows spend and limits read-only,
because Paperclip owns them and a second editable copy is how two screens start disagreeing.
**Spend.** Read from `cost-summary` per task (`Project>costs`, `Board>board`,
`Work>work`). The monthly budget is per agent, set in `Agents>agents` settings. There is no
company-level control on any screen yet.
**Skills for sub-agents.** Not in the interface. Paperclip has the endpoints —
`GET /api/agents/{id}/skills`, `POST /api/agents/{id}/skills/sync` with `add`, `remove` or
`replace` — so a read-only skills row is cheap and a full editor is a later step. The rule
worth keeping: an agent gets the skills its job needs and no more, which the `add`/`replace`
model already expresses.
**Where work is added.** `New task>new`, which writes a Paperclip task. A second place to
write tasks (Tuxedo, a notes file, a card board) would be a second owner for the same fact
and is exactly the failure the old project had. Personal notes are different from tasks: if
they are wanted, they belong in the project's own `.harness/NOTES.md`, and Tuxedo can read
it per project without pretending to be a task board.
**`office --host` from another machine.** Not implemented, and the runbook says why:
session creation needs a real terminal, so a person creates the session
(`tuios new --host nixos-desktop "new test project"`) and then runs `bin/office <folder>`
inside it, on the machine that owns the folder. `--host` today only records the host in the
project file. Driving `bin/office` on `.27` from `.13` would need ssh plus a remote
`bin/board`, which is a deliberate later step, not an accident.
**Seeing and switching projects.** Not built. Paperclip has the list
(`GET /api/companies/{id}/projects`); what it cannot know is which folder on which machine
each one lives in. The proposal: a small local registry of adopted projects
(`~/.config/paperclip-harness/projects.toml`: project id, folder, host, session), filled by
`bin/office`, and a `Project>projects` tab that lists them and switches by writing the
project into the current folder's `.harness/harness.toml`. A project on another machine
can only be switched to if the pane can reach it, so it would be shown as `on .27`, not
offered.
**Artifacts.** Paperclip work products: an uploaded file, a pull request, a preview URL, a
commit or a branch, attached to a task by an agent. They are inspectable records of what a
task produced. Nothing shows them yet; the natural home is a `Work>artifacts` tab listing
them with their links, read from the task's work products.
**"Workspaces" in Paperclip.** Paperclip has no workspaces. It has companies, projects,
issues (tasks), agents and runs. A *workspace* is TUIOS's word for a page; a *pane* is a
terminal inside it. When Paperclip says workspace it means a project's code folder
(`currentExecutionWorkspace`), which is the git worktree a task runs in.
**Charts.** TUIOS ships `plot` (Go), `loom` and TML. Go is the better fit here because the
panels are already Go and the data is already in memory: a spend-by-day chart in
`Project>costs` is a few dozen lines against `tuios.dev/plot`, where a TML surface would be
a second language and a second round trip. Worth doing once the functional tests pass.
**Mouse-1 and Switch.** Still not installed on this machine. Unchanged from the earlier
note: they would serve cheap repeatable judgement, later, after they are installed and
measured.