Skip to content

Privacy and Diagnostics

Serkan Çeşme edited this page Aug 19, 2026 · 4 revisions

Privacy and Diagnostics

Jarvis Line is a local developer tool. It requires no Jarvis Line account and the core project includes no analytics, advertising, crash-reporting, or telemetry SDK.

The versioned privacy policy is authoritative. This page explains the practical controls.

What Codex Integration Reads

The watcher reads Codex session output under ~/.codex/sessions to find explicit Jarvis line: ... status lines. It uses a latest-message cache so it does not repeatedly rescan long sessions.

When attention alerts are enabled:

  • the official permission hook reads bounded request data for local intent classification
  • the Plan adapter uses only the first bounded header and question from structured request_user_input
  • raw tool arguments, options, answers, paths, URLs, and call IDs are not retained by the built-in adapter

Other agents control the short line they submit through jarvis-line emit.

Local Files

Location Contents
~/.codex/hooks/jarvis_line_config.json Active config
~/.codex/hooks/jarvis_line_audio_queue.json Pending short spoken lines
~/.codex/hooks/jarvis_line_latest_messages.json Fast latest-message cache
~/.codex/hooks/.jarvis_line_state.json Runtime state and heartbeats
~/.codex/hooks/jarvis_line_trace.jsonl Bounded lifecycle/timing metadata
~/.codex/hooks/*.log Watcher and worker diagnostics
~/.jarvis-line/tts Optional Kokoro environment, models, and temporary audio

Queue and cache files can contain the short line intended for speech. Normal logs avoid full content. debug_content_logging = true can place spoken text in legacy local logs, so leave it off unless actively diagnosing a local problem.

Temporary Kokoro audio is deleted after playback by default. A crash can leave temporary files in ~/.jarvis-line/tts/generated.

The v0.8.3 final completion chime is generated locally without a network request or bundled recording. Its temporary WAV is removed after playback, including when the player reports a failure.

Network Activity

Local watcher, queue, Kokoro, and platform speech do not require the Jarvis Line project to receive transcripts. Network use occurs when you explicitly use:

  • update checks or update apply
  • Kokoro dependency/model download commands
  • a custom API-backed TTS command

A custom wrapper determines what it sends to its provider. Review that command and provider policy, and supply API keys through environment or credential storage rather than config or spoken text.

Safe Issue Reports

Generate a redacted Markdown report:

jarvis-line support-report --output ./jarvis-line-issue.md

Jarvis Line does not upload the report. Open it first, review every section, remove anything you do not want public, and paste only relevant text into the issue form.

Do not attach:

  • raw session files
  • unreviewed config files
  • complete raw logs
  • credentials or environment dumps
  • opaque ZIP archives

Automated redaction cannot guarantee that every private value will be found.

Your Controls

jarvis-line config set attention_enabled false
jarvis-line config set speech_enabled false
jarvis-line queue clear
jarvis-line trace --clear
jarvis-line stop
jarvis-line uninstall codex

Uninstallers intentionally preserve user config and downloaded model files so upgrades do not erase custom settings or large assets unexpectedly.

Report vulnerabilities through private GitHub Security Advisories, not a public issue.

Clone this wiki locally