73 Commits
Author SHA1 Message Date
Kaede Akino 3601bd0963 chore: add GPL-3.0-only license and source headers 2026-10-20 12:05:32 +08:00
Kaede Akino b2b3927db0 fix: mcp 2026-10-19 02:17:05 +08:00
Kaede AkinoandClaude Code 8b6325db7b refactor(connections): centralize default terminal resolution
Share default transport ordering and connection-kind resolution across desktop and mobile opening paths. Keep explicit transport choices intact and skip unavailable default terminals before admission.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-10-18 13:20:49 +08:00
Kaede Akino 286045ab24 refactor: ui perf 2026-10-18 12:44:38 +08:00
Kaede Akino e457e9af98 fix(multiplexer): preserve session ownership and safe shell startup
Detach managed sessions when native mobile windows are discarded, retain
live reopen references, and fence ordinary startup commands by input and
session generation. Handle noexec helpers, isolate tmux discovery locale,
and count only verified live contexts against the journal limit.

Move actual shell execution coverage into the hostless framework suite.
Validation: 76 focused macOS tests passed; iOS multiplexer regressions
passed with the inherited hosted-test artwork failure still present.
2026-10-17 09:50:37 +08:00
Kaede Akino d2cce7d2ce feat: make core features free and add host-based Pro limits
Make AI, MCP, Metrics, and Wake-on-LAN free while retaining iCloud sync as a Pro feature. Limit free accounts to three saved hosts and preserve excess hosts with remote-operation locks.

Gate host creation, import, and runtime access; preserve stable host admission across persistence and sync. Add upgrade states on macOS and iOS, open the paywall from locked Wake actions, and use wrench icons for MCP.

Include regression coverage, opt-in UI review fixtures, localized copy, and the updated pricing website revision.
2026-10-17 06:13:38 +08:00
Kaede Akino 632d913bb3 feat(terminal): add device-local experience preferences
Add local Bell and screen-awake controls with per-session bell observation and scene-aware effects. Provide foreground Connection Journey success haptics independent of terminal preferences.

Replace the notification sound with an original bell resource, make AudioToolbox completion queue-safe, and group mobile theme settings.
2026-10-17 02:20:38 +08:00
Kaede Akino 9738605dd3 feat(terminal): add Mosh and Eternal Terminal transports
Add SSH-authenticated transports with independent settings, protocol-aware menus and snippets, and tmux session persistence.

Restore eligible iOS workspaces from encrypted transport checkpoints without adding a macOS recovery entry. Include schema migrations and regression coverage.
2026-10-16 08:36:56 +08:00
Kaede Akino e8ec2df237 fix(keychain): refine key actions and encrypted-key passphrase controls 2026-10-03 14:36:40 +08:00
Kaede Akino 1e8e088715 fix(keychain): disable passphrase saving when input is empty 2026-10-03 13:52:22 +08:00
Kaede Akino 37b0de899f feat(keychain): add single-host export and deferred public keys 2026-10-03 13:48:19 +08:00
Kaede Akino aa5a92c352 feat: remove persistence connection and SFTP history 2026-10-03 04:18:14 +08:00
Kaede Akino 565ef17d87 refactor(ssh): share key workflows and wire encoding 2026-09-29 00:05:32 +08:00
Kaede Akino 816a6ff121 feat(ssh): support hardware security key authentication
Add native security key registration, reference import, and signing on macOS and iOS. Store references in Vault metadata and route authentication through connection, Assistant, MCP, and agent forwarding flows.

Preserve signing cancellation and actionable authentication errors for security keys and Secure Enclave. Pin the released libssh2 forks as nested submodules and refresh package resolution.
2026-09-28 23:37:49 +08:00
Kaede Akino b58c8beb5e fix(ssh): restore saved passphrases and authentication saving 2026-09-28 18:37:21 +08:00
Kaede Akino 0a9d5100e6 feat(keychain): add mobile public key export and unify menus 2026-09-28 18:03:36 +08:00
Kaede Akino 4d6e4481c0 feat(mcp): add OAuth and 2025-03-26 compatibility
Integrate AgentKit 0.18.1 with native authorization on macOS and iOS, device-local OAuth credentials, V43 configuration persistence, and Assistant authorization prompts.

