Cleanup list navigates; spend bars; office writes the missing scaffold; memory read-out per agent

This commit is contained in:
Sam
2026-11-11 15:05:43 +11:00
parent 3ec960e349
commit 36abdc1f84
13 changed files with 726 additions and 4 deletions

View File

@@ -0,0 +1,91 @@
---
type: context
id: context.paperclip-harness.config
title: .config
status: active
source_of_truth: false
freshness: current
last_reviewed: 2026-11-11
tags:
- pack/paperclip-harness
- agent-memory/context
- autolearn
- rich-discovery
- repo/config
---
# .config
## Rich discovery update (2026-11-11 03:16:34)
Five of the six are in, and one has a caveat I want to be straight about.
## Built
**1. `Repair>repair` → cleanup tab.** Sessions with pane count and last use; `space` ticks, `x` closes the ticked ones after asking. Protected and attached sessions are refused, and the screen says so:
```
session panes last used state
paperclip-harness 9 11 Nov 14:14 this project's session
tuios coding harness 4 11 Nov 14:09 attached, or on another machine
office 32 10 Nov 13:57 attached, or on another machine
office-test-1 26 10 Nov 11:24
office-test-1-card-t3-cover-image… 1 9 Nov 19:50
space ticks a session, x closes the ticked ones after asking.
closing a TUIOS session ends its panes. It does not delete anything in
~/.pi/paperclips, where every Pi conversation is kept.
```
**2. Pi sessions in `t`** — two new entries: `pi sessions` opens `~/.pi/paperclips` in Yazi, `pi resume` gives Pi's own session list ready to open.
**4. `v` in `Work>review`** — starts `bin/review <task> --post` and the tab shows the review running, then the verdict, which is also written on the task.
**6. `Board>board` needs-you** — `enter` on a card now selects that task *and* switches you to the Reply workspace, so the answer is one key away.
**3. `Project>project` → projects tab** — `bin/office` now records each adopted project in `~/.config/paperclip-harness/projects.toml`, and the tab lists them:
```
project machine session folder
spike-2026-11-10 nixos-desktop paperclip-har… /tmp/pc-sandbox-2026-… (this machine)
a project on another machine can be listed here but not opened from this one.
to open one: attach to its session, or run bin/office <folder> there.
```
**Caveat:** that is a *list*, not a switch. Switching would mean tearing down these panes and building another project's — and a project on `.27` cannot be opened from `.13` at all. I would rather show you the truth than a button that half-works.
## Not done: 7 (the spend chart)
`Project>overview` already has a runs sparkline. Spend-per-day needs cost per run, and the only cheap source is company runs, which cost 8 seconds to read. I did not put an 8-second read behind a tab without asking you first.
## A finding that changes the key map
While testing the cleanup tab I found why tabs would not switch: **TUIOS binds `[`, `]`, `Tab`, `,`, `.`, `=`, `;` and the digits** in its own key map, and they never reached the program in that pane. Tabs are now switched with **`(` and `)`**, which TUIOS leaves alone; `[` and `]` still work where the pane is in terminal mode, so both are accepted.
If a pane ever stops responding to letters, press `i` or `Enter` first — that is TUIOS's window mode, not a broken program.
Committed as `3ec960e`; `docs/NEXT.md` updated with what is done and what remains (spend chart, the `office` scaffold, memory per agent, MOUSE-1).
## Source paths observed
- `.config/paperclip-harness/projects.toml`
## Evidence
- Confidence: 84%
- Reason: Update component/repository context with detailed discovered structure and configuration
## Related
- [[packs/paperclip-harness/00-system/pi-agent/memory-manifest|Memory Manifest]]
## Related learned memories <!-- same-turn-2026-11-11 03:16:34 -->
- context: [[packs/paperclip-harness/20-context/paperclip-harness-tui-office-project-components|paperclip-harness TUI office/project components]]
- context: [[packs/paperclip-harness/20-context/tuios-key-bindings-interpose-on-harness-key-map|TUIOS key bindings interpose on harness key map]]
- action: [[packs/paperclip-harness/40-actions/2026-11-10-wrote-docs-ui-layout-md-and-three-live-layout-mockups|Delivered 5 of 6 harness UI items, commit 3ec960e]]
- session: [[packs/paperclip-harness/80-sessions/rich-discovery-config-2026-11-11-03-16-34|Rich discovery: .config 2026-11-11 03:16:34]]
- context: [[packs/paperclip-harness/20-context/config|.config]]
- runbook: [[packs/paperclip-harness/70-runbooks/tmp-deployment-operations|.config deployment operations]]
- observation: [[packs/paperclip-harness/60-observations/tmp-repository-structure-and-configuration-patterns|.config repository structure and configuration patterns]]

