Skip to main content

Python client and CLI for Loom workspace data and sync workflows.

Project description

loom-data

loom-data publishes the loom Python package together with the loomcli console command.

Install

Install Loom so loomcli runs directly in your terminal. The setup is complete only after loomcli --help works without uv run.

Recommended:

pipx install loom-data
loomcli --help

With uv:

uv tool install loom-data
loomcli --help

With pip:

python -m pip install loom-data
loomcli --help

With conda:

conda create -n loom python=3.12
conda activate loom
python -m pip install loom-data
loomcli --help

Initialize a project

Recommended fast path for AI-assisted onboarding:

loomcli init --agent codex

Interactive setup:

loomcli init

Both forms create or reuse:

loom/
  <workspace>/
  .loom/
raw_data/

Fast init downloads the tutorial dataset into raw_data/demo_germany_energy_data. The tutorial data is versioned outside the PyPI package and verified during download. Use --no-tutorial to skip it or --tutorial-url <url> with --tutorial-sha256 <sha256> to use a mirror. Fast init installs three focused agent skills: loom-local-data-lookup, loom-dataset-scan-review, and loom-workspace-ops.

Recommended workflow

  1. Put source data into any directory with loom.md and CSV files.
  2. Ask the agent to scan it in chat with loom scan <path> [to <workspace>].
  3. Let the agent read loom/ before touching raw files.
  4. Use loomcli get <workspace/path/to/file> only for exact raw files that are needed.
  5. Use loomcli confirm, loomcli push, and loomcli pull for explicit terminal operations.

Chat examples

loom scan raw_data/energy to energy
loom ask "What German wind and solar data is available?"
loom 德国 2015 年有哪些发电装机容量数据?

loom scan should lead the agent to run loomcli scan-index and then continue curating cards in chat. During a scan, any directory containing loom.md is treated as a dataset root. Each dataset gets an overview.md and profile.json, and each CSV gets its own .card.md and .profile.json. Parent datasets preserve nested child dataset directories, exclude child CSV files from their own cards, and list direct child overview links. Rescans reuse unchanged CSV hashes and profiles so only changed datasets are rebuilt. loom ask and bare loom <问题> should lead the agent to inspect loom/ first rather than run a question-answering script. Agents may also inspect Loom without an explicit loom prefix when another task needs project-local, source-backed dataset facts.

CLI examples

loomcli scan-index raw_data/energy to energy
loomcli confirm energy
loomcli push energy
loomcli pull energy
loomcli pull-raw energy
loomcli get energy/demo_germany_energy_data/open_power_system_data/generation_capacity/germany_2015_net_capacity.csv
loomcli set-api https://loom-api-free.onrender.com

Python API

import loom

local_path = loom.get("energy/demo_germany_energy_data/open_power_system_data/generation_capacity/germany_2015_net_capacity.csv")
print(local_path)

loom.get(...) prefers local cache and fetches only the file you ask for.

Notes

  • docs/reference/loom-reference.md is the repository's canonical behavior reference.
  • loom-data is the package name.
  • loomcli is the public CLI command.
  • import loom is the Python API.
  • Use loomcli scan-index both for explicit terminal scans and for the agent's internal scan path.

Project details


Download files

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

Source Distribution

loom_data-0.1.16.tar.gz (62.9 kB view details)

Uploaded Source

Built Distribution

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

loom_data-0.1.16-py3-none-any.whl (62.1 kB view details)

Uploaded Python 3

File details

Details for the file loom_data-0.1.16.tar.gz.

File metadata

  • Download URL: loom_data-0.1.16.tar.gz
  • Upload date:
  • Size: 62.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for loom_data-0.1.16.tar.gz
Algorithm Hash digest
SHA256 897230146958ac92a11f7a60857ac2290cb44575b713e889476848c6016e3ca4
MD5 9bc6aaa17a7a235e554e3bf18d369767
BLAKE2b-256 dc437900e6b017bc7fbe63bd3134c4f7a74441331a8eec5fad97f29c6ea395e9

See more details on using hashes here.

File details

Details for the file loom_data-0.1.16-py3-none-any.whl.

File metadata

  • Download URL: loom_data-0.1.16-py3-none-any.whl
  • Upload date:
  • Size: 62.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for loom_data-0.1.16-py3-none-any.whl
Algorithm Hash digest
SHA256 8742e29f19e9b6b7b58fa1606bc17627c0d28c510ae0db403d695691bfdfc1ad
MD5 65591a9da6ff81bd1072f97df4df70ca
BLAKE2b-256 1f127209838f13fc5b9a8d031a5aa0ff10a876f7f0df7cb688532d7bc2691ea7

See more details on using hashes here.

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