LukeGus
b6bb3ffc73
feat: show plugin features from the manifest on the plugin page
2026-10-06 22:38:13 -05:00
LukeGus
60024bdd4e
fix: open settings goes to the plugin's page and hides when it has none
2026-10-06 22:26:35 -05:00
LukeGus
d1ddcd3ff9
feat: add report a bug link to the your account settings section
2026-10-06 22:23:30 -05:00
LukeGus
ac19183f40
feat: per-repo issue forms and prefilled bug reports instead of the support repo
2026-10-06 22:18:01 -05:00
LukeGus
522753fab5
chore: rewrite readme and taglines for plugin-based termix
2026-10-06 21:03:37 -05:00
LukeGus
7804d4cc8d
feat: show only the latest plugin release notes and cap long ones
2026-10-06 19:25:36 -05:00
LukeGus
9bc2be721b
feat: changelog.md release notes, v tags, plugin release notes and videos
2026-10-06 18:13:39 -05:00
LukeGus
b9dd3488a5
feat: full screen onboarding with a plugin picker and per step versions
2026-10-06 17:44:25 -05:00
LukeGus
fb904554e8
fix: stop the dev runner rebuilding plugins when windows reports file reads as changes
2026-10-06 17:44:17 -05:00
LukeGus
2d71e886ac
fix: settle quick connect panel loads in tests so they stop flaking
2026-10-06 16:05:13 -05:00
LukeGus
ec80a8ef8d
feat: dev:all runner for web, electron and docker with plugin hot reload, termix-plugin dev
2026-10-06 15:55:00 -05:00
LukeGus
49fc241e06
fix: unify connection failure screens and rebuild stale local plugins
2026-10-06 15:21:44 -05:00
LukeGus
a72aa5b57b
feat: row detail options for hosts and credentials, open manage from sidebar header
2026-10-06 14:41:57 -05:00
LukeGus
08db1fcdde
feat: consent check, developer mode file installs, install counts and issue links for plugins
2026-10-06 14:30:56 -05:00
LukeGus
26a474bb3d
fix: open plain settings from the profile button, navigation only from the rail menu
2026-10-06 14:30:49 -05:00
LukeGus
dbf6c0117f
chore: split dashboard quick actions into quarters and drop host status row lines
2026-10-06 14:30:45 -05:00
LukeGus
58c3434e58
feat: shared list kit, settings search, rail order and ui consistency fixes
2026-10-06 13:02:05 -05:00
LukeGus
3ed5775ed5
feat: implement plugin management UI
2026-10-06 10:35:56 -05:00
LukeGus
853615af09
fix: stop full database rewrites on every plugin db call
2026-10-05 20:10:09 -05:00
LukeGus
5e54d95e71
fix: harden plugin sockets, public routes, prebuilt binaries and login fallback
2026-10-05 19:50:19 -05:00
LukeGus
e608505b39
chore: rename the plugin sdk to @termix-ssh/plugin-sdk
2026-10-05 18:23:03 -05:00
LukeGus
0c4f673318
chore: pin the plugin signing key and use TERMIX_PAT in workflows
2026-10-05 17:35:39 -05:00
LukeGus
35c954b79a
feat: port the demo redesign with Manage and Settings tabs
2026-10-05 16:23:21 -05:00
LukeGus
61f46d2517
feat: drop the 2.8 columns, moves and aliases kept for a downgrade
2026-10-05 10:21:11 -05:00
LukeGus
e02b5fe6e4
chore: move plugins to their own repos and drop the plugins folder
2026-10-04 22:40:06 -05:00
LukeGus
29a946d02e
chore: rework plugin readmes, json changelogs and standalone repo setup
2026-10-04 21:25:16 -05:00
LukeGus
6b91c3a460
Merge branch 'dev-2.9.1' into dev-26.10.0
...
# Conflicts:
# package-lock.json
# package.json
# plugins/ai/locales/translated/af_ZA.json
# plugins/ai/locales/translated/ar_SA.json
# plugins/ai/locales/translated/bg_BG.json
# plugins/ai/locales/translated/bn_BD.json
# plugins/ai/locales/translated/ca_ES.json
# plugins/ai/locales/translated/cs_CZ.json
# plugins/ai/locales/translated/da_DK.json
# plugins/ai/locales/translated/de_DE.json
# plugins/ai/locales/translated/el_GR.json
# plugins/ai/locales/translated/es_ES.json
# plugins/ai/locales/translated/fi_FI.json
# plugins/ai/locales/translated/fr_FR.json
# plugins/ai/locales/translated/he_IL.json
# plugins/ai/locales/translated/hi_IN.json
# plugins/ai/locales/translated/hu_HU.json
# plugins/ai/locales/translated/id_ID.json
# plugins/ai/locales/translated/it_IT.json
# plugins/ai/locales/translated/ja_JP.json
# plugins/ai/locales/translated/ko_KR.json
# plugins/ai/locales/translated/nl_NL.json
# plugins/ai/locales/translated/no_NO.json
# plugins/ai/locales/translated/pl_PL.json
# plugins/ai/locales/translated/pt_BR.json
# plugins/ai/locales/translated/pt_PT.json
# plugins/ai/locales/translated/ro_RO.json
# plugins/ai/locales/translated/ru_RU.json
# plugins/ai/locales/translated/sr_SP.json
# plugins/ai/locales/translated/sv_SE.json
# plugins/ai/locales/translated/th_TH.json
# plugins/ai/locales/translated/tr_TR.json
# plugins/ai/locales/translated/uk_UA.json
# plugins/ai/locales/translated/vi_VN.json
# plugins/ai/locales/translated/zh_TW.json
2026-10-04 17:34:09 -05:00
LukeGus
e083f09658
chore: sync Crowdin translations for 2.9.1
2026-10-04 20:11:19 +00:00
LukeGus
dd66aa57e4
Merge remote-tracking branch 'origin/main' into dev-2.9.1
2026-10-04 20:10:22 +00:00
LukeGus
0a436ab3d8
fix: simplify host status to online/offline and keep it live without a refresh
2026-10-04 14:18:50 -05:00
LukeGus
2646b649d7
fix: remote desktop logins missing from shared hosts on desktop
2026-10-04 13:55:55 -05:00
LukeGus
08e1eea2f3
fix: tunnels and host settings missing from shared hosts on desktop
2026-10-04 13:54:09 -05:00
ZacharyZcR
abbfca2e94
fix(audit): store plugin entries with no acting user as a null user_id ( #1556 )
...
Plugin audit entries written outside a request used the literal "system"
as user_id. That column references users.id, so the insert was refused
(Postgres logs it as an FK violation) and the entry was silently dropped.
Write null instead and keep "system" / plugin:<id> in username.
2026-10-04 18:40:13 +08:00
LukeGus
e489d804f9
Merge branch 'dev-2.9.1' into dev-26.10.0
2026-10-03 16:36:59 -05:00
LukeGus
99d9db04d4
fix: clearer host login failed status label and fix its translations ( #1396 )
2026-10-03 16:36:37 -05:00
LukeGus
b3e220acf1
fix: host key silently accepted when the host is missing from the database ( #1397 )
2026-10-03 16:35:09 -05:00
LukeGus
44be18988b
fix: restore space to add host tags and redesign predefined tags editor
2026-10-03 16:22:13 -05:00
ZacharyZcR
bf817d8bd1
feat(ai): add remote coding agent sessions for SSH hosts ( #1545 )
...
* feat(ai): add host coding agent sessions with configured providers
* Wait for agent initialization and shutdown before resuming sessions
* Keep Pi transcripts outside its configuration migration directory
* Cover Pi session directory separation
* Update core permission catalog expectations for remote agents
* Install remote agent runtimes from verified official sources
* Wait for the identity panel credentials request in its test
* Add scoped SSH forwarding setup for remote agents
* Verify forwarding setup through a fresh SSH connection
* Bound the SSH forwarding verification timeout
* Return the forwarding verification callback result
* fix(ai): support agent send and interrupt keyboard shortcuts
* feat(ai): add agent queues attachments worktrees and session recovery
* fix(ai): handle deleted workspace paths and duplicate status events
* fix(ai): accept file references in root workspaces
* fix(ai): refresh paused queues after agent errors
* fix(ai): store agent sessions in plugin tables and lock down OpenCode
Agent sessions lived in a single ctx.kv value holding up to 2000 events,
which passed the 256 KB kv limit within minutes of a normal run. Every
save after that failed, so history, nativeId, queue and archive changes
were lost and every event wrote a kv audit row.
Sessions, events and queued prompts now have their own tables. A running
agent appends events in batches at most once a second with a lazy save;
session and queue changes save immediately. Prompts, drafts and stored
event text are capped in UTF-8 bytes to fit MySQL TEXT. kv:own is no
longer requested.
The OpenCode server now requires a per-session password, so other local
accounts on the host cannot drive the agent through its loopback port.
* test(upgrade): include agent session tables in the reviewed upgrade SQL
2026-10-03 16:01:47 -05:00
LukeGus
77bcbdb3d6
chore: merge dev-2.9.1 into dev-26.10.0
2026-10-03 16:01:42 -05:00
LukeGus
f52f07f975
chore: drop em dash from host row comment
2026-10-03 15:59:50 -05:00
LukeGus
7156ac1af3
fix: add openapi docs and error handling to host tag routes
2026-10-03 15:45:41 -05:00
LukeGus
b03000e396
fix: op:// secret references rejected as ssh keys on credentials ( #1394 )
2026-10-03 15:41:44 -05:00
LukeGus
86840f7642
fix: user data export freezing the server ( #1393 )
2026-10-03 15:38:31 -05:00
LukeGus
79bd10a1b0
fix: high cpu from status probes and full database saves on every sample ( #1300 )
2026-10-03 15:37:11 -05:00
LukeGus
11a22d30eb
fix: host imports running a defaults pass and metrics restart per host ( #1384 )
2026-10-03 15:37:07 -05:00
LukeGus
6f442c5863
fix: plugins losing the saved ssh login when copying a host ( #1391 )
2026-10-03 15:31:01 -05:00
LukeGus
d433718c35
fix: 2.8 oidc accounts unable to sign in after upgrading ( #1381 )
2026-10-03 15:27:15 -05:00
ZacharyZcR
0214a81e5d
fix(i18n): complete Simplified Chinese core and plugin translations ( #1542 )
...
* fix(i18n): complete Chinese onboarding and navigation labels
* fix(i18n): translate remaining Chinese core and plugin interfaces
* fix(i18n): translate host editor tab overflow controls
* fix(i18n): use consistent Chinese fleet terminology
* fix(i18n): localize hardcoded controls and plugin views
* fix(i18n): translate built-in homepage widget catalog
* test(homepage): follow translated timezone placeholder
* fix(i18n): translate plugin-provided homepage widgets
* fix(i18n): localize feature settings section titles
2026-10-03 21:37:00 +08:00
ZacharyZcR
13f5736d8f
test(database): advance fake timers past the save yield ( #1555 )
2026-10-03 21:28:28 +08:00
ZacharyZcR
b00551c394
feat(hosts): add instance-wide predefined tag suggestions ( #1548 )
...
* feat(hosts): add shared predefined tag suggestions
* style(hosts): format tag catalog routes
2026-10-03 21:04:50 +08:00