agent-orchestrator/packages/plugins
harshitsinghbhandari 04f3a7c27f fix(cursor): register plugin in all discovery/resolution layers
Address PR review feedback from #1076 to make Cursor agent fully functional.

## Changes

### Plugin Registration (High Severity Fixes)
- **core/plugin-registry.ts**: Add cursor to BUILTIN_PLUGINS array for config-based resolution
- **cli/plugins.ts**: Import and register cursor in agentPlugins map for getAgent/getAgentByName
- **cli/detect-agent.ts**: Add cursor to AGENT_PLUGINS array for detectAvailableAgents()
- **web/services.ts**: Import and register cursor plugin for dashboard SessionManager/LifecycleManager
- **web/package.json**: Add @composio/ao-plugin-agent-cursor dependency

### Activity Detection Fix (Medium Severity)
- **cursor/index.ts**: Remove overly broad blocked detection patterns (error:/failed:)
  - Compiler errors, test failures, and linter output are normal tool output
  - Terminal-based detection can't distinguish between actionable agent errors and normal output
  - Follow Aider/OpenCode pattern: only Claude Code detects blocked (has native JSONL)
  - Added comment explaining why blocked detection is removed
- **cursor/index.test.ts**: Remove blocked detection test cases

## Why These Changes Are Needed

Before these fixes:
- `defaults.agent: cursor` in config would throw "Unknown agent plugin: cursor"
- `ao spawn --agent cursor` would fail
- Dashboard couldn't resolve cursor agent (SessionManager/LifecycleManager failures)
- `detectAvailableAgents()` never discovered Cursor
- False "blocked" states when agent encountered normal compiler errors

After these fixes:
- Cursor agent fully discoverable and usable via config and CLI
- Dashboard can spawn and manage Cursor sessions
- Activity detection matches other terminal-based agents (Aider, OpenCode)
- No false positives from normal tool output

## Testing
-  cursor plugin tests: 51/51 passing (reduced from 52 due to removed blocked tests)
-  core typecheck: clean
-  web typecheck: clean
-  CLI can import cursor plugin without errors

Addresses: ComposioHQ/agent-orchestrator#1076

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-04-09 19:17:41 +05:30
..
agent-aider feat: standardize agent plugins — shared hooks, activity JSONL, backfill aider/opencode (#755) 2026-04-01 21:50:07 +05:30
agent-claude-code fix(agent-claude-code): return idle state for freshly spawned sessions with no JSONL file (#891) 2026-04-03 19:44:59 +05:30
agent-codex feat: standardize agent plugins — shared hooks, activity JSONL, backfill aider/opencode (#755) 2026-04-01 21:50:07 +05:30
agent-cursor fix(cursor): register plugin in all discovery/resolution layers 2026-04-09 19:17:41 +05:30
agent-opencode feat: standardize agent plugins — shared hooks, activity JSONL, backfill aider/opencode (#755) 2026-04-01 21:50:07 +05:30
notifier-composio chore: version packages 2026-03-20 15:47:55 +00:00
notifier-desktop chore: version packages 2026-03-20 15:47:55 +00:00
notifier-discord fix: assign 429 error to lastError so exhausted rate-limit throws immediately 2026-03-27 01:42:59 +05:30
notifier-openclaw fix: address production failure modes from adversarial review 2026-03-31 14:39:49 +05:30
notifier-slack chore: version packages 2026-03-20 15:47:55 +00:00
notifier-webhook chore: version packages 2026-03-20 15:47:55 +00:00
runtime-process chore: version packages 2026-03-20 15:47:55 +00:00
runtime-tmux fix: revert unlink script file 2026-03-29 20:34:33 +05:30
scm-github fix(lifecycle): reduce GitHub API rate limiting from batch enrichment bypass (#906) 2026-04-06 14:59:00 +05:30
scm-gitlab chore: version packages 2026-03-20 15:47:55 +00:00
terminal-iterm2 chore: version packages 2026-03-20 15:47:55 +00:00
terminal-web chore: version packages 2026-03-20 15:47:55 +00:00
tracker-github chore: version packages 2026-03-20 15:47:55 +00:00
tracker-gitlab chore: version packages 2026-03-20 15:47:55 +00:00
tracker-linear chore: version packages 2026-03-20 15:47:55 +00:00
workspace-clone chore: version packages 2026-03-20 15:47:55 +00:00
workspace-worktree test(workspace): add test for handling existing branch with local default-branch fallback 2026-03-29 14:16:54 +05:30