Skip to content

Runtime capability matrix

This table reflects the current Jarvis runtime surfaces. When a capability depends on runtime-specific local setup, the table says so directly instead of treating it as uniformly stable.

Runtime Launch from Jarvis Attach / discover local sessions Worker MCP reporting Summary capsule visibility Terminal streaming Remote intervention
Claude CodeSupported Supported Supported for compatible local sessions Supported for managed sessions Supported Supported Supported, but approval reply depends on local Claude gating mode
CodexSupported Supported Supported for compatible local sessions; takeover depends on local CLI state Supported for managed sessions Supported Supported Supported for approval flows Jarvis can map back to the session
OpenCodeOptional Supported Supported, but sidecar health and local session state matter more than with terminal-only runtimes Supported for managed sessions Supported Supported, sidecar-backed Supported, sidecar-backed permission replies

Jarvis can start managed sessions for all three runtimes when the corresponding local CLI is installed and configured.

Jarvis can discover compatible sessions you started outside Jarvis, but the depth of support is runtime-specific:

  • Claude Code discovery relies on Claude’s local session signals.
  • Codex discovery works, but takeover details depend on what the local Codex process is exposing.
  • OpenCode discovery works, but attach behavior is more sensitive to sidecar health.

Managed worker sessions can receive Jarvis MCP reporting tools:

  • report_progress
  • notify_blocked
  • ask_human
  • request_context

Jarvis injects these at launch time. A local session that Jarvis only discovers later should not be assumed to have the same reporting surface.

All three runtimes can contribute to Jarvis summary capsules once the session is tracked by Session OS. The capsule is a compact view for the main chat, not a full terminal transcript replay.

Jarvis can stream live terminal output for all three runtimes, but the transport differs:

  • Claude Code and Codex are primarily terminal-first integrations.
  • OpenCode terminal streaming is sidecar-backed.

Jarvis can surface runtime states that need human attention to remote channels, but reply semantics are not identical:

  • Claude Code intervention is strongest when local gating is enabled.
  • Codex approval intervention is supported, but still depends on the local runtime mapping Jarvis can observe.
  • OpenCode has the most explicit permission reply surface because its sidecar exposes structured permission APIs.