View File

@@ -0,0 +1,103 @@
---
type: context
id: context.paperclip-harness.paperclip-harness-tui-office-project-components
title: paperclip-harness TUI office/project components
status: active
source_of_truth: false
freshness: current
last_reviewed: 2026-11-11
tags:
- pack/paperclip-harness
- agent-memory/context
- paperclip-harness
- office
- projectModel
- projects.toml
- tui
---
# paperclip-harness TUI office/project components
The paperclip-harness is a Go TUI (project model with tabs) plus a `bin/office` launcher script, driving TUIOS panes.
Key structure discovered in the Go code:
- `projectModel` renders tabs; `switch m.tab` in the View selects body: case 0 = `overviewLines`, case 1 = `factLines`, case 2 = `costLines`, default = `settingLines`. A projects/cleanup style tab renders via `projectListLines(width int)` (near line 481), used to list every adopted project and where it lives.
- Project tab follows a table pattern: columns project / machine / session / folder, with a "(this machine)" marker.
`bin/office` behavior:
- Adopts projects and records each in `~/.config/paperclip-harness/projects.toml` (keyed by paperclip UUID, name, folder, host, session).
- Creates TUIOS workspaces/panes for: project, New task, Repair (e.g. "workspaces in use: 8").
- Header comment in that TOML: adopted projects are one folder, one machine, one session each; Paperclip owns the project itself, the file only records where it lives.
- A project on another machine can be listed but not opened locally; opening requires attaching to its session or running `bin/office <folder>` on that machine.
This overview should be the anchor for future changes to the office/project tab, cleanup tab, and project registry.
## Detailed context from completed turn
Five of the six are in, and one has a caveat I want to be straight about.
## Built
**1. `Repair>repair` → cleanup tab.** Sessions with pane count and last use; `space` ticks, `x` closes the ticked ones after asking. Protected and attached sessions are refused, and the screen says so:
```
session panes last used state
paperclip-harness 9 11 Nov 14:14 this project's session
tuios coding harness 4 11 Nov 14:09 attached, or on another machine
office 32 10 Nov 13:57 attached, or on another machine
office-test-1 26 10 Nov 11:24
office-test-1-card-t3-cover-image… 1 9 Nov 19:50
space ticks a session, x closes the ticked ones after asking.
closing a TUIOS session ends its panes. It does not delete anything in
~/.pi/paperclips, where every Pi conversation is kept.
```
**2. Pi sessions in `t`** — two new entries: `pi sessions` opens `~/.pi/paperclips` in Yazi, `pi resume` gives Pi's own session list ready to open.
**4. `v` in `Work>review`** — starts `bin/review <task> --post` and the tab shows the review running, then the verdict, which is also written on the task.
**6. `Board>board` needs-you** — `enter` on a card now selects that task *and* switches you to the Reply workspace, so the answer is one key away.
**3. `Project>project` → projects tab** — `bin/office` now records each adopted project in `~/.config/paperclip-harness/projects.toml`, and the tab lists them:
```
project machine session folder
spike-2026-11-10 nixos-desktop paperclip-har… /tmp/pc-sandbox-2026-… (this machine)
a project on another machine can be listed here but not opened from this one.
to open one: attach to its session, or run bin/office <folder> there.
```
**Caveat:** that is a *list*, not a switch. Switching would mean tearing down these panes and building another project's — and a project on `.27` cannot be opened from `.13` at all. I would rather show you the truth than a button that half-works.
## Not done: 7 (the spend chart)
`Project>overview` already has a runs sparkline. Spend-per-day needs cost per run, and the only cheap source is company runs, which cost 8 seconds to read. I did not put an 8-second read behind a tab without asking you first.
## A finding that changes the key map
While testing the cleanup tab I found why tabs would not switch: **TUIOS binds `[`, `]`, `Tab`, `,`, `.`, `=`, `;` and the digits** in its own key map, and they never reached the program in that pane. Tabs are now switched with **`(` and `)`**, which TUIOS leaves alone; `[` and `]` still work where the pane is in terminal mode, so both are accepted.
If a pane ever stops responding to letters, press `i` or `Enter` first — that is TUIOS's window mode, not a broken program.
Committed as `3ec960e`; `docs/NEXT.md` updated with what is done and what remains (spend chart, the `office` scaffold, memory per agent, MOUSE-1).
## Evidence
- Confidence: 85%
- Reason: Evidence-backed architecture of the Go TUI tabs and bin/office registry from grep output and rendered UI.; enriched with final-answer detail because persistence should be reusable
## Related
- [[packs/paperclip-harness/00-system/pi-agent/memory-manifest|Memory Manifest]]
## Related learned memories <!-- same-turn-2026-11-11 03:16:34 -->
- context: [[packs/paperclip-harness/20-context/paperclip-harness-tui-office-project-components|paperclip-harness TUI office/project components]]
- context: [[packs/paperclip-harness/20-context/tuios-key-bindings-interpose-on-harness-key-map|TUIOS key bindings interpose on harness key map]]
- action: [[packs/paperclip-harness/40-actions/2026-11-10-wrote-docs-ui-layout-md-and-three-live-layout-mockups|Delivered 5 of 6 harness UI items, commit 3ec960e]]
- session: [[packs/paperclip-harness/80-sessions/rich-discovery-config-2026-11-11-03-16-34|Rich discovery: .config 2026-11-11 03:16:34]]
- context: [[packs/paperclip-harness/20-context/config|.config]]
- runbook: [[packs/paperclip-harness/70-runbooks/tmp-deployment-operations|.config deployment operations]]
- observation: [[packs/paperclip-harness/60-observations/tmp-repository-structure-and-configuration-patterns|.config repository structure and configuration patterns]]

