-
02e049cae8
terminal: stop replaying questions, stop opening two sockets, bind the word keys

pastilhasandClaude Opus 5
2026-08-14 21:38:26 +00:00
-
2634df7a04
the install runner: ecosystem entry, sidecar, row, mounts

pastilhasandClaude Opus 5
2026-08-14 21:38:21 +00:00
-
ed195e0904
record what got built tonight

pastilhasandClaude Opus 5
2026-08-14 20:28:18 +00:00
-
98c400bf33
a /plugins screen to install, enable, disable and uninstall

pastilhasandClaude Opus 5
2026-08-14 20:27:58 +00:00
-
282a64a637
plugins install, enable, disable and uninstall at runtime

pastilhasandClaude Opus 5
2026-08-14 20:22:14 +00:00
-
0701aba902
brotli in the core package set

pastilhasandClaude Opus 5
2026-08-14 20:16:56 +00:00
-
2e6c263751
the hono app is built, not assembled once

pastilhasandClaude Opus 5
2026-08-14 20:16:00 +00:00
-
b2349b5480
install the psql client, matching the server it talks to

pastilhasandClaude Opus 5
2026-08-14 20:13:08 +00:00
-
0ae0a5dc58
music is where the richer permission model gets designed

pastilhasandClaude Opus 5
2026-08-14 20:06:55 +00:00
-
acd51c969c
the platform grants read or write; richer rules belong to the plugin

pastilhasandClaude Opus 5
2026-08-14 20:04:18 +00:00
-
4c3682dae6
let a member read the two directories above their own home

pastilhasandClaude Opus 5
2026-08-14 20:00:29 +00:00
-
56bb383c6d
a plugin installs with no questions unless it says otherwise

pastilhasandClaude Opus 5
2026-08-14 19:48:15 +00:00
-
327783532e
reach a member's transcripts by listing them, not just by reading them

pastilhasandClaude Opus 5
2026-08-14 19:48:06 +00:00
-
9f903479ce
websocket routes reload too, so nothing needs a restart

pastilhasandClaude Opus 5
2026-08-14 19:46:07 +00:00
-
6ab838c77f
mounting at runtime after all: rebuild the app and swap it

pastilhasandClaude Opus 5
2026-08-14 19:45:22 +00:00
-
13437e0e48
mounting: generated then restart, reversing the call for runtime dynamic

pastilhasandClaude Opus 5
2026-08-14 19:35:55 +00:00
-
7befaf032a
the manifest holds only what the tree cannot say

pastilhasandClaude Opus 5
2026-08-14 19:31:48 +00:00
-
7ebc4d0ccd
note the totality/route-table drift for later

pastilhasandClaude Opus 5
2026-08-14 19:16:41 +00:00
-
1292a5c5ab
opencode is owner-only until it carries an identity

pastilhasandClaude Opus 5
2026-08-14 19:11:17 +00:00
-
4dc7cd90c2
a plugin declares permissions, not capabilities, and has no kind

pastilhasandClaude Opus 5
2026-08-14 19:25:54 +00:00
-
b18601530f
a manifest for offscale, and the rule it immediately broke

pastilhasandClaude Opus 5
2026-08-14 19:05:15 +00:00
-
f6b2905cc7
how the frontend ships, and what plugins may depend on

pastilhasandClaude Opus 5
2026-08-14 18:58:22 +00:00
-
7f26f0b4b8
offscale is headscale plus the companion, not a rename

pastilhasandClaude Opus 5
2026-08-14 17:44:28 +00:00
-
01a20fff4e
the invite flow replaced device enrolment; it is not a gap

pastilhasandClaude Opus 5
2026-08-14 17:43:42 +00:00
-
88a44ec4a7
delete /api/vpn

pastilhasandClaude Opus 5
2026-08-14 17:40:44 +00:00
-
bbc60b34ac
headscale leaves the baseline, and offscale gets a design doc

pastilhasandClaude Opus 5
2026-08-14 17:37:55 +00:00
-
d000cedf2f
let anyone toggle hidden files again

pastilhasandClaude Opus 5
2026-08-14 16:11:05 +00:00
-
336e718463
read a member's transcripts as the member

pastilhasandClaude Opus 5
2026-08-14 15:58:36 +00:00
-
fe0012635a
stop leaking the parent claude session into the one we spawn

pastilhasandClaude Opus 5
2026-08-14 15:36:32 +00:00
-
547662842b
a dead claude process no longer hangs the chat forever

pastilhasandClaude Opus 5
2026-08-14 15:36:09 +00:00
-
eb1fd8c31a
headscale is core, so stop offering to install it

pastilhasandClaude Opus 5
2026-08-14 13:31:00 +00:00
-
d85f089817
tsgo is clean

pastilhasandClaude Opus 5
2026-08-14 13:24:32 +00:00
-
11710f283a
wire the reverse proxy in as officer-setup 12

pastilhasandClaude Opus 5
2026-08-14 12:56:40 +00:00
-
b6feca8350
owner can reset a member's platform password

