{"id":51235753,"url":"https://github.com/limitcool/wtlinker","last_synced_at":"2026-06-28T20:02:38.705Z","repository":{"id":365094754,"uuid":"1270535667","full_name":"limitcool/wtlinker","owner":"limitcool","description":"Windows Terminal AI 标签页分发分发管理工具 / A developer utility to launch \u0026 manage AI assistant tabs in Windows Terminal.","archived":false,"fork":false,"pushed_at":"2026-06-15T20:22:55.000Z","size":217,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-15T22:10:07.305Z","etag":null,"topics":["ai-agents","automation","ci-cd","claude","codex","developer-tools","devtools","efficiency","github-actions","opencode","powershell","productivity","programming","react","rust","tauri","win32","windows-terminal","workflow"],"latest_commit_sha":null,"homepage":"https://github.com/limitcool/wtlinker","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/limitcool.png","metadata":{"files":{"readme":"README.en.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-06-15T20:08:52.000Z","updated_at":"2026-06-15T20:22:56.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/limitcool/wtlinker","commit_stats":null,"previous_names":["limitcool/wtlinker"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/limitcool/wtlinker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/limitcool%2Fwtlinker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/limitcool%2Fwtlinker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/limitcool%2Fwtlinker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/limitcool%2Fwtlinker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/limitcool","download_url":"https://codeload.github.com/limitcool/wtlinker/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/limitcool%2Fwtlinker/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34901959,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-28T02:00:05.809Z","response_time":54,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-agents","automation","ci-cd","claude","codex","developer-tools","devtools","efficiency","github-actions","opencode","powershell","productivity","programming","react","rust","tauri","win32","windows-terminal","workflow"],"created_at":"2026-06-28T20:02:38.037Z","updated_at":"2026-06-28T20:02:38.698Z","avatar_url":"https://github.com/limitcool.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# WTLinker 🚀\n\n**English** | [**简体中文**](./README.md)\n\nWTLinker is a geek-oriented Windows Terminal tab distribution and management tool. It allows you to quickly open AI assistants (such as Codex, Claude, OpenCode) with one click inside a specified Windows Terminal window (supports appending to existing sessions as new tabs). Supporting seamless session resume and command flag isolation, WTLinker is the ultimate productivity tool for concurrent multi-project development.\n\n---\n\n## 💎 Key Features and Highlights\n\n### 1. Modal-Based Project Configurations (Zero Layout Compression \u0026 Scrollbars)\nHovering over a project card in the left list reveals a **⚙️ Edit** icon. Clicking it opens a dark-themed, semi-transparent modal dialog where you can change the project's alias, bind local working directories, select project-specific AI runtimes, and edit session parameters. By moving the editor form into a modal, the right panel is kept clean, completely eliminating vertical scrollbars.\n\n### 2. Dual-Line Combobox for Session ID Searches\nWhen resuming a Codex session, the session ID text field and select dropdown are integrated into a single, cohesive Combobox. Focusing on the input opens a floating session list where each item is formatted in a dual-line layout:\n- **First Line**: Shows the session ID abbreviation and its last modified timestamp.\n- **Second Line**: Shows a 💬 user request preview (automatically extracted from the session log by stripping heavy system prompt declarations), making it incredibly easy to locate the exact session you want to resume.\n- Features a click-outside detection overlay to automatically close the dropdown.\n\n### 3. 📖 Chat-Like Conversation History Viewer (Modal-over-Modal)\nEmbedded right next to the session input box is a **📖 button** that triggers a top-level overlay displaying the detailed chat logs.\n- Renders messages in clean bubbles (USER messages aligned to the right in dark slate blue, ASSISTANT messages to the left in dark grey).\n- The Rust backend pre-processes the log, stripping system-level instructions and aborted turns to display only your clean conversation trajectory.\n\n### 4. Interactive Windows Terminal Tab Previews\nUnder the \"Append Mode\", WTLinker retrieves and renders the active tab structure of your target terminal window, laying them out in a realistic Windows Terminal style. Features an easy `▼ Collapse / ▶ Expand` toggle to optimize screen estate.\n\n### 5. Global Config Cascading \u0026 Local Overrides\nChanging the default AI runtime in the global settings propagates to all projects in the list, while still allowing individual projects to be overridden locally via the project modal dialog.\n\n### 6. Command Flag Isolation\nWTLinker intelligently checks the AI runtime of your projects. It appends global sandboxing flags (e.g., `--dangerously-bypass-approvals-and-sandbox`) only when launching `Codex` projects. For `Claude` and `OpenCode` projects, these flags are filtered out to prevent terminal startup crashes.\n\n---\n\n## 🛠️ Technology Stack\n\n- **Frontend**: React 18 + TypeScript + Vite + Tailwind CSS\n- **Backend**: Tauri v2 + Rust\n- **OS Integration**: Windows EnumWindows, Win32 API, and UI Automation (orchestrated asynchronously via a PowerShell scripting interface) to capture terminal window handles and bring them to the foreground.\n\n---\n\n## 📂 Configuration Storage Path\n\nAll WTLinker project profiles and preferences are saved locally in a YAML file, allowing direct manual edits using any text editor:\n\n- **File Path**: `C:\\Users\\\u003cYourUsername\u003e\\AppData\\Roaming\\wtlinker\\config.yaml`\n- **Quick Shortcut**:\n  1. Press `Win + R` on Windows to open the Run window.\n  2. Type **`%APPDATA%\\wtlinker`** and hit Enter to jump directly to the config directory.\n\n---\n\n## 🚀 Quick Start for Developers\n\n### 1. Prerequisites\nMake sure you have installed:\n- **Node.js** (v18+ recommended)\n- **Rust** compiler and cargo chain\n- **Windows Terminal** (capable of launching via `wt.exe`)\n\n### 2. Install Dependencies\n```bash\nnpm install\n# or using pnpm\npnpm install\n```\n\n### 3. Run Dev Server (Debug Mode)\n```bash\nnpm run tauri dev\n```\n\n### 4. Build Release Bundle\n```bash\nnpm run tauri build\n```\nThe installer package can be found at: `src-tauri/target/release/bundle/msi/wtlinker_x.x.x_x64_zh-CN.msi`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flimitcool%2Fwtlinker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flimitcool%2Fwtlinker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flimitcool%2Fwtlinker/lists"}