Browse & search docs

Operation reference

Every operation LoreGUI exposes, grouped by domain. This page is generated from the command-palette manifests (frontend/src/palette/manifest/<domain>/<op>.ts) — the single source of truth — so it tracks the real API automatically. Run any of these from the command palette.

108 operations across 12 domains.

auth

Identity and sign-in: log in to a server, inspect the current user, and log out.

auth.clearpalette

Clear all locally stored auth sessions on this device.

No arguments.

auth.local_user_infopalette

Resolve user identities from locally cached JWT tokens.

ArgumentTypeDescription
authEndpointstringAuth Endpoint
userIdsstring[]User IDs
withTokenbooleanWith Token
auth.login_interactivepalette

Authenticate against a remote via browser-based OAuth flow. Returns user identity on success.

ArgumentTypeDescription
remoteUrlstringRemote API URL; empty resolves from the repository config.
auth.login_with_tokenpalette

Authenticate against a remote using a bearer token, without a browser; returns the signed-in user.

ArgumentTypeDescription
remoteUrl*stringRemote API URL to authenticate against.
token*stringBearer token to authenticate with.
auth.logoutpalette

Sign out of a server, clearing its stored session.

ArgumentTypeDescription
authUrl*stringServer URL
resourcestringResource
userIdstringUser ID
auth.resolve_user_infopalette

Resolve the currently authenticated user's ID and display name.

No arguments.

branch

Create, switch, protect, reset, and archive branches, and drive the guided three-way merge state machine.

branch.archivepalette

Archives a branch locally and on the remote, preventing further commits.

ArgumentTypeDescription
branch*stringThe branch name to archive.
branch.createpalette

Create a new branch, optionally under a category and with an explicit branch id.

ArgumentTypeDescription
branch*stringName of the branch to create.
categorystringOptional branch category (e.g. main, dev).
idstringOptional explicit branch id (hex-encoded 16-byte context); leave empty to auto-generate.
branch.infopalette

Show metadata for a branch — name, category, parent, creator, timestamps, and archive state.

ArgumentTypeDescription
branchstringBranch name; leave empty for the current branch.
branch.latest_listpalette

List the latest revision history for a branch (newest first).

ArgumentTypeDescription
branchstringBranch name; empty for current branch.
limitnumberMaximum entries to return; 0 uses the default of 30.
branch.listpalette

List all branches in the repository, optionally including archived branches.

ArgumentTypeDescription
archivedbooleanWhen enabled, archived branches are included in the listing.
branch.mergepalette

Merge a named branch into the current branch.

ArgumentTypeDescription
name*stringName of the branch to merge into the current branch.
branch.merge_abortpalette

Abort an in-progress branch merge, discarding its staged merge state.

ArgumentTypeDescription
linkstringMerge link identifier to abort.
ignoreLinksbooleanIgnore link records while aborting.
branch.merge_intopalette

Merge the current branch into a specified target branch with a commit message.

ArgumentTypeDescription
branch*stringBranch to merge the current branch into.
branchIdstringOptional explicit id of the target branch.
messagestringCommit message for the merge.
linkstringOptional merge link identifier.
ignoreLinksbooleanIgnore link records during the merge.
branch.merge_resolvepalette

Mark conflicted files as resolved during an in-progress merge.

ArgumentTypeDescription
pathsstring[]Conflicted file paths to mark as resolved.
branch.merge_resolve_minepalette

Resolve merge conflicts by accepting the local (mine) version for the specified paths.

ArgumentTypeDescription
pathsstring[]File paths to resolve using the local version (one per line).
branch.merge_resolve_theirspalette

Resolve conflicts on the given paths by taking the incoming (theirs) version.

ArgumentTypeDescription
paths*string[]Conflicted paths to resolve as theirs (one per line).
branch.merge_restartpalette

Restart conflict resolution for the given paths in an in-progress branch merge.

ArgumentTypeDescription
paths*string[]Paths to restart merge resolution for (one per line).
branch.merge_startpalette

Begin merging another branch into the current branch, optionally committing the result.

ArgumentTypeDescription
branch*stringBranch to merge into the current branch.
messagestringCommit message for the merge.
noCommitbooleanStage the merge without creating a commit.
linkstringOptional merge link identifier.
ignoreLinksbooleanIgnore link records during the merge.
branch.merge_unresolvepalette

