Files
gnome-jarvis/docs/api.md
T
snxraven 599bfe440d
Rolling release / release (push) Failing after 1m46s
Computer Use Updates
2026-09-13 19:30:17 -04:00

4.1 KiB

API reference

Session D-Bus

Bus name: io.qvac.Jarvis
Object path: /io/qvac/Jarvis
Interface: io.qvac.Jarvis.Session

The canonical XML contract is io.qvac.Jarvis.Session.xml.

Method Purpose
Arm() / Sleep() / Shutdown() Control daemon voice lifecycle
PushToTalk(bool) Begin/end typed or microphone turn
Say(string) Speak text through local TTS
Ask(string) Submit typed text to the harness
ReloadSettings() Re-read config.json and return a status string
PreviewVoice(string) Speak preview text without adding a chat turn
StopSpeech() Interrupt TTS playback
ResetContext() Clear the current conversation context
Confirm(jobId, toolCallId, decision) Answer a confirmation gate
Cancel() Cancel active request/job
SetMode(string) Set capability mode (not HUD layout)
GetState() Return serialized daemon state
EnrollWake(string) Configure wake phrase
IngestPath(string) Add a local path to RAG ingestion
ComputerGrant(bool) / ComputerRevoke() Start/stop computer-use grant
ComputerStatus() Return computer-use status JSON
GetRuntimeStatus() Return voice/runtime component status JSON
AssessModelFit(string) Report whether a model fits the GPU profile
DownloadModel(string) Start a model download
CancelModel(string) Cancel a model download
WipeComputerTraces() Wipe computer-use frames; returns whether wipe ran
Signal Purpose
StateChanged Voice/daemon state string
ContextReset Conversation context was cleared
WakeHeard Wake phrase detected
PartialTranscript / FinalTranscript ASR text
Token / Reply Streamed and final assistant text
SpeakingLevel / ListeningLevel Audio RMS. The HUD no-ops these; there is no waveform
ChipOffered Suggestion sidecar
JobProgress Background job progress
ComputerStep / ComputerHighlight CU step text and target highlight rect
ConfirmationRequired Tool permission prompt
Thinking Planner thought tokens
ToolCall / ToolResult Tool activity JSON
Error Code and message

Payloads stay small; PCM and image bytes do not travel over D-Bus.

Computer-use tools

Tools are registered with the harness and exposed through the daemon. The observable contract includes cu.grant, cu.revoke, cu.status, cu.observe, cu.zoom, cu.tree, cu.find, cu.click, cu.drag, cu.scroll, cu.type, cu.key, and cu.act. Every action is checked against the active grant and safety policy. The HUD shows visible CU chrome (target highlight and agent cursor), not a waveform overlay.

Search tools

Implemented in vendor/agent-harness/agent/web-search.js for Bare (fetch plus regex/JSON, no extra npm, no SearXNG):

Tool Behavior
web_search Public search. Default engine=auto merges and deduplicates direct HTML/RSS scrapes from DuckDuckGo, Bing, and Google. Pin engine to retry one backend.
google_search Google HTML first, then the auto chain
fetch_page Direct JavaScript scraping: readable text, links, headings, metadata; offset, max_chars, and find support continued reading
web_fetch Direct scraped text, including IP lookup pages
wiki_search Wikipedia MediaWiki JSON
hn_search Hacker News via Algolia
code_search GitHub, npm, and MDN in parallel

These are public reads implemented in JavaScript with no scraping libraries, API keys, JSON search APIs, or hosted reader services. Specialized searches use site-restricted scraped search results. Pages requiring JavaScript execution or bot challenges may be unreadable. Shell HTTP (curl/wget over public hosts) remains blocked; use these tools instead.

Local HTTP

QVAC's optional OpenAI-compatible server is localhost-only at port 11434. It is a diagnostic surface, not a second Jarvis runtime. Native QVAC-only operations use /qvac/v1/* where supported by the installed QVAC version.