View File

@@ -0,0 +1,94 @@
---
type: context
id: context.paperclip-harness.tuios-key-bindings-interpose-on-harness-key-map
title: TUIOS key bindings interpose on harness key map
status: active
source_of_truth: false
freshness: current
last_reviewed: 2026-11-11
tags:
- pack/paperclip-harness
- agent-memory/context
- tuios
- keybindings
- harness
- caveat
---
# TUIOS key bindings interpose on harness key map
TUIOS intercepts its own key combos before they reach the program in a pane. Observed to bind: `[`, `]`, `Tab`, `,`, `.`, `=`, `;` and the digit keys. Those never reached the harness program.
Consequence: the harness now switches tabs with `(` and `)` (TUIOS leaves these alone), while `[`/`]` still work only when the pane is in terminal mode, so both are accepted.
Operational caveat: if a pane stops responding to letters, press `i` or `Enter` first — that is TUIOS window mode, not a broken program.
## Detailed context from completed turn
Five of the six are in, and one has a caveat I want to be straight about.
## Built
**1. `Repair>repair` → cleanup tab.** Sessions with pane count and last use; `space` ticks, `x` closes the ticked ones after asking. Protected and attached sessions are refused, and the screen says so:
```
session panes last used state
paperclip-harness 9 11 Nov 14:14 this project's session
tuios coding harness 4 11 Nov 14:09 attached, or on another machine
office 32 10 Nov 13:57 attached, or on another machine
office-test-1 26 10 Nov 11:24
office-test-1-card-t3-cover-image… 1 9 Nov 19:50
space ticks a session, x closes the ticked ones after asking.
closing a TUIOS session ends its panes. It does not delete anything in
~/.pi/paperclips, where every Pi conversation is kept.
```
**2. Pi sessions in `t`** — two new entries: `pi sessions` opens `~/.pi/paperclips` in Yazi, `pi resume` gives Pi's own session list ready to open.
**4. `v` in `Work>review`** — starts `bin/review <task> --post` and the tab shows the review running, then the verdict, which is also written on the task.
**6. `Board>board` needs-you** — `enter` on a card now selects that task *and* switches you to the Reply workspace, so the answer is one key away.
**3. `Project>project` → projects tab** — `bin/office` now records each adopted project in `~/.config/paperclip-harness/projects.toml`, and the tab lists them:
```
project machine session folder
spike-2026-11-10 nixos-desktop paperclip-har… /tmp/pc-sandbox-2026-… (this machine)
a project on another machine can be listed here but not opened from this one.
to open one: attach to its session, or run bin/office <folder> there.
```
**Caveat:** that is a *list*, not a switch. Switching would mean tearing down these panes and building another project's — and a project on `.27` cannot be opened from `.13` at all. I would rather show you the truth than a button that half-works.
## Not done: 7 (the spend chart)
`Project>overview` already has a runs sparkline. Spend-per-day needs cost per run, and the only cheap source is company runs, which cost 8 seconds to read. I did not put an 8-second read behind a tab without asking you first.
## A finding that changes the key map
While testing the cleanup tab I found why tabs would not switch: **TUIOS binds `[`, `]`, `Tab`, `,`, `.`, `=`, `;` and the digits** in its own key map, and they never reached the program in that pane. Tabs are now switched with **`(` and `)`**, which TUIOS leaves alone; `[` and `]` still work where the pane is in terminal mode, so both are accepted.
If a pane ever stops responding to letters, press `i` or `Enter` first — that is TUIOS's window mode, not a broken program.
Committed as `3ec960e`; `docs/NEXT.md` updated with what is done and what remains (spend chart, the `office` scaffold, memory per agent, MOUSE-1).
## Evidence
- Confidence: 85%
- Reason: A discovered conflict that changed the key map and affects all future TUI key work.; enriched with final-answer detail because persistence should be reusable
## Related
- [[packs/paperclip-harness/00-system/pi-agent/memory-manifest|Memory Manifest]]
## Related learned memories <!-- same-turn-2026-11-11 03:16:34 -->
- context: [[packs/paperclip-harness/20-context/paperclip-harness-tui-office-project-components|paperclip-harness TUI office/project components]]
- context: [[packs/paperclip-harness/20-context/tuios-key-bindings-interpose-on-harness-key-map|TUIOS key bindings interpose on harness key map]]
- action: [[packs/paperclip-harness/40-actions/2026-11-10-wrote-docs-ui-layout-md-and-three-live-layout-mockups|Delivered 5 of 6 harness UI items, commit 3ec960e]]
- session: [[packs/paperclip-harness/80-sessions/rich-discovery-config-2026-11-11-03-16-34|Rich discovery: .config 2026-11-11 03:16:34]]
- context: [[packs/paperclip-harness/20-context/config|.config]]
- runbook: [[packs/paperclip-harness/70-runbooks/tmp-deployment-operations|.config deployment operations]]
- observation: [[packs/paperclip-harness/60-observations/tmp-repository-structure-and-configuration-patterns|.config repository structure and configuration patterns]]