Mark files as unresolved during a merge, reverting previous conflict resolutions.

ArgumentTypeDescription
pathsstring[]Paths to mark as unresolved (empty = all conflicted files)
branch.metadata_getpalette

Read the metadata value stored on a branch under a given key.

ArgumentTypeDescription
branch*stringBranch whose metadata to read.
key*stringMetadata key to read.
branch.protectpalette

Apply write protection to a branch, preventing direct commits.

ArgumentTypeDescription
branch*stringName of the branch to protect.
branch.resetpalette

Reset the local LATEST pointer of a branch to a specific revision.

ArgumentTypeDescription
revision*stringRevision to reset the branch to.
branchstringBranch to reset; leave empty for the current branch.
branch.switchpalette

Switch the working tree to a different branch.

ArgumentTypeDescription
name*stringName of the branch to switch to.
branch.unprotectpalette

Remove write protection from a branch, re-allowing direct commits.

ArgumentTypeDescription
branch*stringThe branch name to unprotect.

dependency

Track and edit the links between a file and the assets it references.

dependency.addpalette

Add file dependencies to the current repository with optional tags.

ArgumentTypeDescription
sources*stringJSON array of {path, dependencies: [{dependency, tags}]}. Example: [{"path":"a.txt","dependencies":[{"dependency":"b.txt","tags":["texture"]}]}]
forcebooleanSkip cycle detection.
dependency.listpalette

List file dependencies or dependents at a given revision.

ArgumentTypeDescription
paths*string[]File paths to query dependencies for.
revisionstringRevision to query at; empty for current.
recursivebooleanFollow transitive dependencies recursively.
reversebooleanReturn dependents (reverse lookup) instead of dependencies.
tagsstring[]Filter results by these tags.
depthLimitnumberMaximum recursion depth; 0 for unlimited.
dependency.removepalette

Remove file dependencies (or specific tags) from the current repository.

ArgumentTypeDescription
sources*stringJSON array of {path, dependencies: [{dependency, tags}]}. Empty tags removes the entire edge. Example: [{"path":"a.txt","dependencies":[{"dependency":"b.txt"}]}]

file

Stage, unstage, diff, hash, and inspect files, plus per-file history and dependency edits.

file.diffpalette

Compute unified diff between two revisions.

ArgumentTypeDescription
pathsstring[]File paths to diff; empty diffs all changed files.
sourceRevisionstringSource revision (empty = working tree).
targetRevisionstringTarget revision (empty = working tree).
diff3booleanProduce three-way merge output with conflict markers.
contextLinesnumberNumber of unchanged context lines per hunk.
ignoreWhitespaceEolbooleanTreat lines that differ only in trailing whitespace as equal.
ignoreWhitespaceInlinebooleanCollapse runs of internal whitespace to a single space for comparison.
file.dirtypalette

Mark one or more paths as dirty (locally modified) so they are picked up by the next commit.

ArgumentTypeDescription
paths*string[]Paths to mark as dirty (one per line).
file.dirty_copypalette

Stage a file copy without touching the filesystem. Creates a DirtyCopy node.

ArgumentTypeDescription
fromPath*stringSource path of the file to copy.
toPath*stringDestination path for the copy.
file.dirty_movepalette

Mark a file as moved in the staging area.

ArgumentTypeDescription
fromPath*stringOriginal path of the file to move.
toPath*stringNew destination path.
file.dumppalette

Dump the binary content of a file by path or address.

ArgumentTypeDescription
addressstringAddress
pathstringPath
file.hashpalette

Compute the BLAKE3 content hash and size of one or more files.

ArgumentTypeDescription
paths*string[]File paths to hash (relative to repository root).
file.infopalette

Show metadata for files — size, hash, flags, and staging status.

ArgumentTypeDescription
paths*string[]Repository-relative paths to query (one per line).
revisionstringRevision specifier to query (leave empty for working copy).
localbooleanCalculate the filtered local filesystem hash and size.
filteredbooleanCalculate the filtered repository size.
file.metadata_listpalette

List all metadata key/value pairs for a file at a given revision.

ArgumentTypeDescription
path*stringPath to the file to list metadata for.
revisionstringRevision to query; leave empty for the current revision.
file.obliteratepalette

