Commit Graph
61 Commits
Author SHA1 Message Date
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 59bcfd92ee feat(hosts): add selectable macOS and Windows icons 2026-10-16 02:03:09 +08:00
Kaede Akino 8e3f1128da feat(sessions): add tmux persistence and terminal context tracking
Add extensible remote session backends, safe ownership and restore handling, and pane-scoped shell integration over the existing SSH connection.

Keep iOS workspaces in memory and rebuild expired Activity targets on demand. Integrate session selection into Connection Journey with consistent controls, cancellation behavior, and localized counts.
2026-10-16 01:04:12 +08:00
Kaede Akino ca7c10b689 feat(shortcuts): align window and assistant commands across platforms 2026-10-06 11:04:36 +08:00
Kaede Akino 6dc5c82123 feat(terminal): remove keyword highlighting 2026-10-05 09:15:04 +08:00
Kaede Akino 5824fbad35 fix(state): remove redundant bindings and presentation state 2026-10-04 22:25:42 +08:00
Kaede Akino 1ab7ed3da3 feat: isolate tailscale connections and harden history
Bind independent Tailnet connections to group IDs while preserving legacy host identities through the V3 sync format. Persist profile cleanup retries, isolate test storage, and reject stale dialers after re-enrollment.

Recover quarantined sync records safely, refresh metrics compatibility, fix multiline shell history, and remove obsolete mobile history gates. Pin libtailscale-spm to 1.0.1 alongside its submodule revision.

Validation: default macOS suites (2679 tests), targeted iOS suites (26 tests), strict Swift formatting, shared AppStrings checks, and Chinese localization checks passed. Both subagent reviews approved.
2026-10-03 09:46:09 +08:00
Kaede Akino aa5a92c352 feat: remove persistence connection and SFTP history 2026-10-03 04:18:14 +08:00
Kaede Akino 6eafa29369 feat: add Pro Tailscale SSH and SFTP integration 2026-10-03 03:12:12 +08:00
Kaede Akino a40b8a5b74 feat: include terminal viewport in command generation 2026-10-02 20:15:56 +08:00
Kaede Akino 3708a7c54f refactor: remove obsolete code and redundant tests
Remove legacy Commerce types, unused helpers, duplicate SFTP progress code, and 28 unreferenced strings. Drop fixture-only tests and arbitrary screenshot size assertions while retaining behavioral coverage.

Validation: 2,592 macOS tests, 40 focused macOS tests, and 53 iOS tests passed. Swift formatting, AppStrings, and Chinese localization checks passed.
2026-10-02 17:50:47 +08:00
Kaede Akino 82d871c4fe refactor: separate feature policies and UI workflows
Move connection policy out of ProAccess, keep terminal uploads with their
session, and share question interaction and highlight editing operations.
Consolidate CPU usage and settings snapshot handling, and remove obsolete
terminal selection, theme helpers, and hard-coded latest-schema assertions.

Fix draining connection-pool recovery and stale pane upload bindings. Keep
screenshot matrices opt-in and retain behavioral migration coverage.

Validation: 2468 macOS tests passed serially, 31 iOS tests passed, and both
SSH forwarding regressions passed against the local OpenSSH fixture.
Both app builds, Swift formatting, AppStrings, and Chinese localization
checks passed. Parallel test runs still exhibit intermittent timeouts.
2026-10-02 16:40:27 +08:00
Kaede Akino 7c8592d037 feat(terminal): add synced keyword highlighting 2026-10-02 14:01:23 +08:00
Kaede Akino d4323176ed feat(terminal): make uploads free and add native upload menus 2026-10-02 08:27:20 +08:00
Kaede Akino bd66ab398c feat(ios): adopt the native terminal keyboard accessory 2026-10-02 08:10:44 +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 ac645aa7b7 feat(ssh): forward vault keys to remote sessions 2026-09-28 20:04:07 +08:00
Kaede Akino b58c8beb5e fix(ssh): restore saved passphrases and authentication saving 2026-09-28 18:37:21 +08:00
Kaede Akino e2452df929 feat: add terminal notificaitons 2026-09-27 13:33:41 +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 2abed0eca6 Rename TermindCopy to AppStrings 2026-09-23 22:54:10 +08:00
Kaede Akino 41f1a97cf9 Bypass charset encode errors 2026-09-23 20:18:40 +08:00
Kaede Akino 76c4e9872f Merge copywright 2026-09-23 20:07:12 +08:00
Kaede Akino a06103dc03 Unify mobile workspace navigation 2026-09-22 19:48:54 +08:00
Kaede Akino fce93864c6 refactor: match SSH authorized host key 2026-09-22 07:20:10 +08:00
Kaede Akino f0aeb33a8a Add URL Scheme 2026-09-21 23:54:01 +08:00
Kaede Akino 759c1d8f7b Add Telnet 2026-09-21 21:09:11 +08:00
Kaede Akino fa734f1e1c Add charset 2026-09-21 18:30:39 +08:00
Kaede Akino 2918b32af3 Add Host PTY environment variables 2026-09-21 16:48:54 +08:00
Kaede Akino 8a9793eadb Add Host startup snippets 2026-09-21 16:48:50 +08:00
Kaede Akino 4ae95df1f7 Add proxy identity choose UI 2026-09-21 09:13:28 +08:00
Kaede Akino 57b95d7ca1 Support drop file from sftp to ssh 2026-09-21 02:35:41 +08:00
Kaede Akino 3db8cdbf85 Harden one-shot SSH secret handling 2026-09-20 20:33:18 +08:00
Kaede Akino cb106ba15d Clear SSH secrets after each connection attempt 2026-09-20 20:33:17 +08:00
Kaede Akino 5f519eaa6c Keep additional SSH credentials reference-only 2026-09-20 20:31:50 +08:00
Kaede Akino f09c57e332 Clarify SSH connection and channel APIs 2026-09-20 16:54:31 +08:00
Kaede Akino 8794bd6387 Fall back terminal uploads to SSH session 2026-09-19 23:13:22 +08:00
Kaede Akino 2bf9c1de98 Adopt UI for iPhone Duo 2026-09-19 09:13:53 +08:00
Kaede Akino 71ad96dbf5 Add per-host shell integration preferences 2026-09-19 01:40:20 +08:00
Kaede Akino b0d925c55b Refine drag in terminal's error dialog 2026-09-19 01:07:50 +08:00
Kaede Akino 2f2c800843 Improve SSH Interaction Policy 2026-09-18 22:24:59 +08:00
Kaede Akino ec0f685cfe Add SSH keyboard-interactive authentication across connection flows 2026-09-18 14:22:11 +08:00
Kaede Akino 99d14e683a Add SFTP Open With and edited-copy import 2026-09-17 14:15:03 +08:00
Kaede Akino ed4d3616fd SFTP Support Edit 2026-09-17 13:50:06 +08:00
Kaede Akino 0793acea67 Support SDK 27.0 2026-09-14 19:31:55 +08:00
Kaede Akino c56060a7d5 Support multiline shell command history 2026-09-14 17:33:56 +08:00
Kaede Akino 445e54b6d9 Fix Snippet host execution 2026-09-13 17:44:59 +08:00
Kaede Akino 8dcc934506 Fix mobile state and connection races 2026-09-13 12:18:56 +08:00
Kaede Akino 83b54be813 Remove useless code 2026-09-12 23:57:33 +08:00