Releases: Bojun-Vvibe/feishu-opencode-bridge
Releases · Bojun-Vvibe/feishu-opencode-bridge
v0.3.0 — /cancel support
Highlights
- /cancel (alias /stop) aborts the currently running turn
- Aborted turns render as 🛑 已取消 with partial tool outputs preserved (not as errors)
- /new and /cwd now also abort any in-flight turn before switching
- /status shows running-turn elapsed time
Implementation notes
- Per-chat active turn tracked in a lock-protected dict for O(1) lookup
- Command dispatch runs outside the conversation lock, so
/cancelresponds instantly even while a long-running turn holds the lock - Calls opencode's
POST /session/{id}/abort; the in-flightPOST /messagethen returns naturally withMessageAbortedError, which the bridge recognizes as an aborted state rather than an error
Tested
- 22 unit tests pass (3 new for aborted-state rendering)
- End-to-end via Feishu: long bash command →
/cancel→ card updates to 🛑 已取消, opencode propagates abort to the bash subprocess