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-ask, loom-scan, 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
/loom-ask build a 24-hour German electricity data html demo
loom 德国 2015 年有哪些发电装机容量数据?

/loom-scan or 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, 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.17.tar.gz (63.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.17-py3-none-any.whl (62.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: loom_data-0.1.17.tar.gz
  • Upload date:
  • Size: 63.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.17.tar.gz
Algorithm Hash digest
SHA256 c3d57e3ff373e12d9f958bb2a7944e75bee15005fce8c221f909f42637969c87
MD5 734ac11f2e7a2c801544ce5e95e375a7
BLAKE2b-256 e0b1419ca350903511d9cf243173b3e18c521b0b459c9f78d06ca8e16d428ae8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: loom_data-0.1.17-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.17-py3-none-any.whl
Algorithm Hash digest
SHA256 34d787a4e49617a5014d3f844e9e1b09bc70b384047d7f45c5d039ea08fd6113
MD5 9b45bce2e774df21230c24746f843e12
BLAKE2b-256 f22ce66a6f2ac375e23c08194bf7eefd645569248ac3c699da91ecb824650587

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