All work

Kivra

Capturing execution context across terminals and editors

Context
Team project
Scope
Execution-capture contract, terminal and IDE integrations, and desktop module separation
Stack
Tauri, Rust, React, TypeScript, VS Code API, JetBrains SDK

Execution context is scattered across tools

Kivra collects projects, execution history, and solution notes in a local desktop app. I worked on collecting terminal and editor runs in a shared format and showing them alongside project context.

Share a capture contract and separate responsibilities

One contract for execution start, events, and completion

In PR #1, I added the capture contract in packages/protocol and connected zsh shell capture, Rust ingestion, and the runs interface. External execution records are included in the desktop Runs list with their output and completion information.

VS Code and JetBrains use the same capture flow rather than independent record formats. Each integration can evolve while retaining a shared contract for the desktop reader.

Separate the existing desktop responsibilities

In PR #4, I split the existing Rust entry point into authentication, captured-run, project, and integration modules. Renderer components, services, and settings were also separated, preserving behavior while making the responsibilities easier to change independently.

Collaborate on the same integration boundary

Another contributor updated central captured-run storage in PR #2, including VS Code tests and diagnostics. The team refined record creation, storage paths, and integration diagnostics around the same collection flow.

External runs appear in the local desktop workflow

Terminal, VS Code, and JetBrains integrations produce a shared execution record that Rust reads and passes to the desktop Runs interface.

Local collection is separate from optional account and synchronization features. My contribution connects the protocol, editor integrations, and module boundaries that let several tools share execution context.

Trace

Capture
Execution capture flowPR #1
Modules
Rust and renderer responsibility splitPR #4