Skip to content

feat(cursor): add cursor-sdk backend transport#1

Open
John-Lussier wants to merge 1 commit into
sudoingX:feat/cursor-providerfrom
John-Lussier:feat/cursor-sdk-backend
Open

feat(cursor): add cursor-sdk backend transport#1
John-Lussier wants to merge 1 commit into
sudoingX:feat/cursor-providerfrom
John-Lussier:feat/cursor-sdk-backend

Conversation

@John-Lussier
Copy link
Copy Markdown

Summary

  • Extract agent/cursor/ package with typed CursorTurnEvents and shared CursorTurnAccumulator fed by CLI and SDK backends
  • Add provider.cursor_sdk lazy-install (cursor-sdk==0.1.5); hermes update refreshes when activated
  • Map CursorAgentError in error_classifier; show transport in hermes status / model picker; thin cursor_agent_client.py re-export facade

Stacked on NousResearch#34096 (feat/cursor-provider). SDK path auto-selected when CURSOR_API_KEY is set; CLI remains fallback for OAuth-only users.

Test plan

  • pytest tests/agent/test_cursor_* tests/hermes_cli/test_cursor_provider.py (124 passed)
  • hermes status shows Transport: sdk (cursor-sdk ✓) with API key
  • hermes -z "Reply with exactly: SDK_OK" via SDK backend
  • HERMES_CURSOR_BACKEND=cli still works for OAuth-only users

Made with Cursor

Extract agent/cursor/ package so CLI and SDK transports share CursorTurnAccumulator,
lazy-install cursor-sdk via provider.cursor_sdk, and map CursorAgentError in the
retry classifier. Keeps cursor_agent_client.py as a thin compatibility facade.

Co-authored-by: Cursor <cursoragent@cursor.com>
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