Commit Graph

155 Commits

Author SHA1 Message Date
Benjamin Shafii
dfd331da78 chore: bump version to 0.11.123 2026-02-25 20:44:50 -08:00
Benjamin Shafii
dfa41808cf chore: bump version to 0.11.122 2026-02-25 17:03:18 -08:00
Benjamin Shafii
b5f7814f51 chore: bump version to 0.11.121 2026-02-22 22:15:35 -08:00
Benjamin Shafii
6cf077b33a chore: bump version to 0.11.120 2026-02-22 21:48:42 -08:00
Benjamin Shafii
67844b3869 chore: bump version to 0.11.119 2026-02-22 20:41:51 -08:00
Benjamin Shafii
108d4efe88 chore: bump version to 0.11.118 2026-02-22 18:18:50 -08:00
Benjamin Shafii
adeafe5a61 chore: bump version to 0.11.117 2026-02-22 16:38:29 -08:00
Benjamin Shafii
a7b88238ed chore: bump version to 0.11.116 2026-02-22 09:55:56 -08:00
Benjamin Shafii
74048ebb99 chore: bump version to 0.11.115 2026-02-21 23:14:30 -08:00
ben
78138e6d79 feat(messaging): add Telegram private bot pairing gate (#643)
Prevent unsolicited Telegram chats from auto-linking to a workspace by requiring /pair <code> for private identities and exposing pairing setup in OpenWork UI.
2026-02-21 23:11:38 -08:00
Benjamin Shafii
28596bf7c6 chore: bump version to 0.11.114 2026-02-21 21:30:41 -08:00
Benjamin Shafii
83af293aa9 chore: bump version to 0.11.113 2026-02-20 17:28:17 -08:00
Benjamin Shafii
a0ceeae06c chore: bump version to 0.11.112 2026-02-20 16:38:20 -08:00
Benjamin Shafii
12847be3c9 chore: bump version to 0.11.111 2026-02-20 15:04:37 -08:00
Benjamin Shafii
8f869772e8 chore: bump version to 0.11.110 2026-02-20 14:35:03 -08:00
Benjamin Shafii
a896defd0e chore: bump version to 0.11.109 2026-02-20 12:50:48 -08:00
Nguyễn Ngô Thượng
83c35a4929 fix: support domain-grouped skills and global MCP config (#623)
* fix: support domain-grouped skills and global MCP config

Fixes #621 – Skills in domain subfolders (skills/<domain>/<name>/SKILL.md)
were silently skipped because gather_skills() (Rust) and listSkillsInDir()
(TypeScript) only scanned one level deep.  Both functions now treat a
top-level directory that has no SKILL.md as a domain/category folder and
scan its immediate children, keeping full backwards-compatibility with the
flat layout.

Fixes #622 – MCP servers defined in the global opencode config
(~/.config/opencode/opencode.json) were completely ignored by listMcp().
The function now reads global config as well, merging it with the
workspace-level config.  Project entries take priority over global ones;
each item carries the correct source field (config.global vs config.project).

* fix: support nested skill paths for local skill actions

---------

Co-authored-by: Benjamin Shafii <benjamin.shafii@gmail.com>
2026-02-20 10:24:36 -08:00
Benjamin Shafii
3ae49df6ec chore: bump version to 0.11.108 2026-02-20 10:14:27 -08:00
Benjamin Shafii
76a307fcea chore: bump version to 0.11.107 2026-02-19 21:40:13 -08:00
Benjamin Shafii
4e9260b932 chore: bump version to 0.11.106 2026-02-19 21:18:55 -08:00
Benjamin Shafii
45f5f07d87 chore: bump version to 0.11.105 2026-02-19 21:11:56 -08:00
Benjamin Shafii
091f13d258 chore: bump version to 0.11.104 2026-02-19 20:45:08 -08:00
Benjamin Shafii
a1b7a5e1c7 chore: bump version to 0.11.103 2026-02-19 16:40:55 -08:00
Benjamin Shafii
f728cc3b33 chore: bump version to 0.11.102 2026-02-19 15:59:54 -08:00
Benjamin Shafii
87fda84576 chore: bump version to 0.11.101 2026-02-19 13:26:35 -08:00
Benjamin Shafii
a46010593f chore: bump version to 0.11.100 2026-02-19 09:48:49 -08:00
Benjamin Shafii
7ce5fa3a32 chore: bump version to 0.11.99 2026-02-18 22:37:06 -08:00
Benjamin Shafii
94940590a7 chore: bump version to 0.11.98 2026-02-18 22:21:12 -08:00
Benjamin Shafii
1a4e380b80 chore: bump version to 0.11.97 2026-02-18 21:59:29 -08:00
Benjamin Shafii
5b99486b26 chore: bump version to 0.11.96 2026-02-18 21:22:38 -08:00
Benjamin Shafii
83452708eb chore: bump version to 0.11.95 2026-02-18 20:51:59 -08:00
Benjamin Shafii
5cc746bfca chore: bump version to 0.11.94 2026-02-18 18:14:01 -08:00
Benjamin Shafii
ac3044f284 chore: bump version to 0.11.93 2026-02-18 18:11:11 -08:00
Benjamin Shafii
3ef5848d50 chore: bump version to 0.11.92 2026-02-18 17:19:58 -08:00
Benjamin Shafii
29c0df3319 chore: bump version to 0.11.91 2026-02-18 15:40:55 -08:00
Benjamin Shafii
1c6d9a1aec chore: bump version to 0.11.90 2026-02-18 15:36:07 -08:00
Benjamin Shafii
e136dd3dda chore: bump version to 0.11.89 2026-02-18 14:07:31 -08:00
Benjamin Shafii
28d139ae4e chore: bump version to 0.11.88 2026-02-17 18:10:46 -08:00
ben
1084ff045e feat: add soul heartbeat dashboard and status APIs (#601)
Expose soul status/heartbeat endpoints and wire a dedicated Soul tab so operators can enable soul mode, review heartbeat follow-ups, and steer next prompts directly from OpenWork.
2026-02-17 18:09:37 -08:00
Benjamin Shafii
4fde919979 chore: bump version to 0.11.87 2026-02-17 14:36:47 -08:00
Benjamin Shafii
85b65fccb0 chore: bump version to 0.11.86 2026-02-17 14:04:18 -08:00
Benjamin Shafii
d90cefd10d chore: bump version to 0.11.85 2026-02-17 12:17:00 -08:00
Jason Kneen
997a8ed3e9 refactor: codebase quality improvements — types, tests, error handling (#592)
* fix(desktop): suppress unused variable warnings in manager modules

Prefix unused `child` bindings with underscore in engine and openwork_server
managers to silence Rust compiler warnings.

* refactor(app): remove `as any` casts with typed SDK helpers

Create lib/opencode-session.ts that wraps OpenCode SDK session operations
(abort, revert, unrevert, shell, command listing) with proper types.

Replace all `(c.session as any).abort/revert/unrevert` and
`(c.command as any).list` calls in app.tsx with the typed helpers.

The SDK v2 already exposes these methods with full type definitions —
the casts were unnecessary and bypassed type safety on critical API paths.

* refactor(app): extract OpenWork server connection store

Create context/openwork-server.ts that encapsulates all OpenWork server
connection state: 15 signals, 6 polling effects, derived memos for
baseUrl/auth/client, and the health check helper.

This is a standalone module ready to replace the corresponding state in
app.tsx. It follows the same factory pattern as createSessionStore and
createExtensionsStore.

* feat(app): add safe execution utilities for error handling

Create lib/safe-run.ts with safeAsync, safeSync, and fireAndForget
helpers that replace bare `catch {}` blocks. Errors are logged in
development mode and silently swallowed in production.

This provides a migration path for the ~50 silent catch blocks.

* test(server): add unit tests for validators, utils, and token service

Add 41 new tests across 3 test files:

- validators.test.ts: sanitizeCommandName, validateCommandName,
  validateMcpName, validateSkillName, validateMcpConfig (22 tests)
- utils.test.ts: hashToken, shortId, parseList, ensureDir/exists (10 tests)
- tokens.test.ts: TokenService CRUD, scope resolution, revocation (9 tests)

Total server test count: 48 (from 7 previously).

---------

Co-authored-by: Benjamin Shafii <benjamin.shafii@gmail.com>
2026-02-17 10:53:11 -08:00
Benjamin Shafii
540d4f91ed chore: bump version to 0.11.84 2026-02-16 21:16:09 -08:00
Benjamin Shafii
b844e910a6 chore: bump version to 0.11.83 2026-02-16 19:52:51 -08:00
Benjamin Shafii
f823666779 chore: bump version to 0.11.82 2026-02-16 13:26:21 -08:00
Benjamin Shafii
3937743d30 chore: bump version to 0.11.81 2026-02-16 13:23:23 -08:00
Benjamin Shafii
1a1da0e574 chore: bump version to 0.11.80 2026-02-15 21:37:54 -08:00
Benjamin Shafii
7ba36b90a7 chore: bump version to 0.11.79 2026-02-15 21:10:36 -08:00
Benjamin Shafii
178af20bed chore: bump version to 0.11.78 2026-02-15 18:38:22 -08:00