Commit Graph

73 Commits

Author SHA1 Message Date
Benjamin Shafii
add4ad52b6 chore: bump version to 0.11.54 2026-02-10 19:06:14 -08:00
Benjamin Shafii
0349e5e328 chore: bump version to 0.11.53 2026-02-10 19:01:53 -08:00
ben
122d6b178d feat: workspace + session deletion (fixes #517) (#529)
* feat: add workspace and session deletion functions

* fix(ui): clear selection after session delete

* fix(ui): navigate away after deleting selected session

* fix(ui): redirect off deleted session route

* fix(router): handle deleted session routes

* docs(pr): add issue 517 screenshots
2026-02-10 18:36:35 -08:00
ben
fa6a189ff8 feat(skills): hub-backed skill catalog + install (#528)
* feat(skills): browse and install hub skills

* fix(skills): tolerate missing hub metadata
2026-02-10 18:33:54 -08:00
ben
30ecf1efc4 feat(mcp): add OAuth logout action (#527) 2026-02-10 18:01:03 -08:00
Benjamin Shafii
bb24fe78f9 chore: bump version to 0.11.52 2026-02-10 17:21:33 -08:00
Benjamin Shafii
d7962a86ad chore: bump version to 0.11.51 2026-02-10 15:34:04 -08:00
Benjamin Shafii
a01609d0fc chore: bump version to 0.11.50 2026-02-10 15:25:55 -08:00
Benjamin Shafii
0e8acfb946 chore: bump version to 0.11.49 2026-02-10 15:17:39 -08:00
Benjamin Shafii
c6cb5f2835 chore: bump version to 0.11.48 2026-02-10 15:10:14 -08:00
Benjamin Shafii
ad4bacebb4 chore: bump version to 0.11.47 2026-02-10 15:01:13 -08:00
Benjamin Shafii
83f8e5cd70 chore: bump version to 0.11.46 2026-02-10 12:16:01 -08:00
ben
017412ca49 feat(app): markdown editor for touched files (#518)
* feat(server): add markdown file read/write endpoints

* feat(app): edit markdown files from sidebar

* fix(app): open sidebar files without workspace prefix

* chore(pr): add markdown editor verification screenshots

* feat(app): dock markdown editor on the right

* refactor(app): dock markdown editor as right sidebar

* chore(pr): add sidebar editor verification screenshots
2026-02-10 10:01:44 -08:00
Benjamin Shafii
106627d364 chore: bump version to 0.11.45 2026-02-10 09:49:48 -08:00
Benjamin Shafii
8f65b6a7e0 chore: bump version to 0.11.44 2026-02-09 23:08:41 -08:00
Benjamin Shafii
7c0b4a7fce chore: bump version to 0.11.43 2026-02-09 19:53:06 -08:00
Benjamin Shafii
39a383e81b chore: bump version to 0.11.42 2026-02-09 19:06:44 -08:00
Benjamin Shafii
c18ec7629e chore: bump version to 0.11.41 2026-02-09 16:41:28 -08:00
Benjamin Shafii
57d3681422 yo 2026-02-09 16:39:21 -08:00
Benjamin Shafii
ec615a4f35 chore: bump version to 0.11.40 2026-02-09 16:01:45 -08:00
Benjamin Shafii
3107c583e1 feat(owpenbot): auto-bind chats to workspace
Store a default directory on workspace identities and auto-create bindings on first inbound message. Remove the bindings editor from the Identities UI and keep /dir as the advanced override.
2026-02-09 15:28:53 -08:00
Benjamin Shafii
4756990857 chore: bump version to 0.11.39 2026-02-09 14:32:45 -08:00
Benjamin Shafii
c365039510 feat(app): scope messaging identities to workspace
Enforces workspace-scoped owpenbot identities/bindings via openwork-server, updates the Identities UI and Tauri status schema, and adds UX evidence screenshots.
2026-02-09 14:21:28 -08:00
Benjamin Shafii
1953977906 feat(scheduler): support scoped scheduled jobs 2026-02-09 13:48:21 -08:00
Benjamin Shafii
e6a2bb560c chore(release): bump to 0.11.38 2026-02-09 00:06:31 -08:00
Benjamin Shafii
a222c2b664 chore(release): bump to 0.11.37 and unify service versions 2026-02-09 00:00:34 -08:00
Benjamin Shafii
3a88b1e0a9 fix(openwrk): make owpenbot health wiring reliable 2026-02-08 20:48:54 -08:00
Benjamin Shafii
1660c0782d chore(server): move audit log to host data dir 2026-02-08 20:44:09 -08:00
Benjamin Shafii
47c3c49bea feat(identities): show bot info, disconnect, and isolate owpenbot 2026-02-08 20:03:45 -08:00
Benjamin Shafii
92e1486894 feat(server): watch workspace files for reload events 2026-02-08 15:53:03 -08:00
ben
589c308bba fix(server): secure opencode proxy + add skill delete (#505)
* fix(server): harden opencode proxy auth

* feat(server): add skill delete endpoint

* fix(ci): reuse resolved OPENCODE_VERSION for desktop build

* fix(desktop): skip opencode version lookup when sidecar exists

* fix(desktop): avoid TDZ when reusing opencode sidecar

* chore(desktop): update Cargo.lock
2026-02-08 15:08:08 -08:00
ben
366bc36d55 feat(agent-lab): multi-instance host + Agent Lab Toy UI (#504)
* feat(agent-lab): add instance manager CLI

* fix(server): block opencode permission replies for non-owners

* feat(toy-ui): add share + checkpoints

* feat(agent-lab): add entrypoints and scheduler sync

* feat(server): add agentlab automations and skill delete

* feat(toy-ui): add agent lab panels
2026-02-08 13:58:50 -08:00
ben
f9a2809f96 feat: proxy owpenbot via openwork-server (#499)
* feat: proxy owpenbot via openwork-server

Unify client surface by routing owpenbot through /owpenbot/* (+ /w/:id/owpenbot/*), and move QR/token flows off interactive CLI calls. Sandbox mode keeps owpenbot internal (no extra published port) while preserving health + config via the edge.

* chore(desktop): refresh Cargo.lock

Update the Tauri crate lockfile so linux CI can run with --locked.
2026-02-07 15:44:12 -08:00
ben
f3da381606 feat: minimal container sandbox + server tokens + toy UI (#494)
* feat(server): add scoped tokens, inbox/outbox, toy UI, and auth hardening

- TokenService with file-based persistence (tokens.json)
- /tokens CRUD (host auth), /whoami (client auth)
- Bearer token auth accepting OPENWORK_TOKEN or scoped tokens
- POST /workspace/:id/inbox (multipart upload)
- GET /workspace/:id/artifacts, /workspace/:id/artifacts/:id
- Toy UI at /ui with SSE, prompt send, inbox upload, outbox download
- Extended GET /capabilities with schemaVersion, serverVersion, approvals info
- Updated README with all new endpoints and auth model

* feat(headless): add sandbox runtime with Docker and Apple container backends

- --sandbox none|auto|docker|container CLI flag
- --sandbox-image, --sandbox-persist-dir, --sandbox-mount options
- Mount security: allowlist, blocked patterns, symlink resolution
- Docker backend: workspace/persist volumes, sidecar staging, entrypoint
- Apple container backend: --mount type=bind for ro mounts
- Sandbox mode proxies all OpenCode access through openwork-server
- Proxy health check (waitForHealthyViaProxy) avoids SDK auth issues
- Sandbox-specific check suite (runSandboxChecks) for --check mode
- Non-fatal verifyOpenworkServer in sandbox mode for version mismatches
- Updated README with sandbox docs and mount security

* feat(packaging): add Docker/docker-compose PaaS packaging

- Dockerfile (node:22-bookworm-slim, installs openwrk via npm)
- docker-compose.yml with workspace and data volumes
- README with usage instructions

* fix(headless): define sandbox owpenbot internal health port
2026-02-07 13:01:15 -08:00
ben
265ed971b5 fix(owpenbot): make token saves fast and resilient (#488)
* fix(owpenbot): make token saves fast and resilient

Persist Telegram/Slack tokens even when owpenbot is offline, bound adapter restarts to avoid long hangs, and refresh UI status with apply warnings.

* chore: update Cargo.lock

Keep desktop Cargo.lock in sync with the crate version so CI cargo --locked passes.
2026-02-06 21:18:45 -08:00
ben
9b87ccaba7 feat: multi-workspace hosting + workspace-scoped tasks sidebar (#485)
* feat(server): expose all workspaces and support mounted baseUrl

* feat(ui): keep tasks visible across workspaces

* feat(desktop): default engine runtime to openwrk

* feat(owpenbot): route chats by directory bindings
2026-02-06 14:49:17 -08:00
ben
05a0499f88 feat(workspace): scope OpenWork sharing via /w/:id mounts (#479)
* feat(workspace): add Share modal in workspace menu

* feat(workspace): share workspace from session view

* feat(workspace): store OpenWork token per workspace

* feat(workspace): scope OpenWork sharing via /w/:id mounts
2026-02-06 00:07:23 -08:00
Benjamin Shafii
e1df942970 feat(skills): add basic viewer/editor with server-backed reads 2026-02-05 23:55:14 -08:00
ben
39a46b5540 feat(owpenbot): add Slack Socket Mode bridge (#476) 2026-02-05 18:26:02 -08:00
ben
b999903ead Fix reload-required spam; add auto-reload + resume (#467)
* fix(app): scope and defer reload prompts

Avoid reload-required spam by ignoring .opencode/openwork.json, scoping detection to the active workspace, and deferring prompts until sessions go idle. Add per-workspace auto-reload + optional resume so agent/skill/command updates apply without tearing down the UX.

* chore(desktop): sync Cargo.lock

Keep Cargo.lock consistent with the desktop crate version so CI can run cargo test --locked on Linux.
2026-02-05 14:00:51 -08:00
Benjamin Shafii
3bbcacb256 feat(headless): improve cross-service observability 2026-02-04 12:54:08 -08:00
ben
1b272355de feat: auto-connect web sessions and sidebar workspace hub (#438) 2026-02-04 09:10:21 -08:00
Benjamin Shafii
a2b334ebe9 fix: align remote MCP auth with workspace directory 2026-02-02 23:41:13 -08:00
ben
2695ea631a Refactor onboarding for startup preferences (#400)
* refactor(app): align onboarding with startup preferences

* chore: refresh pnpm lockfile

* feat(web): proxy OpenCode through OpenWork
2026-02-02 15:48:37 -08:00
Benjamin Shafii
3aa9f41b49 fix: try owpenbot health on request host 2026-02-01 16:27:21 -08:00
Benjamin Shafii
103bcd3ef5 fix: pass owpenbot health port through openwork server 2026-02-01 16:24:26 -08:00
Benjamin Shafii
617297fb9f chore: bump patch versions for release 2026-02-01 16:18:18 -08:00
Benjamin Shafii
95246d5270 feat: surface sidecar diagnostics for troubleshooting and releases 2026-02-01 16:18:18 -08:00
Benjamin Shafii
20d2497c36 Merge branch 'fix/owpenbot-telegram-remote' into dev 2026-02-01 16:08:46 -08:00
Benjamin Shafii
23bbd80bf8 chore: add owpenbot debug logging 2026-02-01 16:06:52 -08:00