Skip to content

Internal Resources ​

Logician exposes internal resources through special scheme://target URLs that you can pass to the read and write tools. Schemes are case-insensitive. Prefix a literal filename with ./ if it contains ://.

RAG — rag:// ​

Retrieval-Augmented Generation operations on the document vector store:

URLAction
read rag://Shows usage help
read rag://listLists indexed document IDs
write rag://searchSearch docs — pass JSON {"query":"...", "k?:number"}
write rag://ingestIngest a document — pass JSON {"path":"...", "docId?:string"}
write rag://deleteRemove a document — pass JSON {"docId":"..."}

rag:// also has corresponding core tools (rag_search, rag_ingest, rag_list, rag_delete) available for direct invocation. The URL form is generally preferred when working from the agent prompt.

GitHub — pr:// and issue:// ​

Read pull requests and issues through your configured GitHub MCP server:

pr:// ​

URLAction
pr://owner/repoList open PRs
pr://owner/repo/1428PR details
pr://owner/repo/1428/filesChanged files
pr://owner/repo/1428/commentsComments
pr://owner/repo/1428/reviewsReviews
pr://owner/repo/1428/commitsCommits

issue:// ​

URLAction
issue://owner/repoList open issues
issue://owner/repo/42Issue details
issue://owner/repo/42/commentsComments
issue://owner/repo/42/sub-issuesSub-issues

Both require a GitHub MCP server configured; they return a diagnostic message when unavailable.

Local workspace and artifacts — local:// ​

Reads files under .logician/artifacts/. Supports writes. Numeric hosts access artifacts by ID; line-range selectors work on artifacts.

URLAction
read local://<path>Read a file in the artifacts directory
read local://0Read artifact by numeric ID
read local://0:10-30Artifact with line range
read local://0:rawArtifact verbatim
read local://List artifacts directory
write local://<path>Write a file in the artifacts directory

Merge conflicts — conflict:// ​

Lists merge conflicts in a file; conflict://<file>:<index> reads one block. write conflict://<file> with content set to ours, theirs, ours+theirs, or base resolves that block (or every block for the bare form).

Subagents — agent:// ​

Lists and reads completed subagent results. Use agent:// to list, agent://<id> for the full result, and dot-notation for field access.

URLAction
read agent://List completed agent IDs
read agent://<id>Full result as JSON
read agent://<id>/contentFinal output text only
read agent://<id>/statusCompletion status
read agent://<id>/details.metrics.turnsAgent metrics

Documentation — log:// ​

Reads documentation in the workspace docs/ directory:

URLAction
log://List documentation
log://guides/List doc categories
log://<path>Read a doc file

Remote hosts — ssh:// ​

Reads and writes files on remote hosts via SSH/scp:

URLAction
ssh://List configured hosts (see ~/.logician/ssh.json)
ssh://<host>/pathRead a remote file
write ssh://<host>/pathWrite a remote file

Writes stage to a temporary file on the remote host and move it into place, so a failed write never corrupts the target. Existing regular files are replaced in place (inode and permission bits preserved); directories and special files are refused; symlinks are replaced with regular files rather than written through.

Skills — skill:// ​

Reads a loaded skill's full instructions. The <name> must be an exact skill name; invalid names are rejected. Extra paths, queries, and fragments are not supported.

memory:// ​

URLAction
memory://listList observations
memory://memoriesList durable memories

xd:// device addresses ​

Tools that support it can also be invoked via xd:// device addresses. This is an alternative way to call tools, using the write tool to dispatch JSON payloads.

DeviceTool
xd://gitGit operations
xd://sandboxSandbox commands
xd://file_diffFile diff
xd://browserBrowser automation
xd://lspLanguage server protocol
xd://hubSubagent message bus

To list available devices: read path="xd://"

To view a device's schema: read path="xd://<device>"

To invoke a device: write path="xd://<device>" content="<json>"

read_skill tool ​

The read_skill tool loads a skill's full instructions on demand. The system prompt only advertises a compact skill catalog (name + description); the agent calls read_skill with an exact skill name to pull the full SKILL.md body when it decides to use a skill.

read_skill(name: string): string

MIT License