.agents/skills/test-t3-mobile/SKILL.md | 4 +- .gitignore | 1 + AGENTS.md | 53 +++++-- README.md | 144 +----------------- apps/desktop/gnome-extension/captureFeedback.js | 2 +- apps/desktop/gnome-extension/captureService.js | 2 +- apps/desktop/gnome-extension/captureService.test.js | 6 +- apps/desktop/gnome-extension/metadata.json | 4 +- apps/desktop/package.json | 2 +- apps/desktop/resources/dmg/dmg-background-latest.svg | 2 +- apps/desktop/resources/dmg/dmg-background-nightly.svg | 2 +- apps/desktop/resources/linux/com.t3tools.t3code.metainfo.xml | 4 +- apps/desktop/scripts/electron-launcher.mjs | 27 ++-- apps/desktop/scripts/electron-launcher.test.mjs | 35 ++--- apps/desktop/scripts/verify-preload-bundle.mjs | 1 + apps/desktop/src/app/DesktopApp.ts | 2 +- apps/desktop/src/app/DesktopAppActivation.ts | 2 +- apps/desktop/src/app/DesktopAppActivationBroker.ts | 8 +- apps/desktop/src/app/DesktopAppIdentity.test.ts | 48 +++--- apps/desktop/src/app/DesktopAppIdentity.ts | 8 +- apps/desktop/src/app/DesktopAssets.test.ts | 6 +- apps/desktop/src/app/DesktopAssets.ts | 23 +-- apps/desktop/src/app/DesktopCliShim.ts | 2 +- apps/desktop/src/app/DesktopEnvironment.ts | 4 +- apps/desktop/src/app/DesktopWebLinks.ts | 4 +- apps/desktop/src/backend/DesktopBackendPool.ts | 6 +- apps/desktop/src/backend/DesktopLocalEnvironmentAuth.ts | 2 +- apps/desktop/src/electron/WindowsForeground.ts | 2 +- apps/desktop/src/permissions/MacPermissionHelper.test.ts | 16 +- apps/desktop/src/permissions/MacPermissionHelper.ts | 6 +- apps/desktop/src/snapShot/DesktopSnapShot.test.ts | 6 +- apps/desktop/src/snapShot/DesktopSnapShot.ts | 16 +- apps/desktop/src/snapShot/GnomeCaptureSetup.ts | 10 +- apps/desktop/src/snapShot/HyprlandSnapShot.ts | 2 +- apps/desktop/src/snapShot/KdeSnapShot.ts | 6 +- apps/desktop/src/snapShot/LinuxSnapShot.ts | 2 +- apps/desktop/src/snapShot/NiriCaptureShortcut.ts | 2 +- apps/desktop/src/snapShot/NiriSnapShot.ts | 2 +- apps/desktop/src/snapShot/PortalCaptureShortcut.test.ts | 2 +- apps/desktop/src/snapShot/PortalCaptureShortcut.ts | 8 +- apps/desktop/src/snapShot/SnapShotTransition.ts | 2 +- apps/desktop/src/snapShot/snapShot.ts | 2 +- apps/desktop/src/ssh/DesktopSshEnvironment.test.ts | 2 +- apps/desktop/src/ssh/DesktopSshEnvironment.ts | 2 +- apps/desktop/src/ssh/DesktopSshPasswordPrompts.ts | 2 +- apps/desktop/src/window/DesktopApplicationMenu.test.ts | 10 +- apps/desktop/src/window/DesktopApplicationMenu.ts | 2 +- apps/desktop/src/wsl/DesktopWslBackend.test.ts | 2 +- apps/desktop/src/wsl/DesktopWslBackend.ts | 2 +- apps/desktop/src/wsl/DesktopWslEnvironment.ts | 2 +- apps/mobile/README.md | 10 +- apps/mobile/app.config.ts | 56 ++++--- apps/mobile/modules/t3-composer-editor/android/src/main/java/expo/modules/t3composereditor/T3ComposerEditorModule.kt | 6 +- apps/mobile/modules/t3-native-controls/ios/T3LayoutMetricsView.swift | 4 +- apps/mobile/modules/t3-native-controls/ios/T3NativeControls.podspec | 6 + apps/mobile/plugins/withWidgetLogoAsset.cjs | 18 ++- apps/mobile/plugins/withoutIosPersonalTeamCapabilities.cjs | 1 + apps/mobile/src/Stack.tsx | 2 +- apps/mobile/src/components/BrandMark.tsx | 7 +- apps/mobile/src/components/CompactBrandTitle.tsx | 8 +- apps/mobile/src/components/KnifeMark.tsx | 14 ++ apps/mobile/src/components/T3Wordmark.tsx | 32 ---- apps/mobile/src/components/brandAssets.ts | 11 +- apps/mobile/src/features/agent-awareness/remoteRegistration.ts | 2 +- apps/mobile/src/features/diagnostics/crash-log-model.test.ts | 4 +- apps/mobile/src/features/diagnostics/crash-log-model.ts | 2 +- apps/mobile/src/features/pull-requests/MaterialPullRequestToolbar.android.tsx | 2 +- apps/mobile/src/features/pull-requests/pullRequestAgentTasks.ts | 2 +- apps/mobile/src/features/settings/SettingsAboutRouteScreen.tsx | 2 +- apps/mobile/src/features/settings/SettingsEnvironmentDetailRouteScreen.tsx | 6 +- apps/mobile/src/features/settings/SettingsMicrophoneRouteScreen.tsx | 2 +- apps/mobile/src/features/settings/SettingsNotificationsRouteScreen.tsx | 4 +- apps/mobile/src/features/settings/SettingsRouteScreen.tsx | 2 +- apps/mobile/src/features/showcase/showcaseAgentActivity.ts | 2 +- apps/mobile/src/features/threads/ThreadComposer.tsx | 2 +- apps/mobile/src/features/threads/ThreadFeed.tsx | 2 +- apps/mobile/src/features/threads/thread-work-log.tsx | 4 +- apps/mobile/src/features/workspace/WorkspaceRootScreen.tsx | 4 +- apps/mobile/src/lib/authClientMetadata.ts | 2 +- apps/mobile/src/lib/connection.test.ts | 2 +- apps/mobile/src/lib/mobileTheme.ts | 2 +- apps/mobile/src/widgets/AgentActivity.tsx | 10 +- apps/mobile/src/widgets/SubscriptionUsage.android.tsx | 22 ++- apps/mobile/src/widgets/SubscriptionUsage.tsx | 12 +- apps/mobile/src/widgets/publishSubscriptionUsage.android.ts | 3 +- apps/mobile/src/widgets/subscriptionUsageSnapshot.ts | 4 +- apps/web/index.html | 6 +- apps/web/public/apple-touch-icon.png | Bin 113787 -> 89549 bytes apps/web/public/favicon-16x16.png | Bin 2126 -> 835 bytes apps/web/public/favicon-32x32.png | Bin 5661 -> 6276 bytes apps/web/public/favicon.ico | Bin 283825 -> 244283 bytes apps/web/public/manifest.webmanifest | 2 + apps/web/src/bootstrap.test.ts | 4 +- apps/web/src/branding.test.ts | 30 ++-- apps/web/src/branding.ts | 4 +- apps/web/src/cloud/linkEnvironment.ts | 4 +- apps/web/src/components/ChatView.tsx | 2 +- apps/web/src/components/KnifeMark.tsx | 6 + apps/web/src/components/RightPanelTabs.tsx | 2 +- apps/web/src/components/ServerUpdateAction.tsx | 4 +- apps/web/src/components/T3Wordmark.tsx | 12 -- apps/web/src/components/chat/MessagesTimeline.tsx | 8 +- apps/web/src/components/chat/V2LifecycleRow.tsx | 4 +- apps/web/src/components/clerk/MobileClientsUserProfilePage.logic.test.ts | 6 +- apps/web/src/components/clerk/MobileClientsUserProfilePage.logic.ts | 2 +- apps/web/src/components/clerk/MobileClientsUserProfilePage.tsx | 2 +- apps/web/src/components/cloud/RelayClientInstallDialog.tsx | 8 +- apps/web/src/components/desktop/DesktopAppActivationCoordinator.tsx | 2 +- apps/web/src/components/desktop/SshPasswordPromptDialog.tsx | 2 +- apps/web/src/components/desktopUpdate.logic.test.ts | 6 +- apps/web/src/components/desktopUpdate.logic.ts | 8 +- apps/web/src/components/onboarding/FirstRunGate.tsx | 2 +- apps/web/src/components/onboarding/WelcomeWizard.tsx | 18 +-- apps/web/src/components/preview/PreviewPanel.tsx | 2 +- apps/web/src/components/preview/PreviewView.tsx | 2 +- apps/web/src/components/promptLinks/HostedPromptLinkLanding.tsx | 2 +- apps/web/src/components/promptLinks/NewThreadLinkView.tsx | 4 +- apps/web/src/components/promptLinks/linkedPrompt.ts | 2 +- apps/web/src/components/settings/BrowserImportWizard.tsx | 8 +- apps/web/src/components/settings/CaptureShortcutConfig.tsx | 10 +- apps/web/src/components/settings/ChatGptWelcomeCoordinator.tsx | 2 +- apps/web/src/components/settings/CliCommandSettingsRow.tsx | 4 +- apps/web/src/components/settings/CodexSetupSection.tsx | 8 +- apps/web/src/components/settings/ConnectionsSettings.tsx | 20 +-- apps/web/src/components/settings/IntegrationsSettings.tsx | 2 +- apps/web/src/components/settings/KeybindingsSettings.tsx | 2 +- apps/web/src/components/settings/LocalEnvironmentSetting.tsx | 6 +- apps/web/src/components/settings/NotificationSettings.tsx | 2 +- apps/web/src/components/settings/SettingsPanels.tsx | 2 +- apps/web/src/components/settings/SnapShotSettings.tsx | 4 +- apps/web/src/components/settings/SnapShotSetupDialog.tsx | 4 +- apps/web/src/components/settings/providerStatus.ts | 2 +- apps/web/src/components/settings/scopedSettings.ts | 2 +- apps/web/src/components/settings/settingsLayout.tsx | 1 + apps/web/src/components/sidebar/mainAppLocation.ts | 9 +- apps/web/src/components/sidebar/updateEverythingRun.tsx | 2 +- apps/web/src/connection/clientMetadata.test.ts | 2 +- apps/web/src/connection/clientMetadata.ts | 4 +- apps/web/src/desktopAppActivation.ts | 6 +- apps/web/src/lib/bootError.ts | 4 +- apps/web/src/router.ts | 2 + apps/web/src/routes/_chat.index.tsx | 4 +- apps/web/src/routes/_chat.pull-requests.tsx | 2 +- apps/web/src/routes/_chat.tsx | 2 +- apps/web/src/versionSkew.test.ts | 2 +- apps/web/src/versionSkew.ts | 2 +- assets/README.md | 80 +++------- assets/knife/android-foreground.png | Bin 0 -> 42087 bytes assets/knife/android-splash.png | Bin 0 -> 275988 bytes assets/knife/app-icon.icon/Assets/knife.png | Bin 0 -> 752710 bytes assets/knife/app-icon.icon/icon.json | 36 +++++ assets/knife/apple-touch-180.png | Bin 0 -> 89549 bytes assets/knife/favicon-16x16.png | Bin 0 -> 835 bytes assets/knife/favicon-32x32.png | Bin 0 -> 6276 bytes assets/knife/icon-1024.png | Bin 0 -> 1787658 bytes assets/knife/icon.ico | Bin 0 -> 244283 bytes assets/knife/macos-1024.png | Bin 0 -> 462502 bytes docs/operations/development.md | 8 + native/browser-secret/main.c | 2 +- native/hyprland-snap-shot/src/ipc.rs | 6 +- native/kde-snap-shot/src/main.rs | 2 +- packages/client-runtime/src/connection/compatibility.ts | 2 +- packages/client-runtime/src/connection/outdatedHostUpdate.ts | 4 +- packages/client-runtime/src/connection/resolver.test.ts | 2 +- packages/client-runtime/src/relay/errorPresentation.ts | 2 +- packages/client-runtime/src/state/pullRequestDiffHttp.test.ts | 2 +- packages/client-runtime/src/state/pullRequestDiffHttp.ts | 2 +- scripts/build-desktop-artifact.test.ts | 14 +- scripts/build-desktop-artifact.ts | 22 +-- scripts/export-android-icons.ts | 252 ++++++-------------------------- scripts/export-brand-icons.ts | 98 +++++-------- scripts/lib/brand-assets.test.ts | 15 -- scripts/lib/brand-assets.ts | 57 ++++---- scripts/mobile-native-client.ts | 6 +- scripts/mobile-showcase.ts | 6 +- 175 files changed, 666 insertions(+), 1014 deletions(-)