Skip to content

Add Qoder provider + energy optimizations#22

Open
ysonggit wants to merge 3 commits intoryanstephen:mainfrom
ysonggit:main
Open

Add Qoder provider + energy optimizations#22
ysonggit wants to merge 3 commits intoryanstephen:mainfrom
ysonggit:main

Conversation

@ysonggit
Copy link
Copy Markdown

@ysonggit ysonggit commented Mar 30, 2026

Summary

  • Add Qoder CLI as a 5th AI provider alongside Claude, Codex, Copilot, and Gemini
  • New QoderSession class following the existing Gemini/Codex pattern (subprocess per message with --yolo -p and --output-format stream-json)
  • Multi-turn support via conversation context injection
  • NDJSON output parsing with plain text fallback
  • Environment variable cleanup (QODER_CODE, QODER_CODE_ENTRYPOINT) to prevent nested session detection
  • Fix character overlap (spread initial positions from 0.3/0.7 to 0.2/0.8)
  • Energy optimizations reducing CPU wakeups by ~75-99%:
    • Throttle display link from 60fps to 15fps for window positioning
    • Cache dock geometry with 2s refresh instead of per-frame UserDefaults reads
    • Skip setFrameOrigin when character position unchanged
    • Throttle thinking bubble updates to 2fps
    • Reassign window level only when z-order changes

Files changed

  • LilAgents/QoderSession.swift — new session implementation
  • LilAgents/AgentSession.swift — added .qoder case to provider enum
  • LilAgents/ShellEnvironment.swift — added Qoder env var cleanup
  • LilAgents/LilAgentsController.swift — fixed character overlap, dock geometry caching, tick throttling, lazy window levels
  • LilAgents/WalkerCharacter.swift — position-aware rendering, throttled bubble updates
  • README.md — added Qoder install command, CLI build steps, DMG packaging instructions, and energy efficiency section

Testing

  • Builds successfully with Xcode on macOS 26.4
  • Select Qoder from the menubar Provider menu, click a character to chat
  • Falls back to install instructions if qodercli is not found
  • Activity Monitor → Energy tab shows low energy impact (~5-10 vs ~20-30 before optimizations)

Adds Qoder CLI integration alongside Claude, Codex, Copilot, and Gemini.
Also fixes character overlap by spreading initial walk positions.

🤖 Generated with [Qoder][https://qoder.com]
- Add Qoder to supported providers list
- Add Qoder CLI install command
- Add command-line build instructions
- Add DMG packaging instructions
- Update privacy section

🤖 Generated with [Qoder][https://qoder.com]
- Throttle display link from 60fps to 15fps for window positioning
- Cache dock geometry with 2s refresh instead of per-frame UserDefaults reads
- Skip setFrameOrigin when character position unchanged
- Throttle thinking bubble updates to 2fps
- Reassign window level only when z-order changes

Reduces CPU wakeups by ~75-99%, keeping energy impact minimal.

🤖 Generated with [Qoder][https://qoder.com]
@ysonggit ysonggit changed the title Add Qoder as a supported AI provider Add Qoder provider + energy optimizations Mar 31, 2026
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.

1 participant