View File

@@ -634,3 +634,36 @@ Validation: build=0; 8 workspaces running; Work>work opens on runs for AUD-171.
- runbook: [[packs/paperclip-harness/70-runbooks/tmp-deployment-operations|navigate tasks and runs inside Work>work and merge safely (paperclip-harness)]]
- session: [[packs/paperclip-harness/80-sessions/rich-discovery-home-2026-11-11-02-17-44|Rich discovery: home 2026-11-11 02:17:44]]
- context: [[packs/paperclip-harness/20-context/home|home]]
---
## Update (2026-11-11 03:16:34)
Commit `3ec960e` ("Cleanup pane, Pi session tools, review from the UI, project registry, needs panel acts"). `docs/NEXT.md` updated with done/remaining.
Delivered:
1. Repair>repair cleanup tab: lists sessions with pane count and last used; `space` ticks, `x` closes ticked after confirm. Protected/attached sessions refused with a visible state message (this project's session / attached, or on another machine). Message notes closing a TUIOS session ends its panes but does not delete anything in `~/.pi/paperclips`.
2. Pi sessions in `t`: `pi sessions` opens `~/.pi/paperclips` in Yazi; `pi resume` gives Pi's own session list.
3. Project>project projects tab: reads adopted projects from `~/.config/paperclip-harness/projects.toml` and lists project/machine/session/folder. This is a LIST, not a switch — switching would require tearing down and rebuilding panes, and a remote-machine project cannot be opened locally.
4. `v` in Work>review runs `bin/review <task> --post`, showing running then verdict, written to the task.
5. Board>board needs-you: `enter` on a card selects the task and switches to the Reply workspace.
Not done: spend-per-day chart in Project>overview. Runs sparkline exists; spend-per-day needs cost per run and the only cheap source is company runs at ~8s read, which was not added without asking.
Remaining in `docs/NEXT.md`: spend chart, the `office` scaffold, memory per agent, MOUSE-1.
## Evidence
- Confidence: 85%
- Reason: Concrete completed work, artifacts, commit hash, and explicit deferred items.
## Related learned memories <!-- same-turn-2026-11-11 03:16:34 -->
- context: [[packs/paperclip-harness/20-context/paperclip-harness-tui-office-project-components|paperclip-harness TUI office/project components]]
- context: [[packs/paperclip-harness/20-context/tuios-key-bindings-interpose-on-harness-key-map|TUIOS key bindings interpose on harness key map]]
- action: [[packs/paperclip-harness/40-actions/2026-11-10-wrote-docs-ui-layout-md-and-three-live-layout-mockups|Delivered 5 of 6 harness UI items, commit 3ec960e]]
- session: [[packs/paperclip-harness/80-sessions/rich-discovery-config-2026-11-11-03-16-34|Rich discovery: .config 2026-11-11 03:16:34]]
- context: [[packs/paperclip-harness/20-context/config|.config]]
- runbook: [[packs/paperclip-harness/70-runbooks/tmp-deployment-operations|.config deployment operations]]
- observation: [[packs/paperclip-harness/60-observations/tmp-repository-structure-and-configuration-patterns|.config repository structure and configuration patterns]]

View File

@@ -2671,3 +2671,78 @@ Committed as `0476afc`; the eight workspaces were rebuilt and are running. My su
- observation: [[packs/paperclip-harness/60-observations/tmp-repository-structure-and-configuration-patterns|paperclip-harness task state and session inventory]]
- session: [[packs/paperclip-harness/80-sessions/rich-discovery-pause-2026-11-11-02-40-13|Rich discovery: pause 2026-11-11 02:40:13]]
- context: [[packs/paperclip-harness/20-context/paperclip-harness|pause]]
---
## Update (2026-11-11 03:16:34)
## Structural/configuration observations (2026-11-11 03:16:34)
Five of the six are in, and one has a caveat I want to be straight about.
## Built
**1. `Repair>repair` → cleanup tab.** Sessions with pane count and last use; `space` ticks, `x` closes the ticked ones after asking. Protected and attached sessions are refused, and the screen says so:
```
session panes last used state
paperclip-harness 9 11 Nov 14:14 this project's session
tuios coding harness 4 11 Nov 14:09 attached, or on another machine
office 32 10 Nov 13:57 attached, or on another machine
office-test-1 26 10 Nov 11:24
office-test-1-card-t3-cover-image… 1 9 Nov 19:50
space ticks a session, x closes the ticked ones after asking.
closing a TUIOS session ends its panes. It does not delete anything in
~/.pi/paperclips, where every Pi conversation is kept.
```
**2. Pi sessions in `t`** — two new entries: `pi sessions` opens `~/.pi/paperclips` in Yazi, `pi resume` gives Pi's own session list ready to open.
**4. `v` in `Work>review`** — starts `bin/review <task> --post` and the tab shows the review running, then the verdict, which is also written on the task.
**6. `Board>board` needs-you** — `enter` on a card now selects that task *and* switches you to the Reply workspace, so the answer is one key away.
**3. `Project>project` → projects tab** — `bin/office` now records each adopted project in `~/.config/paperclip-harness/projects.toml`, and the tab lists them:
```
project machine session folder
spike-2026-11-10 nixos-desktop paperclip-har… /tmp/pc-sandbox-2026-… (this machine)
a project on another machine can be listed here but not opened from this one.
to open one: attach to its session, or run bin/office <folder> there.
```
**Caveat:** that is a *list*, not a switch. Switching would mean tearing down these panes and building another project's — and a project on `.27` cannot be opened from `.13` at all. I would rather show you the truth than a button that half-works.
## Not done: 7 (the spend chart)
`Project>overview` already has a runs sparkline. Spend-per-day needs cost per run, and the only cheap source is company runs, which cost 8 seconds to read. I did not put an 8-second read behind a tab without asking you first.
## A finding that changes the key map
While testing the cleanup tab I found why tabs would not switch: **TUIOS binds `[`, `]`, `Tab`, `,`, `.`, `=`, `;` and the digits** in its own key map, and they never reached the program in that pane. Tabs are now switched with **`(` and `)`**, which TUIOS leaves alone; `[` and `]` still work where the pane is in terminal mode, so both are accepted.
If a pane ever stops responding to letters, press `i` or `Enter` first — that is TUIOS's window mode, not a broken program.
Committed as `3ec960e`; `docs/NEXT.md` updated with what is done and what remains (spend chart, the `office` scaffold, memory per agent, MOUSE-1).
## Source paths observed
- `.config/paperclip-harness/projects.toml`
## Evidence
- Confidence: 82%
- Reason: Captured factual repo structure/configuration patterns from rich discovery
## Related learned memories <!-- same-turn-2026-11-11 03:16:34 -->
- context: [[packs/paperclip-harness/20-context/paperclip-harness-tui-office-project-components|paperclip-harness TUI office/project components]]
- context: [[packs/paperclip-harness/20-context/tuios-key-bindings-interpose-on-harness-key-map|TUIOS key bindings interpose on harness key map]]
- action: [[packs/paperclip-harness/40-actions/2026-11-10-wrote-docs-ui-layout-md-and-three-live-layout-mockups|Delivered 5 of 6 harness UI items, commit 3ec960e]]
- session: [[packs/paperclip-harness/80-sessions/rich-discovery-config-2026-11-11-03-16-34|Rich discovery: .config 2026-11-11 03:16:34]]
- context: [[packs/paperclip-harness/20-context/config|.config]]
- runbook: [[packs/paperclip-harness/70-runbooks/tmp-deployment-operations|.config deployment operations]]
- observation: [[packs/paperclip-harness/60-observations/tmp-repository-structure-and-configuration-patterns|.config repository structure and configuration patterns]]

View File

@@ -882,3 +882,78 @@ Choosing a task here writes the same choice the Board writes, so `Reply>reply` a
- runbook: [[packs/paperclip-harness/70-runbooks/tmp-deployment-operations|navigate tasks and runs inside Work>work and merge safely (paperclip-harness)]]
- session: [[packs/paperclip-harness/80-sessions/rich-discovery-home-2026-11-11-02-17-44|Rich discovery: home 2026-11-11 02:17:44]]
- context: [[packs/paperclip-harness/20-context/home|home]]
---
## Update (2026-11-11 03:16:34)
## Deployment/runbook details discovered (2026-11-11 03:16:34)
Five of the six are in, and one has a caveat I want to be straight about.
## Built
**1. `Repair>repair` → cleanup tab.** Sessions with pane count and last use; `space` ticks, `x` closes the ticked ones after asking. Protected and attached sessions are refused, and the screen says so:
```
session panes last used state
paperclip-harness 9 11 Nov 14:14 this project's session
tuios coding harness 4 11 Nov 14:09 attached, or on another machine
office 32 10 Nov 13:57 attached, or on another machine
office-test-1 26 10 Nov 11:24
office-test-1-card-t3-cover-image… 1 9 Nov 19:50
space ticks a session, x closes the ticked ones after asking.
closing a TUIOS session ends its panes. It does not delete anything in
~/.pi/paperclips, where every Pi conversation is kept.
```
**2. Pi sessions in `t`** — two new entries: `pi sessions` opens `~/.pi/paperclips` in Yazi, `pi resume` gives Pi's own session list ready to open.
**4. `v` in `Work>review`** — starts `bin/review <task> --post` and the tab shows the review running, then the verdict, which is also written on the task.
**6. `Board>board` needs-you** — `enter` on a card now selects that task *and* switches you to the Reply workspace, so the answer is one key away.
**3. `Project>project` → projects tab** — `bin/office` now records each adopted project in `~/.config/paperclip-harness/projects.toml`, and the tab lists them:
```
project machine session folder
spike-2026-11-10 nixos-desktop paperclip-har… /tmp/pc-sandbox-2026-… (this machine)
a project on another machine can be listed here but not opened from this one.
to open one: attach to its session, or run bin/office <folder> there.
```
**Caveat:** that is a *list*, not a switch. Switching would mean tearing down these panes and building another project's — and a project on `.27` cannot be opened from `.13` at all. I would rather show you the truth than a button that half-works.
## Not done: 7 (the spend chart)
`Project>overview` already has a runs sparkline. Spend-per-day needs cost per run, and the only cheap source is company runs, which cost 8 seconds to read. I did not put an 8-second read behind a tab without asking you first.
## A finding that changes the key map
While testing the cleanup tab I found why tabs would not switch: **TUIOS binds `[`, `]`, `Tab`, `,`, `.`, `=`, `;` and the digits** in its own key map, and they never reached the program in that pane. Tabs are now switched with **`(` and `)`**, which TUIOS leaves alone; `[` and `]` still work where the pane is in terminal mode, so both are accepted.
If a pane ever stops responding to letters, press `i` or `Enter` first — that is TUIOS's window mode, not a broken program.
Committed as `3ec960e`; `docs/NEXT.md` updated with what is done and what remains (spend chart, the `office` scaffold, memory per agent, MOUSE-1).
## Source paths observed
- `.config/paperclip-harness/projects.toml`
## Evidence
- Confidence: 83%
- Reason: Extracted repeatable deploy/configuration procedure from rich discovery
## Related learned memories <!-- same-turn-2026-11-11 03:16:34 -->
- context: [[packs/paperclip-harness/20-context/paperclip-harness-tui-office-project-components|paperclip-harness TUI office/project components]]
- context: [[packs/paperclip-harness/20-context/tuios-key-bindings-interpose-on-harness-key-map|TUIOS key bindings interpose on harness key map]]
- action: [[packs/paperclip-harness/40-actions/2026-11-10-wrote-docs-ui-layout-md-and-three-live-layout-mockups|Delivered 5 of 6 harness UI items, commit 3ec960e]]
- session: [[packs/paperclip-harness/80-sessions/rich-discovery-config-2026-11-11-03-16-34|Rich discovery: .config 2026-11-11 03:16:34]]
- context: [[packs/paperclip-harness/20-context/config|.config]]
- runbook: [[packs/paperclip-harness/70-runbooks/tmp-deployment-operations|.config deployment operations]]
- observation: [[packs/paperclip-harness/60-observations/tmp-repository-structure-and-configuration-patterns|.config repository structure and configuration patterns]]

View File

@@ -0,0 +1,94 @@
---
type: session
id: session.paperclip-harness.rich-discovery-config-2026-11-11-03-16-34
title: Rich discovery: .config 2026-11-11 03:16:34
status: active
source_of_truth: false
freshness: current
last_reviewed: 2026-11-11
tags:
- pack/paperclip-harness
- agent-memory/session
- autolearn
- rich-discovery
- repo/config
---
# Rich discovery: .config 2026-11-11 03:16:34
Sanitized rich discovery snapshot captured automatically from the completed turn.
## Source paths observed
- `.config/paperclip-harness/projects.toml`
## Final answer snapshot
Five of the six are in, and one has a caveat I want to be straight about.
## Built
**1. `Repair>repair` → cleanup tab.** Sessions with pane count and last use; `space` ticks, `x` closes the ticked ones after asking. Protected and attached sessions are refused, and the screen says so:
```
session panes last used state
paperclip-harness 9 11 Nov 14:14 this project's session
tuios coding harness 4 11 Nov 14:09 attached, or on another machine
office 32 10 Nov 13:57 attached, or on another machine
office-test-1 26 10 Nov 11:24
office-test-1-card-t3-cover-image… 1 9 Nov 19:50
space ticks a session, x closes the ticked ones after asking.
closing a TUIOS session ends its panes. It does not delete anything in
~/.pi/paperclips, where every Pi conversation is kept.
```
**2. Pi sessions in `t`** — two new entries: `pi sessions` opens `~/.pi/paperclips` in Yazi, `pi resume` gives Pi's own session list ready to open.
**4. `v` in `Work>review`** — starts `bin/review <task> --post` and the tab shows the review running, then the verdict, which is also written on the task.
**6. `Board>board` needs-you** — `enter` on a card now selects that task *and* switches you to the Reply workspace, so the answer is one key away.
**3. `Project>project` → projects tab** — `bin/office` now records each adopted project in `~/.config/paperclip-harness/projects.toml`, and the tab lists them:
```
project machine session folder
spike-2026-11-10 nixos-desktop paperclip-har… /tmp/pc-sandbox-2026-… (this machine)
a project on another machine can be listed here but not opened from this one.
to open one: attach to its session, or run bin/office <folder> there.
```
**Caveat:** that is a *list*, not a switch. Switching would mean tearing down these panes and building another project's — and a project on `.27` cannot be opened from `.13` at all. I would rather show you the truth than a button that half-works.
## Not done: 7 (the spend chart)
`Project>overview` already has a runs sparkline. Spend-per-day needs cost per run, and the only cheap source is company runs, which cost 8 seconds to read. I did not put an 8-second read behind a tab without asking you first.
## A finding that changes the key map
While testing the cleanup tab I found why tabs would not switch: **TUIOS binds `[`, `]`, `Tab`, `,`, `.`, `=`, `;` and the digits** in its own key map, and they never reached the program in that pane. Tabs are now switched with **`(` and `)`**, which TUIOS leaves alone; `[` and `]` still work where the pane is in terminal mode, so both are accepted.
If a pane ever stops responding to letters, press `i` or `Enter` first — that is TUIOS's window mode, not a broken program.
Committed as `3ec960e`; `docs/NEXT.md` updated with what is done and what remains (spend chart, the `office` scaffold, memory per agent, MOUSE-1).
## Evidence
- Confidence: 86%
- Reason: Preserve full sanitized discovery detail from a rich investigation turn
## Related
- [[packs/paperclip-harness/00-system/pi-agent/memory-manifest|Memory Manifest]]
## Related learned memories <!-- same-turn-2026-11-11 03:16:34 -->
- context: [[packs/paperclip-harness/20-context/paperclip-harness-tui-office-project-components|paperclip-harness TUI office/project components]]
- context: [[packs/paperclip-harness/20-context/tuios-key-bindings-interpose-on-harness-key-map|TUIOS key bindings interpose on harness key map]]
- action: [[packs/paperclip-harness/40-actions/2026-11-10-wrote-docs-ui-layout-md-and-three-live-layout-mockups|Delivered 5 of 6 harness UI items, commit 3ec960e]]
- session: [[packs/paperclip-harness/80-sessions/rich-discovery-config-2026-11-11-03-16-34|Rich discovery: .config 2026-11-11 03:16:34]]
- context: [[packs/paperclip-harness/20-context/config|.config]]
- runbook: [[packs/paperclip-harness/70-runbooks/tmp-deployment-operations|.config deployment operations]]
- observation: [[packs/paperclip-harness/60-observations/tmp-repository-structure-and-configuration-patterns|.config repository structure and configuration patterns]]