pastilhasandClaude Opus 5
2026-08-14 12:07:43 +00:00
-
1d95ad3d1b
install the rootless docker prerequisites with docker itself

pastilhasandClaude Opus 5
2026-08-14 11:58:23 +00:00
-
e881015df5
members get the same aliases as the owner

pastilhasandClaude Opus 5
2026-08-14 11:17:06 +00:00
-
3862558b92
real aliases for the owner, and eza to go with them

pastilhasandClaude Opus 5
2026-08-14 11:12:46 +00:00
-
977e30e782
point the setup default at public https

pastilhasandClaude Opus 5
2026-08-14 10:08:08 +00:00
-
edbe446b34
revert "allow port 22 through the docker-user allowlist"

pastilhasandClaude Opus 5
2026-08-14 09:58:18 +00:00
-
e36c6bb431
allow port 22 through the docker-user allowlist

pastilhasandClaude Opus 5
2026-08-14 09:51:22 +00:00
-
4d14e11f6c
--unattended: every question that has a default answers itself

pastilhasandClaude Opus 5
2026-08-14 06:46:48 +00:00
-
4c33ef7206
fix the silent death after installing zsh

pastilhasandClaude Opus 5
2026-08-14 06:23:45 +00:00
-
6c13e0d8f6
tell the operator they are still root, once

pastilhasandClaude Opus 5
2026-08-14 06:05:57 +00:00
-
cbfe376a42
accept the repo URL as an argument

pastilhasandClaude Opus 5
2026-08-14 05:54:56 +00:00
-
64f3de59fb
CLAUDE.md caught up on how setup is run

pastilhasandClaude Opus 5
2026-08-14 05:48:33 +00:00
-
081920c61f
drop fastfetch from machine-setup

pastilhasandClaude Opus 5
2026-08-14 05:46:59 +00:00
-
fb0286e1a9
put rootless docker back, behind the developer gate

pastilhasandClaude Opus 5
2026-08-13 12:49:32 +00:00
-
d6f01862fe
fix a stack overflow in the wallet copy button

pastilhasandClaude Opus 5
2026-08-13 12:33:23 +00:00
-
bf7e919593
only a Developer gets a postgres role

pastilhasandClaude Opus 5
2026-08-13 12:30:33 +00:00
-
2ac58e2007
drop the postgres role when a member is decommissioned

pastilhasandClaude Opus 5
2026-08-13 12:27:13 +00:00
-
9f15de3448
put the postgres credentials somewhere findable

pastilhasandClaude Opus 5
2026-08-13 12:24:05 +00:00
-
3ca7f5f331
close the cross-member database leak with a login event trigger

pastilhasandClaude Opus 5
2026-08-13 12:18:31 +00:00
-
2273941e71
give each member a postgres role instead of a docker daemon

pastilhasandClaude Opus 5
2026-08-13 12:14:02 +00:00
-
41cdd1e63a
stop creating the container bind-mount directory too

pastilhasandClaude Opus 5
2026-08-13 11:58:06 +00:00
-
7b32f5bc2f
don't provision rootless docker for new members

pastilhasandClaude Opus 5
2026-08-13 11:56:16 +00:00
-
cc1eab7794
docs: a triage map of the documentation

pastilhasandClaude Opus 5
2026-08-13 05:26:48 +00:00
-
8826c2847e
docs: working-on-officer catches up to the code

pastilhasandClaude Opus 5
2026-08-13 05:26:07 +00:00
-
236a3a5481
docs: first container test pass, and what it found

pastilhasandClaude Opus 5
2026-08-13 04:00:31 +00:00
-
d7d64cd6d6
docs: the install-variant tree, for tomorrow's decision

pastilhasandClaude Opus 5
2026-08-13 03:58:32 +00:00
-
cd209483e3
fix the clipboard over http, and audit the rest

pastilhasandClaude Opus 5
2026-08-13 03:56:57 +00:00
-
77f1284925
install report: first cut, generated by the helpers

pastilhasandClaude Opus 5
2026-08-13 03:33:48 +00:00
-
74b4c7908a
fix the crash over http: crypto.randomUUID is secure-context only

pastilhasandClaude Opus 5
2026-08-13 03:23:31 +00:00
-
f1cfc0042f
rename officer-agent to officer-claude-code

pastilhasandClaude Opus 5
2026-08-13 03:10:39 +00:00
-
88c9e96895
recover earlier answers on resume

pastilhasandClaude Opus 5
2026-08-13 03:08:18 +00:00
-
e5fe966308
count the schema tables instead of printing "?"

pastilhasandClaude Opus 5
2026-08-13 03:06:04 +00:00
-
60ab531294
use the short tailnet name, not the FQDN

pastilhasandClaude Opus 5
2026-08-13 03:05:04 +00:00
-
f33e7474b0
default PUBLIC_URL to the tailnet address, not localhost

pastilhasandClaude Opus 5
2026-08-13 03:03:45 +00:00
-
bedc420d4d
clone over SSH while the repository is private