Permanently remove a file's content at a specific address from the store. This is irreversible.

ArgumentTypeDescription
path*stringRepository path of the file to obliterate.
address*stringContent address (hash) of the file content to obliterate.
file.reset_to_last_mergedpalette

Reset one or more files to the state they were in at the last merged revision on a given branch.

ArgumentTypeDescription
paths*string[]Repository-relative paths to reset. One path per line.
branch*stringBranch whose last merged revision to reset to.
purgebooleanWhether to purge untracked files.
file.stagepalette

Stage one or more paths for the next commit.

ArgumentTypeDescription
paths*string[]One path per line.
file.unstagepalette

Remove one or more paths from the staged changeset.

ArgumentTypeDescription
paths*string[]One path per line to unstage.
file.writepalette

Write a file from the repository to a destination path on the filesystem.

ArgumentTypeDescription
addressstringContent address to write; takes precedence over path when set.
pathstringRepository-relative path to the file (used when address is empty).
revisionstringRevision of the file to write (used with path).
output*stringDestination filesystem path to write the file to.

layer

Compose content in layers — add, remove, and list them.

layer.addpalette

Mount a source repository as a layer inside the current repository at a target path.

ArgumentTypeDescription
targetPath*stringPath in the current repository where the layer should be placed.
sourceRepository*stringRepository to add as a layer (URL or repository id).
sourcePathstringPath in the source repository where the layer should start. Leave empty for the repository root.
metadatastringMetadata key used to match revisions between the repositories. Optional.

lock

Advisory per-file locks for unmergeable binary assets — acquire, release, and see who holds what.

lock.file_acquirepalette

Acquire exclusive locks on one or more files for the current user.

ArgumentTypeDescription
paths*string[]File paths to lock, one per line.
branchstringBranch to acquire locks on; leave empty for current branch.
lock.file_acquire_as_ownerpalette

Acquire exclusive file locks on behalf of another user (admin operation).

ArgumentTypeDescription
paths*string[]File paths to lock, one per line.
branchstringBranch to acquire locks on; leave empty for current branch.
owner*stringUser ID of the lock owner.
lock.file_querypalette

List file locks on a branch, optionally filtered by owner or path.

ArgumentTypeDescription
branchstringBranch to query locks on; leave empty for current branch.
ownerstringFilter by lock owner; leave empty for all owners.
pathstringFilter by path prefix; leave empty for all paths.
lock.file_releasepalette

Release exclusive file locks for the specified paths.

ArgumentTypeDescription
paths*string[]File paths to unlock, one per line.
branchstringBranch the locks were acquired on; leave empty for current branch.
owner*stringLock owner name.
ownerId*stringLock owner ID.
lock.file_statuspalette

Check the lock status of one or more files — shows owner and lock time.

ArgumentTypeDescription
paths*string[]File paths to check, one per line.
branchstringBranch to check locks on; leave empty for current branch.

repository

Open, create, clone, and administer a repository: status, info, flush, garbage-collect, verify, and metadata.

repository.clonepalette

Clone a remote repository to a local directory.

ArgumentTypeDescription
url*stringRepository URL
dest*stringDestination
repository.clone_urlpalette

Clone a remote repository URL into a local destination directory and open it.

ArgumentTypeDescription
url*stringURL of the remote repository to clone.
dest*stringLocal directory to clone into.
repository.config_getpalette

Read a configuration value from the repository config.

ArgumentTypeDescription
key*stringThe configuration key to read (e.g. remote_url, identity).
repository.createpalette

Create a new local repository.

