Docs

op

Local API operations: the JSON-RPC method names. The CLI spells ws.fork, ws.merge, checkpoint, approve, and revoke as lvcs fork, lvcs merge, lvcs checkpoint, lvcs approve, and lvcs revoke, and status as lvcs status, which also works with no daemon; other CLI commands (init, join, key, daemon, rpc, replay, audit, genesis, explain, hook, mcp, sandbox) are not operations. Also the op telemetry attribute.

ValueMeaning
helloName the participant this connection acts for; required first on every connection.
openLoad a document and return its address and kind.
readReturn a document's rendered body, or the value at a pointer into its Automerge structure.
editApply splices given against the caller's base heads.
subscribeReceive pushed changes for an address or subtree.
announcePublish a range announcement: a notification that the caller is about to change a range of a file.
askOpen an ask in a thread.
answerAnswer an open ask.
snapshotReturn a workspace's visible frontier: its id and the map from document to heads.
ws.forkFork a workspace.
ws.mergeMerge a workspace back into its base.
noteRespond to a notification with information only; the notifier proceeds.
holdObject to a notification: the notifier's edit pauses and a thread opens on its range.
grantIssue a capability grant signed by the calling participant: the owner, or a holder of a delegable grant; the issuer's daemon renews one with a window, unattended, as a new grant with the same terms.
revokeRevoke a grant and every unrevoked grant of its lineage, its renewals: a signed caps record each, after which no change at or past its time is within the grant.
secret.confirmConfirm that the caller's held edit, which the secret scan flagged, holds no secret: the daemon commits it and records a signed allowlist entry for the flagged string's hash.
track_readRecord which bytes a hook saw a tool read from a mirrored file (path and their sha-256), so that file's next save is based on exactly the heads the reader saw.
track_editAnnounce the range a tool is about to edit in a mirrored file, located from the text it replaces at the heads the tool read, and wait as announce does.
track_writeAfter a tool wrote a mirrored file: whether the mirror's author is the caller, and the metadata of the caller's unread notifications.
stop_gateWhether the caller may stop now, as the Stop hook asks: failed while an action_failed streak of its is open, merge while its newest change is in a workspace it hasn't merged, pending while the change set holds no frontier with its newest change to each file, and passed otherwise.
notificationsList the caller's notifications, metadata only (who sent each, its kind, where, when, and its size, never what it says): its open asks and holds, then its unread notifications, stale saves, asks, holds, notes, says, answers, and range announcements, each newest first. Listing marks nothing read.
notifications.readRead the content of the caller's notifications named by ids, and mark them read; an id it doesn't hold is listed as missing.
statusWhere the caller stands, read-only: its tier, mirrors, live grants and whether each renews, grants ended lately, open asks and holds, how many notifications wait unread, stale saves, the connected peer count, and the last error the daemon answered it. It shows the caller only its own.
sayAppend a message to an existing thread, delivered to its addressees and its authors.
approveApprove the named protected paths at a frontier every change channel attests: an approval in .lvcs/approvals by any holder of Approve.
checkpointWrite a git checkpoint commit of main's visible frontier and advance refs/lvcs/checkpoints/main.
channel.readReturn a channel's value: its counted frontiers, each with its attestation and approval counts.
runRun a gated action by hand (its manual trigger): a run request in its channel by a holder of Approve on it, whose run the channel's runners carry out, on the named frontier or, when none is named, the one its after channel holds; a rollback is a run on an earlier frontier the channel held. CLI: lvcs run <action> [<frontier-id>].
initCreate a project at a root and host it: the owner key, the project id, the capability file, and one document per file; a request to the per-user daemon on a connection whose hello names no root.
joinJoin an existing project from its peers into a root and host it; a request on a connection whose hello names no root.
forgetStop hosting a project and drop it from the registry, leaving its files alone; a request on a connection whose hello names no root.
projectRegister an initialized project with the daemon, or change how it is hosted: its default participant and its transport, then open it again; a request on a connection whose hello names no root.
key.newCreate a participant key in the connection's project and return its participant id.
channel.listList every action's channel and every [channels] combination of main's approved lvcs.toml: its trigger kind and its value's frontiers with their counts.
run.listList the runs runners gossiped, newest first, optionally of one channel or one frontier.
peer.listList the connected peers: whether each is direct or relayed and the participants known to sign from it.
presence.listList the live presences: who is on which document or workspace.
ws.listList the workspaces: name, class, base frontier, participants.
ws.detailOne workspace's detail: its overridden files with their changed line ranges and authors.
watchSubscribe the connection to platform pushes: channel_moved, run, presence, activity.
project.summaryOne summary per hosted project, read as its default participant: owner, participants present, threads, workspaces, channels, recent activity; on the host's connection.
inboxEvery hosted project's notifications for its default participant, metadata only; on the host's connection.
blameWho wrote each line of a file at given heads, from the document's history.
channel.historyThe moves of a channel's value this daemon saw, newest first.
searchThe lines of main's text files holding a query, ignoring case, read from the main mirror.
resourcesThe per-user daemon's own use over the last hour: CPU, memory, sandbox slots, and each project's storage; on the host's connection.
thread.listList the threads this daemon knows, metadata only: anchor, addressees, authors.
thread.readRead a thread's messages, oldest first: a pull read of content the viewer opened.
run.viewOne channel's runs on one frontier: each runner's state, the action's steps, and this daemon's run's log tail.
files.listMain's files, or a workspace's, with presence and thread counts.
issue.createCreate an issue: its title, body, and labels, numbered <alias>/<n> by the creating key. CLI: lvcs issue create.
issue.listList issues by state, assignee, and label: metadata only. CLI: lvcs issue list.
issue.viewRead one issue: its fields, assignees, plan, links, threads, and its status at its done channel. CLI: lvcs issue view.
issue.editChange an issue: title, body, labels, assignees (a claim, which asks the assignees first, decision 304), plan tasks, and links. CLI: lvcs issue edit.
issue.closeClose an issue by hand as won't fix or duplicate, or reopen one. CLI: lvcs issue close, lvcs issue reopen.
issue.developFork a workspace bound to an issue and make it the participant's current issue, so its saves and edits link to it. CLI: lvcs issue develop.
issue.revisionsThe code revisions of an issue's linked work, newest first, and how far each channel got with each. CLI: lvcs issue view shows the issue; the app shows the revisions.
issue.checkpointRecord a structured checkpoint of the work on an issue: done, next, blockers, open questions, at main's visible frontier. CLI: lvcs issue checkpoint.
checkpoint.listAn issue's checkpoints, newest first.
auth.loginStart pairing a device: a one-time link for the app and the scope the device will get.
auth.waitWait for a device to claim a pairing; answered with its key and the code it shows.
auth.confirmAccept or decline the device that claimed a pairing; accepting grants it its scope.
auth.pairA device claims a pairing from its link; answered once the pairing is confirmed or declined.
auth.statusThe participant's paired devices.
auth.logoutRevoke a paired device by its alias.
host.enableTurn the host peer on and keep it on; a request on a connection whose hello names no root.
host.disableTurn the host peer off and keep it off; a request on a connection whose hello names no root.
auth.signA write device's signature over what the daemon's push sign asked it to sign.

Cardinality: 68.