pastilhasandClaude Opus 5
2026-08-13 02:56:55 +00:00
-
9b56e04b5e
point the clone at gitea.pastilhas.dev

pastilhasandClaude Opus 5
2026-08-13 02:55:42 +00:00
-
ea87ffed04
ask for privileges, do not demand them

pastilhasandClaude Opus 5
2026-08-13 02:54:10 +00:00
-
3cca07187e
scripts/install.sh — one command for both halves

pastilhasandClaude Opus 5
2026-08-13 02:49:44 +00:00
-
b5aa2e0387
keep the shell templates together in scripts/setup

pastilhasandClaude Opus 5
2026-08-13 02:47:08 +00:00
-
0da15d78a1
add an empty zshrc template for the owner

pastilhasandClaude Opus 5
2026-08-13 02:45:08 +00:00
-
e2faad40a3
rename the tmux template to tmux.conf, no leading dot

pastilhasandClaude Opus 5
2026-08-13 02:44:07 +00:00
-
61a3ae720f
install the tmux config where tmux actually reads it

pastilhasandClaude Opus 5
2026-08-13 02:43:08 +00:00
-
085afe7604
wait for Postgres instead of failing startup work once

pastilhasandClaude Opus 5
2026-08-13 02:38:36 +00:00
-
62cbf510cb
no ecosystem files in git; officer-setup generates one

pastilhasandClaude Opus 5
2026-08-13 02:35:12 +00:00
-
b075f1f882
macOS is a dev machine, and machine-setup now treats it as one

pastilhasandClaude Opus 5
2026-08-13 02:29:56 +00:00
-
7280d13b93
group the barrel by core and plugin

pastilhasandClaude Opus 5
2026-08-13 02:20:10 +00:00
-
fbb6d6c78c
the agent sidecar crashed on boot without the email plugin

pastilhasandClaude Opus 5
2026-08-13 02:16:34 +00:00
-
3cb39662b5
desktop is a plugin too

pastilhasandClaude Opus 5
2026-08-13 02:14:52 +00:00
-
ffca309a77
switch off every plugin router, pending extraction

pastilhasandClaude Opus 5
2026-08-13 02:13:16 +00:00
-
1eecc400a7
switch off Vaultwarden's routers, pending extraction into a plugin

pastilhasandClaude Opus 5
2026-08-13 02:05:54 +00:00
-
595dd082a7
delete Task Logs

pastilhasandClaude Opus 5
2026-08-13 01:56:07 +00:00
-
f9cd0a798a
drop two dead tables: queue_jobs and terminal_containers

pastilhasandClaude Opus 5
2026-08-13 01:49:20 +00:00
-
288b4bf683
each feature declares its own exports; the barrel is one line per feature

pastilhasandClaude Opus 5
2026-08-13 01:45:31 +00:00
-
68f2c55ecf
one directory per feature: schema.ts and queries.ts together

pastilhasandClaude Opus 5
2026-08-13 01:34:04 +00:00
-
4cebae1c85
schema barrel: core tables only, plugin tables commented

pastilhasandClaude Opus 5
2026-08-13 01:24:26 +00:00
-
9d6c196848
PUBLIC_URL comes back, and gen:index takes it as an argument

pastilhasandClaude Opus 5
2026-08-13 01:07:33 +00:00
-
8207824a81
build the secret store: one key per purpose, none in .env

pastilhasandClaude Opus 5
2026-08-13 01:00:12 +00:00
-
1ccb21e67f
CLAUDE.md: five capability kinds, not four

pastilhasandClaude Opus 5
2026-08-13 00:43:16 +00:00
-
9864fb1a49
switch off the browser relay, pending extraction into a plugin

pastilhasandClaude Opus 5
2026-08-13 00:32:29 +00:00
-
571d0a62ff
delete the bug-report discord webhook, and the last dead HOME_DIR reads

pastilhasandClaude Opus 5
2026-08-13 00:23:32 +00:00
-
f063fc0c08
remove origin validation

pastilhasandClaude Opus 5
2026-08-13 00:15:25 +00:00
-
c5adb4aa08
the anthropic proxy binds PORT + 1

pastilhasandClaude Opus 5
2026-08-12 23:51:03 +00:00
-
3c7f52ab77
PORT is read in one place, and it has no default

pastilhasandClaude Opus 5
2026-08-12 23:43:39 +00:00
-
e72cae4830
one default port, and it is 9000

pastilhasandClaude Opus 5
2026-08-12 23:38:15 +00:00
-
3bc06bba3c
spell the root derivation as resolve rather than dirname

pastilhasandClaude Opus 5
2026-08-12 23:23:10 +00:00
-
3f071c0b24
the install root is derived, not configured

pastilhasandClaude Opus 5
2026-08-12 23:18:48 +00:00
-
86079adb9a
mail transport is configured in the app, not in .env

pastilhasandClaude Opus 5
2026-08-12 23:01:17 +00:00