ArgumentTypeDescription
repositoryUrl*stringURL for the new repository (e.g. lore://localhost/<name>).
descriptionstringOptional description for the repository.
idstringOptional repository UUID; leave empty to auto-generate.
useSharedStorebooleanUse the shared store instead of a local immutable store.
sharedStorePathstringPath for the shared store; leave empty for the default.
repository.create_with_metadatapalette

Create a new repository with explicit creator and timestamp metadata.

ArgumentTypeDescription
repositoryUrl*stringURL for the new repository (e.g. lore://localhost/<name>).
creator*stringUsername or identifier of the repository creator.
created*numberCreation timestamp in milliseconds since Unix epoch.
descriptionstringOptional description for the repository.
idstringOptional repository UUID; leave empty to auto-generate.
useSharedStorebooleanUse the shared store instead of a local immutable store.
sharedStorePathstringPath for the shared store; leave empty for the default.
repository.deletepalette

Delete a repository by URL.

ArgumentTypeDescription
repositoryUrl*stringURL of the repository to delete.
repository.dumppalette

Dump the repository tree structure at a given revision and path.

ArgumentTypeDescription
revisionstringRevision to dump; leave empty for the current revision.
pathstringRepository-relative path to dump from; leave empty for the root.
maxDepthnumberMaximum tree traversal depth; 0 means unlimited.
repository.flushpalette

Flush pending repository data to persistent storage.

No arguments.

repository.gcpalette

Run garbage collection on the repository to clean up unreferenced data.

No arguments.

repository.infopalette

Retrieve metadata about a repository (name, URL, default branch, creator).

ArgumentTypeDescription
repositoryUrlstringURL of the repository to query; leave empty to use the current repository.
repository.instance_listpalette

List all repository instances (working copies) in the shared store.

No arguments.

repository.instance_prunepalette

Remove stale repository instances (working copies whose filesystem paths no longer exist) from the shared store.

No arguments.

repository.listpalette

List all repositories available at a remote URL.

ArgumentTypeDescription
url*stringThe lore:// URL to query for available repositories.
repository.metadata_clearpalette

Clear user-defined metadata keys from the repository (empty list clears all).

ArgumentTypeDescription
keysstring[]Metadata keys to clear; leave empty to clear all user-defined keys.
repository.metadata_getpalette

Read metadata entries from the repository (empty key returns all).

ArgumentTypeDescription
keystringMetadata key to read; leave empty to return all entries.
repository.metadata_setpalette

Set metadata key-value pairs on the repository.

ArgumentTypeDescription
keys*string[]Metadata keys to set (one per line).
values*string[]Values for each key (one per line, parallel to keys).
formatsstring[]Format for each key: "string", "numeric", or "binary". Defaults to "string" for missing entries.
repository.pushpalette

Push local commits on the current branch to the remote.

No arguments.

repository.releasepalette

Release the repository and free associated resources.

No arguments.

repository.repository_update_pathpalette

Update the stored repository path to match the current working directory.

No arguments.

repository.statuspalette

Show working-tree status — branch, revision, changes, ahead/behind.

No arguments.

repository.store_immutable_querypalette

Query the immutable store for a fragment by address.

ArgumentTypeDescription
address*stringThe fragment address (hash) to look up in the store.
recursebooleanRecursively query sub-fragments.
repository.syncpalette

Sync the current repository with its remote, pulling and applying the latest changes.

No arguments.

repository.verify_fragmentpalette

Verify the integrity of a specific fragment by hash; optionally heal corruption.

ArgumentTypeDescription
hash*stringThe fragment hash (hex string) to verify.
contextstringOptional context filter; leave empty to match any context.
healbooleanWhen true, attempt to heal detected corruption.
repository.verify_statepalette

Verify repository integrity; optionally heal detected inconsistencies. Returns fragment-level verification events and a typed summary.

ArgumentTypeDescription
pathstringRepository-relative path to verify; empty verifies the whole repository.
healbooleanWhen true, attempt to heal detected inconsistencies.

revision

The commit surface: commit, amend, diff, inspect, find, revert, restore, and sync revisions.

revision.activity_reportpanel

Who-did-what-when rollup over the revision history — powers the premium Reporting & Insights add-on.

ArgumentTypeDescription
revisionstringStart from this revision; empty for current HEAD.
branchstringRestrict to this branch; empty for current.
lengthnumberMaximum number of revisions to scan; 0 for unlimited.
authorstringOnly include revisions by an author whose name contains this substring.
dateFromnumberOnly include revisions at or after this timestamp; 0 = unbounded.
dateTonumberOnly include revisions at or before this timestamp; 0 = unbounded.
filePathstringOnly include revisions that touched this file path.
revision.amendpalette

Amend the most recent revision's commit message.

ArgumentTypeDescription
message*stringMessage
revision.cherry_pick_restartpalette

Restart resolution for specified paths during an in-progress cherry-pick conflict.

ArgumentTypeDescription
paths*string[]Repository-relative paths to re-materialise for resolution (one per line).
revision.commitpalette

Commit the staged changes with a message.

ArgumentTypeDescription
message*stringMessage
revision.commit_with_metadatapalette

Commit staged changes with attached metadata key-value pairs.

ArgumentTypeDescription
message*stringCommit message describing the revision.
keysstring[]One metadata key per line. Must match values/formats length.
valuesstring[]One value per line. Must match keys/formats length.
formatsstring[]One format per line (binary, numeric, or string). Must match keys/values length.
revision.diffpalette

Show file-level differences between two revisions.

ArgumentTypeDescription
revisionSource*stringRevision to diff from.
revisionTargetstringRevision to diff to; empty for current working state.
pathsstring[]Restrict diff to these repository-relative paths; empty for all files.
revision.findpalette

Find revisions by metadata key/value or revision number, searching local and remote stores.

ArgumentTypeDescription
keystringSearch by this metadata key (e.g. 'tag', 'author'). Leave empty to search by revision number.
valuestringMatch this value for the given key.
numbernumberSearch by revision number when key is empty.
revision.find_localpalette

Find revisions by metadata key/value or revision number (local only).

ArgumentTypeDescription
keystringMetadata key to search for; leave empty to search by number.
valuestringValue to match against the metadata key.
numbernumberRevision number to find; used when key is empty. 0 disables.
revision.historypalette

Show revision history for the current branch or a specified revision.

ArgumentTypeDescription
revisionstringStart from this revision; empty for current.
branchstringRestrict to this branch; empty for current.
datenumberStop at revisions created before this Unix timestamp; 0 disables.
lengthnumberMaximum number of revisions to return; 0 for unlimited.
onlyBranchbooleanStop when reaching a different branch.
revision.infopalette

Show metadata and file changes for a revision.

ArgumentTypeDescription
revisionstringRevision to inspect; empty for current.
deltabooleanInclude per-file changes against the parent revision.
metadatabooleanInclude key/value metadata entries.
revision.logpalette

List the most recent revisions on the current branch, newest first.

ArgumentTypeDescription
limit*numberMaximum number of revisions to return.
revision.metadata_clearpalette

Clear all metadata from the current revision.

No arguments.

revision.revertpalette

Revert the working directory to a specified revision by applying the inverse of its changes.

ArgumentTypeDescription
revision*stringRevision
messagestringCommit message for the auto-commit when no conflicts arise.
noCommitbooleanSkip auto-commit even if there are no conflicts.
revision.revert_abortpalette

Abort an in-progress revert operation and restore the working directory.

No arguments.

revision.revert_localpalette

Revert the working directory to a specified revision by applying the inverse of its changes.

ArgumentTypeDescription
revision*stringRevision
messagestringCommit message for the auto-commit when no conflicts arise.
noCommitbooleanSkip auto-commit even if there are no conflicts.
revision.revert_resolvepalette

Mark conflicted paths as resolved during an in-progress revert.

ArgumentTypeDescription
paths*string[]Repository-relative paths to mark as resolved.
revision.revert_resolve_minepalette

Resolve revert conflicts on the given paths by keeping the local (mine) version.

ArgumentTypeDescription
paths*string[]Repository-relative paths to resolve in favor of mine (local).
revision.syncpalette

Sync the working tree to a target revision, optionally resetting and pulling dependencies.

ArgumentTypeDescription
revisionstringTarget revision to sync to; empty syncs to the latest.
forwardChangesbooleanCarry local changes forward across the sync.
resetbooleanDiscard local changes and reset to the target revision.
rootFilesstring[]Restrict the sync to these root files (one per line).
dependencyTagsstring[]Dependency tags to include when syncing (one per line).
dependencyRecursivebooleanResolve dependencies recursively.
dependencyDepthLimitnumberMaximum depth when resolving dependencies (0 = unlimited).

service

Start and stop the lore background service.

service.host_server_startpalette

Launch a real Lore server (loreserver) over a local store on 127.0.0.1. Returns the lore:// URL to give to clients.

ArgumentTypeDescription
storeDir*stringDirectory backing the served stores. Use the same shared-store path your repository was created in.
portnumberQUIC/gRPC port. HTTP is served on port + 2. Defaults to 41337.
repositoryNamestringOptional. Embedded in the advertised lore://host:port/<name> URL clients clone.
service.host_server_statuspalette

Show whether a hosted Lore server is running, with its pid, port, and lore:// URL.

No arguments.

service.host_server_stoppalette

Stop the hosted Lore server (loreserver) started from the GUI.

No arguments.

service.startpalette

Start the Lore service process for the current repository.

No arguments.

service.stoppalette

Stop the Lore service process for the current repository (or all repositories).

ArgumentTypeDescription
allbooleanStop the service for all repositories rather than just the current one.

shared_store

Create and configure a shared store that multiple repositories read from.

shared_store.createpanel

Create a shared store on disk that repositories can use as a common content cache.

ArgumentTypeDescription
path*stringFilesystem path where the shared store is created.
shared_store.infopanel

List the configured shared stores — their URLs, paths, existence, and auto-use setting.

No arguments.

shared_store.set_use_automaticallypanel

Enable or disable automatic use of the configured default shared store for repositories.

ArgumentTypeDescription
enabledbooleanWhen on, the default shared store is consulted automatically.

storage

Content-addressed storage backends — open/close/flush a backend and put, get, copy, or obliterate fragments.

storage.closepanel

Release an open storage handle, draining in-flight ops and flushing pending writes.

ArgumentTypeDescription
handle*numberHandle id returned by Storage: Open.
storage.copypalette

Copy a fragment from one partition to another in the same store, preserving its content hash.

ArgumentTypeDescription
handle*numberHandle id returned by Storage: Open.
sourcePartition*string32-hex-char source partition namespace.
sourceAddress*stringContent address of the fragment to copy (<hash> or <hash>-<context>).
targetPartition*string32-hex-char destination partition namespace.
targetContextstringOptional 32-hex-char dedup context for the destination. Empty uses the zero context.
storage.flushpanel

Flush pending writes through an open storage handle, fsyncing disk-backed stores.

ArgumentTypeDescription
handle*numberHandle id returned by Storage: Open.
storage.getpanel

Read a content-addressed buffer from the open store using a session key returned by a prior Storage: Put.

ArgumentTypeDescription
key*stringSession key returned by a prior Storage: Put call.
storage.get_metadatapanel

Fetch a fragment's metadata (flags, payload size, content size) by partition and address — no bytes transferred.

ArgumentTypeDescription
handle*numberHandle id returned by Storage: Open.
partition*string32-hex-char partition namespace (the zero partition is rejected).
address*stringContent address: <hash> or <hash>-<context>.
storage.openpanel

Open a content-addressed store (local path, remote URL, or in-memory) and return its handle.

ArgumentTypeDescription
repositoryPathstringLocal lore repository to open. Leave empty for remote/in-memory.
remoteUrlstringRemote store endpoint. Leave empty for a local-only store.
inMemorybooleanOpen a throwaway in-memory store (path and remote URL must be empty).
storage.putpalette

Write a content-addressed buffer to an open store by key. The key lets you retrieve or obliterate the data later.

ArgumentTypeDescription
key*stringOpaque label that correlates this write with a later get or obliterate.
data*stringThe bytes to store, as a JSON array of numbers (e.g. [72, 101, 108, 108, 111]).
storage.put_filepalette

Read a file from disk and store its contents in an open store, returning the content address.

ArgumentTypeDescription
handle*numberHandle id returned by Storage: Open.
partition*string32-hex-char partition namespace (the zero partition is rejected).
path*stringFilesystem path of the file to read and store.
contextstringOptional 32-hex-char dedup context. Empty uses the zero context.
remoteWritebooleanAlso push the fragment to the configured remote store.
localCachebooleanTag the fragment for local-cache retention priority.
storage.uploadpalette

Push a locally-stored fragment to the remote attached to an open store (handle must have a remote configured).

ArgumentTypeDescription
handle*numberHandle id returned by Storage: Open (must have a remote configured).
partition*string32-hex-char partition namespace of the local content.
address*stringContent address to push (<hash> or <hash>-<context>).

* denotes a required argument. Surface badges show where an op lives in the app: panel (rich UI), menu (row/context action), or palette (palette-only).