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.
| Value | Meaning |
|---|---|
hello | Name the participant this connection acts for; required first on every connection. |
open | Load a document and return its address and kind. |
read | Return a document's rendered body, or the value at a pointer into its Automerge structure. |
edit | Apply splices given against the caller's base heads. |
subscribe | Receive pushed changes for an address or subtree. |
announce | Publish a range announcement: a notification that the caller is about to change a range of a file. |
ask | Open an ask in a thread. |
answer | Answer an open ask. |
snapshot | Return a workspace's visible frontier: its id and the map from document to heads. |
ws.fork | Fork a workspace. |
ws.merge | Merge a workspace back into its base. |
note | Respond to a notification with information only; the notifier proceeds. |
hold | Object to a notification: the notifier's edit pauses and a thread opens on its range. |
grant | Issue 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. |
revoke | Revoke 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.confirm | Confirm 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_read | Record 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_edit | Announce 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_write | After a tool wrote a mirrored file: whether the mirror's author is the caller, and the metadata of the caller's unread notifications. |
stop_gate | Whether 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. |
notifications | List 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.read | Read the content of the caller's notifications named by ids, and mark them read; an id it doesn't hold is listed as missing. |
status | Where 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. |
say | Append a message to an existing thread, delivered to its addressees and its authors. |
approve | Approve the named protected paths at a frontier every change channel attests: an approval in .lvcs/approvals by any holder of Approve. |
checkpoint | Write a git checkpoint commit of main's visible frontier and advance refs/lvcs/checkpoints/main. |
channel.read | Return a channel's value: its counted frontiers, each with its attestation and approval counts. |
run | Run 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>]. |
init | Create 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. |
join | Join an existing project from its peers into a root and host it; a request on a connection whose hello names no root. |
forget | Stop hosting a project and drop it from the registry, leaving its files alone; a request on a connection whose hello names no root. |
project | Register 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.new | Create a participant key in the connection's project and return its participant id. |
channel.list | List 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.list | List the runs runners gossiped, newest first, optionally of one channel or one frontier. |
peer.list | List the connected peers: whether each is direct or relayed and the participants known to sign from it. |
presence.list | List the live presences: who is on which document or workspace. |
ws.list | List the workspaces: name, class, base frontier, participants. |
ws.detail | One workspace's detail: its overridden files with their changed line ranges and authors. |
watch | Subscribe the connection to platform pushes: channel_moved, run, presence, activity. |
project.summary | One summary per hosted project, read as its default participant: owner, participants present, threads, workspaces, channels, recent activity; on the host's connection. |
inbox | Every hosted project's notifications for its default participant, metadata only; on the host's connection. |
blame | Who wrote each line of a file at given heads, from the document's history. |
channel.history | The moves of a channel's value this daemon saw, newest first. |
search | The lines of main's text files holding a query, ignoring case, read from the main mirror. |
resources | The 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.list | List the threads this daemon knows, metadata only: anchor, addressees, authors. |
thread.read | Read a thread's messages, oldest first: a pull read of content the viewer opened. |
run.view | One channel's runs on one frontier: each runner's state, the action's steps, and this daemon's run's log tail. |
files.list | Main's files, or a workspace's, with presence and thread counts. |
issue.create | Create an issue: its title, body, and labels, numbered <alias>/<n> by the creating key. CLI: lvcs issue create. |
issue.list | List issues by state, assignee, and label: metadata only. CLI: lvcs issue list. |
issue.view | Read one issue: its fields, assignees, plan, links, threads, and its status at its done channel. CLI: lvcs issue view. |
issue.edit | Change an issue: title, body, labels, assignees (a claim, which asks the assignees first, decision 304), plan tasks, and links. CLI: lvcs issue edit. |
issue.close | Close an issue by hand as won't fix or duplicate, or reopen one. CLI: lvcs issue close, lvcs issue reopen. |
issue.develop | Fork 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.revisions | The 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.checkpoint | Record a structured checkpoint of the work on an issue: done, next, blockers, open questions, at main's visible frontier. CLI: lvcs issue checkpoint. |
checkpoint.list | An issue's checkpoints, newest first. |
auth.login | Start pairing a device: a one-time link for the app and the scope the device will get. |
auth.wait | Wait for a device to claim a pairing; answered with its key and the code it shows. |
auth.confirm | Accept or decline the device that claimed a pairing; accepting grants it its scope. |
auth.pair | A device claims a pairing from its link; answered once the pairing is confirmed or declined. |
auth.status | The participant's paired devices. |
auth.logout | Revoke a paired device by its alias. |
host.enable | Turn the host peer on and keep it on; a request on a connection whose hello names no root. |
host.disable | Turn the host peer off and keep it off; a request on a connection whose hello names no root. |
auth.sign | A write device's signature over what the daemon's push sign asked it to sign. |
Cardinality: 68.