Skip to content

fix: replace Warp keystroke hack with Launch Configurations API#100

Merged
vakovalskii merged 1 commit intovakovalskii:mainfrom
aystream:fix/warp-launch-configurations
Apr 10, 2026
Merged

fix: replace Warp keystroke hack with Launch Configurations API#100
vakovalskii merged 1 commit intovakovalskii:mainfrom
aystream:fix/warp-launch-configurations

Conversation

@aystream
Copy link
Copy Markdown
Contributor

@aystream aystream commented Apr 8, 2026

Summary

  • Replace unreliable System Events keystroke simulation with Warp Launch Configurations API (temp YAML + warp://launch/ URI scheme)
  • Add fallback to Terminal.app if Warp URI fails (consistent with iTerm2 behavior)
  • Warp now always appears in terminal list with available: true/false (consistent with iTerm2 detection)

Tested

  • node -e "require('./src/server')" — smoke test passes
  • GET /api/terminals — Warp appears with correct available status
  • Terminal detection returns consistent results for all terminals

Test plan

  • Run node bin/cli.js run, verify Warp appears in terminal dropdown
  • Select Warp, launch a session — should open in Warp via URI scheme
  • Verify temp YAML in ~/.warp/launch_configurations/ is cleaned up after 3s
  • Test with Warp not installed — should show available: false

Use Warp URI scheme and temp YAML launch configs instead of unreliable
System Events keystroke simulation. Add fallback to Terminal.app and
consistent detection with available: false when not installed.
@vakovalskii vakovalskii merged commit 16564f5 into vakovalskii:main Apr 10, 2026
vakovalskii added a commit that referenced this pull request Apr 10, 2026
Merged: #156 (star sync), #155 (clipboard fallback), #159 (bind URL fix),
#157 (session name vs first prompt), #160 (MCP badges toggle), #100 (Warp launch API)
Closed: #128 (dup), #148 (banned), #161 (bad diff)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
apstenku123 added a commit to apstenku123/codedash that referenced this pull request Apr 11, 2026
- vakovalskii#155 clipboard copy fallback on non-secure origins (execCommand shim)
- vakovalskii#156 star button sync in detail panel (already applied earlier)
- vakovalskii#159 bind address vs browser URL separation (execFile, safer)
- ca70fd2 dual metrics: user_messages (real) + total_interactions (all)
- d3f4326 Node >= 18 version check at startup with clear error

Skipped: vakovalskii#100 Warp launch config (non-iTerm2), vakovalskii#157 session name refactor
(too many touches), vakovalskii#160 badge display config (non-critical),
analytics totalSessionsAll (already have similar in createCostAggregator).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants