Home

mweinbach / agent-coworker

publicmweinbach/agent-coworker
Overview Code History Branches Pull requestsIssuesInsights
main
HomeOverview Code PRsIssues

refactor: make json-rpc websocket protocol canonical (#92)

6 months ago

23206c3
Authored
Max Weinbach4/25/2026, 4:21:12 PM
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Max Weinbach <mweinbach@users.noreply.github.com>

Parentc299896

102 files changed
  • AGENTS.md+2−2
  • CHANGELOG.md+1−1
  • CLAUDE.md+2−2
  • CONTRIBUTING.md+2−2
  • GEMINI.md+2−2
  • apps/desktop/AGENTS.md+3−3
  • apps/desktop/electron/services/desktopSmoke.ts+4−6
  • apps/desktop/src/app/store.actions/bootstrap.ts+2−2
  • apps/desktop/src/app/store.feedMapping.ts+7−7
  • apps/desktop/src/app/store.helpers.ts+6−6
  • apps/desktop/src/app/store.helpers/controlSocket.ts+13−13
  • apps/desktop/src/app/store.helpers/jsonRpcSocket.ts+0−1
  • apps/desktop/src/app/store.helpers/threadEventReducer.ts+10−10
  • apps/desktop/src/app/types.ts+20−20
  • apps/desktop/src/lib/modelChoices.ts+2−2
  • apps/desktop/src/lib/providerDisplayNames.ts+2−2
  • apps/desktop/src/lib/wsProtocol.ts+7−7
  • apps/desktop/src/ui/onboarding/DesktopOnboarding.tsx+2−2
  • apps/desktop/src/ui/settings/pages/ProvidersPage.tsx+4−4
  • apps/desktop/test/desktop-smoke.test.ts+8−4
  • docs/a2ui.md+3−3
  • docs/architecture.md+6−6
  • docs/bundling-guide.md+49−64
  • docs/generated/websocket-jsonrpc.d.ts+1−1
  • docs/generated/websocket-jsonrpc.schema.json+1−1
  • docs/mcp-guide.md+2−2
  • docs/websocket-protocol.md+44−1675
  • examples/ws-jsonrpc-smoke.ts+22−4
  • examples/ws-legacy-smoke.ts+0−59
  • scripts/check_docs.ts+1−1
  • src/cli/parser.ts+2−2
  • src/cli/render.ts+2−2
  • src/cli/repl.ts+2−3
  • src/cli/repl/serverEventHandler.ts+13−13
  • src/cli/repl/streamFormatting.ts+2−2
  • src/client/jsonRpcSocket.ts+16−94
  • src/server/index.ts+3−17
  • src/server/jsonrpc/{eventProjector.ts => notificationProjector.ts}+6−4
  • src/server/jsonrpc/routes/a2ui.ts+3−3
  • src/server/jsonrpc/routes/mcp.ts+9−9
  • src/server/jsonrpc/routes/memory.ts+4−4
  • src/server/jsonrpc/routes/outcomes.ts+22−22
  • src/server/jsonrpc/routes/plugins.ts+8−8
  • src/server/jsonrpc/routes/provider.ts+10−10
  • src/server/jsonrpc/routes/session.ts+11−11
  • src/server/jsonrpc/routes/shared.ts+4−4
  • src/server/jsonrpc/routes/skills.ts+16−16
  • src/server/jsonrpc/routes/turn.ts+3−3
  • src/server/jsonrpc/routes/types.ts+12−12
  • src/server/jsonrpc/routes/workspaceBackups.ts+7−7
  • src/server/jsonrpc/schema.agents.ts+2−2
  • src/server/jsonrpc/schema.core.ts+1−1
  • src/server/jsonrpc/schema.session.ts+9−9
  • src/server/jsonrpc/schema.sessionRuntime.ts+4−4
  • src/server/jsonrpc/schema.shared.ts+2−2
  • src/server/jsonrpc/sessionEventCapture.ts+8−8
  • src/server/jsonrpc/{journalProjector.ts => threadJournalNotificationProjector.ts}+6−4
  • src/server/jsonrpc/transportAdapter.ts+5−5
  • src/server/projection/conversationProjection.ts+10−10
  • src/server/protocol.ts+3−3
  • src/server/runtime/ServerRuntime.ts+0−1
  • src/server/runtime/SessionRegistry.ts+4−4
  • src/server/runtime/ThreadJournal.ts+4−4
  • src/server/runtime/WorkspaceControl.ts+10−10
  • src/server/session/A2uiSurfaceManager.ts+5−5
  • src/server/session/AgentSession.ts+8−8
  • src/server/session/InteractionManager.ts+10−10
  • src/server/session/ProviderAuthManager.ts+2−2
  • src/server/session/ProviderCatalogManager.ts+2−2
  • src/server/session/SessionAdminManager.ts+1−1
  • src/server/session/SessionContext.ts+3−3
  • src/server/session/SessionMetadataManager.ts+3−3
  • src/server/session/SessionRuntimeSupport.ts+2−2
  • src/server/session/SessionSnapshotProjector.ts+2−2
  • src/server/startServer.ts+1−8
  • src/server/startServer/types.ts+1−1
  • src/server/webDesktopService.ts+0−2
  • src/server/wsProtocol/negotiation.ts+8−28
  • src/shared/jsonrpcControlSchemas.ts+54−54
  • src/shared/modelStream.ts+3−3
  • src/shared/modelStreamReplay.ts+2−2
  • test/a2ui/actionValidation.test.ts+2−2
  • test/a2ui/integration.test.ts+4−4
  • test/a2ui/jsonRpcActionRoute.test.ts+2−2
  • test/a2ui/surfaceManager.test.ts+6−6
  • test/desktop.controlSocket.threadList.test.ts+1−1
  • test/docs.check.test.ts+1−1
  • test/helpers/wsHarness.ts+1−1
  • test/jsonrpc.projectors.test.ts+33−33
  • test/jsonrpc.routes.review-fixes.test.ts+7−7
  • test/jsonrpcSocket.runtime.test.ts+3−26
  • test/mcp.auth-flow.test.ts+3−3
  • test/repl.server-event-handler.test.ts+2−2
  • test/server.backpressure.test.ts+1−1
  • test/server.jsonrpc.control.test.ts+10−10
  • test/server.jsonrpc.flow.test.ts+1−6
  • test/server.jsonrpc.test.ts+5−5
  • test/server.test.ts+3−316
  • test/server.toolstream.test.ts+1−1
  • test/session.stream-pipeline.test.ts+8−8
  • test/session.test.ts+72−72
  • test/ws-protocol-negotiation.test.ts+7−74