Skip to main content

Locate and read local code-agent thread files

Project description

xURL

xURL is a CLI that reads, queries, and writes AI agent conversations through a unified agents:// URI scheme.

Also known as Xuanwo's URL.

What xURL Can Do

xURL gives you one URI scheme (agents://) to read, query, discover, and write conversations across multiple AI agent CLIs.

  • Read a conversation as markdown — xurl agents://codex/<id>
  • Query threads by provider, keyword, local path, or role — xurl 'agents://codex?q=refactor'
  • Discover child targets and metadata before drilling down — xurl -I agents://codex/<id>
  • Write to start or continue a conversation — xurl agents://codex -d "hello"

Providers

Amp
agents://amp
Claude
agents://claude
Codex
agents://codex
GitHub Copilot
agents://copilot
Cursor
agents://cursor
Gemini
agents://gemini
Kimi
agents://kimi
OpenCode
agents://opencode
Pi
agents://pi

Installation

Install as an agent skill:

npx skills add Xuanwo/xurl

Or install the standalone CLI:

brew tap xuanwo/tap && brew install xurl   # Homebrew
cargo install xurl-cli                      # Cargo
uv tool install xuanwo-xurl                 # Python / uv
npm install -g @xuanwo/xurl                 # npm

Quick Start

Ask your agent to summarize a thread:

Please summarize this thread: agents://codex/xxx_thread

Usage

Note: The agents:// scheme prefix is optional — codex/... is equivalent to agents://codex/....

Read

xurl agents://codex/019c871c-b1f9-7f60-9c4f-87ed09f13592
xurl agents://copilot/688628a1-407a-4b4e-b24a-1a250ebf864f

Save output to a file:

xurl -o /tmp/conversation.md agents://codex/019c871c-b1f9-7f60-9c4f-87ed09f13592

Query

By provider:

xurl agents://codex
xurl 'agents://codex?q=spawn_agent'
xurl 'agents://claude?q=agent&limit=5'
xurl 'agents://copilot?q=resume&limit=5'

By local path:

xurl agents:///Users/alice/work/xurl
xurl 'agents:///Users/alice/work/xurl?q=refactor&limit=5'
xurl 'agents://.?q=refactor&providers=codex,claude'
xurl 'agents://~/work/xurl?providers=opencode'

By role:

xurl agents://codex/reviewer

Query results include reduced thread metadata when available, so you can inspect fields like payload.git.branch without opening each thread individually.

Discover

xurl -I agents://codex/019c871c-b1f9-7f60-9c4f-87ed09f13592

Frontmatter includes provider metadata flattened into readable key-value lines (e.g. payload.git.branch = ...), and skips oversized instruction-like fields.

Drill down into a discovered child target:

xurl agents://codex/019c871c-b1f9-7f60-9c4f-87ed09f13592/019c87fb-38b9-7843-92b1-832f02598495

Write

Start a new conversation:

xurl agents://codex -d "Draft a migration plan"

Start with a role URI:

xurl agents://codex/reviewer -d "Review this patch"
xurl agents://copilot/research -d "Investigate the failing integration test"

Continue an existing conversation:

xurl agents://codex/019c871c-b1f9-7f60-9c4f-87ed09f13592 -d "Continue"

Pass extra parameters to the provider CLI via query string:

xurl "agents://codex?cd=%2FUsers%2Falice%2Frepo&add-dir=%2FUsers%2Falice%2Fshared&model=gpt-5" -d "Review this patch"

Command Reference

xurl [OPTIONS] <URI>
  • -I, --head: output frontmatter/discovery info only, including the first provider metadata record flattened into key-value lines when available.
  • -d, --data <DATA>: write payload (repeatable).
    • text: -d "hello"
    • file: -d @prompt.txt
    • stdin: -d @-
  • -o, --output <PATH>: write command output to file.

URI Reference

Agents URI

[agents://]<provider>[/<token>[/<child_id>]][?<query>]
|------|  |--------|  |---------------------------|  |------|
 optional   provider         optional path parts        query
 scheme
  • scheme: optional agents:// prefix. If omitted, xurl treats input as an agents URI shorthand.
  • provider: target provider name, such as amp, claude, codex, copilot, cursor, gemini, kimi, opencode, pi.
  • token: main conversation identifier or role name.
  • child_id: child/subagent identifier under a main conversation.
  • query: optional key-value parameters, interpreted by context.

Path-Scoped Query URI

agents:///abs/path[?<query>]
agents://.[?<query>]
agents://./subdir[?<query>]
agents://..[?<query>]
agents://../repo[?<query>]
agents://~[?<query>]
agents://~/repo[?<query>]
  • agents:///abs/path: canonical local path query form.
  • agents://. / agents://./subdir: query relative to the current working directory.
  • agents://.. / agents://../repo: query relative to the parent of the current working directory.
  • agents://~ / agents://~/repo: query relative to the home directory.
  • path-scoped query always returns a conversation list.

Agents Query

  • q=<keyword>: filters discovery results by keyword. Use when you want to find conversations by topic.
  • limit=<n>: limits discovery result count (default 10). Use when you need a shorter or longer result list.
  • providers=<name[,name...]>: restricts a path-scoped query to selected providers.
  • <key>=<value>: in write mode (-d), xurl forwards as --<key> <value> to the provider CLI.
  • <flag>: in write mode (-d), xurl forwards as --<flag> to the provider CLI.

Examples:

agents://codex?q=spawn_agent&limit=10
agents:///Users/alice/work/xurl?q=refactor&providers=codex,claude
agents://.?q=refactor&providers=codex
agents://codex/<conversation_id>
agents://codex/reviewer
agents://codex?cd=%2FUsers%2Falice%2Frepo&add-dir=%2FUsers%2Falice%2Fshared

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

xuanwo_xurl-0.0.26-py3-none-win_arm64.whl (2.4 MB view details)

Uploaded Python 3Windows ARM64

xuanwo_xurl-0.0.26-py3-none-win_amd64.whl (2.6 MB view details)

Uploaded Python 3Windows x86-64

xuanwo_xurl-0.0.26-py3-none-manylinux2014_x86_64.whl (3.1 MB view details)

Uploaded Python 3

xuanwo_xurl-0.0.26-py3-none-macosx_11_0_x86_64.whl (2.9 MB view details)

Uploaded Python 3macOS 11.0+ x86-64

xuanwo_xurl-0.0.26-py3-none-macosx_11_0_arm64.whl (2.7 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

File details

Details for the file xuanwo_xurl-0.0.26-py3-none-win_arm64.whl.

File metadata

  • Download URL: xuanwo_xurl-0.0.26-py3-none-win_arm64.whl
  • Upload date:
  • Size: 2.4 MB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for xuanwo_xurl-0.0.26-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 ca0784c8d15c9e8043c0b343b7d982bd74d6a74b79144320496f1315b8f7b150
MD5 834fc7eb3f844b7fd5ce8643d68ee0fe
BLAKE2b-256 979dbdc05d7ce2cef3302bcb9cbc3a058d562902a5acb810709ce087f10dac14

See more details on using hashes here.

Provenance

The following attestation bundles were made for xuanwo_xurl-0.0.26-py3-none-win_arm64.whl:

Publisher: pypi-publish.yml on Xuanwo/xurl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xuanwo_xurl-0.0.26-py3-none-win_amd64.whl.

File metadata

  • Download URL: xuanwo_xurl-0.0.26-py3-none-win_amd64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for xuanwo_xurl-0.0.26-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 3be45f32795f62f7ce24ca70861ba3312efcb357b9febbd3671b0698847e2628
MD5 25915599970e38106f2f8a9c7e5f2cec
BLAKE2b-256 f6356711a043fbe60891fd9d889a372acfd9ff7c91c68b89ef5bec5c2b321b8f

See more details on using hashes here.

Provenance

The following attestation bundles were made for xuanwo_xurl-0.0.26-py3-none-win_amd64.whl:

Publisher: pypi-publish.yml on Xuanwo/xurl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xuanwo_xurl-0.0.26-py3-none-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xuanwo_xurl-0.0.26-py3-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2ef5d5aaf853258d260a3bba5c206968c6f8a62bc33f81f1f1a8773af652ccd3
MD5 e41e4f06d35f27b8520ad69c102349af
BLAKE2b-256 ab8bdda7d510b73a626544fd9f7f4ba57467495495ddd9683c88023296dbc2fc

See more details on using hashes here.

Provenance

The following attestation bundles were made for xuanwo_xurl-0.0.26-py3-none-manylinux2014_x86_64.whl:

Publisher: pypi-publish.yml on Xuanwo/xurl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xuanwo_xurl-0.0.26-py3-none-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for xuanwo_xurl-0.0.26-py3-none-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fc601e1f5944e0470cdd2fbfca1673878376affdcb5682ca13ccab57c438b209
MD5 b37ce5b59328a752acd63ca8eb1aadd4
BLAKE2b-256 2804cebd011c9a12464d798ca0c3171dded15b772d71d6d62d3659f8be91f1b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for xuanwo_xurl-0.0.26-py3-none-manylinux2014_aarch64.whl:

Publisher: pypi-publish.yml on Xuanwo/xurl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xuanwo_xurl-0.0.26-py3-none-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for xuanwo_xurl-0.0.26-py3-none-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 8bdffb09f5662a0b78bc0f560f66474d5124990dc8123ca68f8a90ffaafb28b7
MD5 593d17e0f0fea7bdbbe7c1f5956e3c1d
BLAKE2b-256 2f9fda5fe9bacfb6ec66651dc8e9116e0661ab8829c7cae3e1243612dea8b675

See more details on using hashes here.

Provenance

The following attestation bundles were made for xuanwo_xurl-0.0.26-py3-none-macosx_11_0_x86_64.whl:

Publisher: pypi-publish.yml on Xuanwo/xurl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xuanwo_xurl-0.0.26-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for xuanwo_xurl-0.0.26-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d6974ff0dcdbc378ebd1e0647ae5ef5df010d1b44a06899edf52aef40e0b15fd
MD5 fe00acfe6652b76432eb2c474dc976fd
BLAKE2b-256 c8f3f10c4a8ae9af3ca264f392c45460bbf5897b70ec4dcf94ae1b83b9d95bcb

See more details on using hashes here.

Provenance

The following attestation bundles were made for xuanwo_xurl-0.0.26-py3-none-macosx_11_0_arm64.whl:

Publisher: pypi-publish.yml on Xuanwo/xurl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page