Commit Graph
295 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 6dd59b0974 fix(terminal): use native SFTP context menu icons 2026-10-16 01:25:51 +08:00
Kaede Akino 45bb569e25 fix(sessions): preserve remote sessions when closing windows
Keep explicit workspace and pane closure destructive for owned sessions, but let window dismissal disconnect clients and retain recovery references. Cover managed-session window closure and restoration.
2026-10-16 01:13:28 +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 42b0ecfecf fix(ui): balance card spacing across platforms 2026-10-15 17:23:33 +08:00
Kaede Akino a03397ad22 feat(review): replace automatic prompts with inline invitations 2026-10-14 18:17:08 +08:00
Kaede Akino af575287a1 fix(settings): remove automatic language relaunch 2026-10-10 02:22:58 +08:00
Kaede Akino 9bcdcd7a77 feat(macos): toggle transfers window and support close shortcut 2026-10-08 14:59:41 +08:00
Kaede Akino 02c4a1cf39 feat(macos): add status bar visibility and session menu actions 2026-10-08 14:31:48 +08:00
Kaede Akino 63325e14ab refactor(connections): share desktop connection lifecycle
Centralize route lookup, progress fencing, reconnect scheduling, and authentication continuation while retaining channel-specific teardown and persistence policies.

Validate architecture boundaries, authentication, reconnect, routing, and new regression coverage. The full macOS suite had two timing failures; both passed focused reruns.
2026-10-08 13:08:32 +08:00
Kaede AkinoandClaude Code 975358f98a refactor: remove redundant code and over-defensive branches
Consolidate code that existed twice and drop code nothing reaches.

- SSH: hoist the duplicated ASCII hex-nibble decoder out of
  RemoteCharsetConverter and SSHPTYChannel into SSHWireEncoding.hexDigit.
- Transcript: AgentToolDetail.Tint shares BatchTint's vocabulary, so the
  byte-identical detailColor map now delegates to batchColor.
- Commerce: replace ProPaywallState's unreachable default branch and its
  `preconditionFailure("Handled above")` with an exhaustive switch the
  compiler can prove complete.
- Strings: delete the unreferenced Workspace.closePaneAction (the live help
  text uses closePane) and its orphan catalog entry.
- Drop the unused SwiftData and UniformTypeIdentifiers imports.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-10-08 11:01:27 +08:00
Kaede AkinoandClaude Code a53d9f11eb fix(settings): rename login toggle to start minimized
The toggle describes behavior in tray terms rather than as a hidden
launch, so rename the string to "Start minimized to system tray" and
sync the Japanese and both Chinese translations.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-10-08 10:42:41 +08:00
Kaede Akino f297d0bd8d feat: refresh welcome copy and Pro Max screenshot workflow 2026-10-06 22:09:53 +08:00
Kaede Akino 9a59a22497 fix: remove useless fix for menu bar overflow 2026-10-06 17:04:28 +08:00
Kaede Akino 59fbd11030 refactor(history): remove redundant closed workspace state 2026-10-06 15:16:19 +08:00
Kaede Akino 231be54e08 feat(history): refine recent history and restore closed windows 2026-10-06 14:42:51 +08:00
Kaede Akino b5e022419a fix(terminal): remove menu bar title display and setting 2026-10-06 13:49:23 +08:00
Kaede Akino c15fdbb761 feat(history): add history menus across platforms 2026-10-06 11:39:46 +08:00
Kaede Akino ca7c10b689 feat(shortcuts): align window and assistant commands across platforms 2026-10-06 11:04:36 +08:00
Kaede Akino 95593055db fix: simplify delete menus and refine snippet localization 2026-10-06 10:56:32 +08:00
Kaede AkinoandCopilot b33c03a62d refactor: remove unused declarations, overloads, and parameters
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-05 23:49:46 +08:00
Kaede Akino 6dc5c82123 feat(terminal): remove keyword highlighting 2026-10-05 09:15:04 +08:00
Kaede Akino 9666308c8e feat(assistant): animate copy confirmation icons 2026-10-05 06:45:38 +08:00
Kaede Akino 5824fbad35 fix(state): remove redundant bindings and presentation state 2026-10-04 22:25:42 +08:00
Kaede Akino ad2bf28790 refactor: remove obsolete application paths and adapters
Remove the transfer forwarding adapter, borrowed SFTP channel scheduling,
legacy assistant send entry points, unreachable Telnet password state,
unused Tailscale APIs, and unused host deletion impact projections.
Migrate behavioral tests to current paths and cover SFTP passphrase saving.

Validation: Swift formatting and shared-copy/localization checks passed.
The macOS test run reported failures in ConnectionStatusIconLayoutTests
and AgentRuntimeTests; investigation and iOS validation remain pending.
2026-10-04 22:10:09 +08:00
Kaede Akino ec4eb3172d fix(welcome): stabilize recent host context menu width 2026-10-04 21:46:27 +08:00
Kaede Akino f2cdaafd3a feat: refine confirmation UX 2026-10-04 21:09:22 +08:00
Kaede Akino 2863163a77 feat(macos): add detele and dicsard diaglog to group and package 2026-10-04 19:15:34 +08:00
Kaede Akino cb95f47c95 fix(terminal): remove shell integration history hint 2026-10-04 15:58:45 +08:00
Kaede Akino fc58e895f2 fix(snippets): rename ungrouped label to unpackaged 2026-10-04 12:34:28 +08:00
Kaede Akino b3066afe77 feat(snippets): share cards and add color selection
Reuse card content across macOS and iOS with platform-sized icons and matching card heights. Add the shared Color field below Package and preserve selection, drag, and execution behavior.

Migrate stored snippets to V51 and write color in Vault V2 while retaining V1 decoding and guarding against lossy V1 writes.

Validation: macOS focused snippet, migration, architecture, and localization tests pass; 30 iOS focused tests pass; Swift format and localization checks pass. Full macOS testing also reports failures in unchanged KeyExport, MCP, and Agent suites.
2026-10-04 12:25:52 +08:00
Kaede Akino 981106f687 fix(assistant): align markdown and command rendering with upstream 2026-10-04 11:11:50 +08:00
Kaede Akino c6bdfa0edb fix(tailscale): label username section as authentication 2026-10-03 17:09:19 +08:00
Kaede Akino 661c448ba2 fix(tailscale): separate login from group editor save 2026-10-03 15:51:48 +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 191740a3c7 refine: tailscale UI 2026-10-03 04:47:32 +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 beea076810 fix(assistant): correct terminal tool targeting and presentation 2026-10-02 19:58:09 +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 8450234179 fix(highlighting): refine rule editor and include trailing colons 2026-10-02 17:29:37 +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 6af6b7fbaf feat(assistant): add voice input to question answers 2026-10-02 16:02:53 +08:00
Kaede Akino 75a10fbbd0 feat(pro): gate multi-connection acceleration without changing saved settings 2026-10-02 15:32:35 +08:00
Kaede Akino 852c6400e2 fix(settings): fill available height in macOS theme editor 2026-10-02 14:26:58 +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