Add HTTPS callback metadata, keep native callbacks safe across actor boundaries, and distinguish authorization setup failures from cancellation. Extend the external MCP server to negotiate 2025-03-26.
2026-09-28 12:36:32 +08:00
Kaede Akino c1ae0dc0a2 feat(assistant): add cross-chat agent collaboration
Add host-owned chat creation, model discovery, messaging, reading, and waiting with durable delivery receipts. Keep tool presentation compact, mark agent-authored messages, and prevent edits that would remove tool activity.

Adopt the signed AgentKit 0.16.0 release in the package requirement, resolved revision, and submodule.
2026-09-27 19:08:29 +08:00
Kaede Akino 6d8bd1dd6b feat(notifications): unify assistant terminal and transfer alerts 2026-09-27 15:30:58 +08:00
Kaede Akino b6ff9fd7d1 feat(assistant): add terminal pane reading tools 2026-09-27 13:00:15 +08:00
Kaede Akino 80f08b089f refactor: share transfer presentation and polish workspace actions
Centralize transfer state and presentation rules, extract the macOS transfer center, and preserve remote home metadata for compact iOS transfer paths.

Correct the shared Close Others action and extend transfer regression coverage.
2026-09-26 12:05:26 +08:00
Kaede Akino e6e5748c01 feat(metrics): manage hosts from selection form 2026-09-25 20:49:42 +08:00
Kaede Akino 78070dcdcd refactor(history): share local recents projection 2026-09-25 19:52:30 +08:00
Kaede Akino a728b48df2 feat(ios): add batch startup to workspaces 2026-09-25 19:50:37 +08:00
Kaede Akino f3b124aee0 feat(ios): edit api key directly 2026-09-25 19:29:28 +08:00
Kaede Akino 07454bc068 feat(metrics): unify multi-host selection forms 2026-09-25 19:16:31 +08:00
Kaede Akino 867ab9b00b feat(assistant): persist fixed chat model selection 2026-09-25 19:14:57 +08:00
Kaede Akino 2abed0eca6 Rename TermindCopy to AppStrings 2026-09-23 22:54:10 +08:00
Kaede Akino 76c4e9872f Merge copywright 2026-09-23 20:07:12 +08:00
Kaede Akino ad7ecb5ec6 Fence mobile Assistant work during suspension 2026-09-23 17:21:09 +08:00
Kaede Akino 76949f8c81 Fix mobile background expiration ownership 2026-09-23 15:35:50 +08:00
Kaede Akino 2b1c5668b6 Freeze Assistant turns before preparation 2026-09-23 10:40:15 +08:00
Kaede Akino f79c4905d0 Clarify agent tool availability contracts 2026-09-23 09:33:15 +08:00
Kaede Akino 7c47e0478d Refine Menu 2026-09-23 00:03:04 +08:00
Kaede Akino 738b14920c Refine mobile workspace protocol actions 2026-09-22 21:38:55 +08:00
Kaede Akino 46606b386a Unify workspace automatic naming 2026-09-22 20:27:51 +08:00
Kaede Akino adfb8697e1 Sync connection history across devices 2026-09-22 18:08:06 +08:00
Kaede Akino 0f6c365dd5 Add Telnet to Recents 2026-09-22 00:59:47 +08:00
Kaede Akino 759c1d8f7b Add Telnet 2026-09-21 21:09:11 +08:00
Kaede Akino b40c71eec6 Refine store 2026-09-21 16:48:49 +08:00
Kaede Akino 45922ea5e5 Disallow edit missing key or identity 2026-09-21 08:38:30 +08:00
Kaede Akino 56b79a6662 Disallow move key from iCloud to Device 2026-09-21 02:14:07 +08:00
Kaede Akino f09c57e332 Clarify SSH connection and channel APIs 2026-09-20 16:54:31 +08:00
Kaede Akino 0590f91d09 Add logging 2026-09-19 17:23:49 +08:00
Kaede Akino f1796d879a Remove useless code 2026-09-19 12:30:16 +08:00
Kaede Akino 12ee196c2d Fix tets 2026-09-19 01:13:12 +08:00
Kaede Akino eaa95b98b1 Unified generate name strategies 2026-09-18 23:57:26 +08:00
Kaede Akino 61cde4cd40 Refactor Port Forwarding 2026-09-18 23:37:57 +08:00
Kaede Akino 32aed0a610 Keyboard-interactive for Metrics 2026-09-18 22:41:41 +08:00
Kaede Akino ec0f685cfe Add SSH keyboard-interactive authentication across connection flows 2026-09-18 14:22:11 +08:00