Repository navigation
v0.3.17 — structured queries: SQL & natural-language analytics over collections
✨ New
The query verb — analytics over your video library. Where probe/ask find content semantically, query measures it: run a single read-only SQL SELECT — or ask in plain English and let Cloudglue compile it to SQL — over the structured data your collections already hold. Counts, rankings, group-bys, and joins across file attributes, user metadata, connector source_metadata, and extracted entities:
tinycloud query schema --in collection:<id> --json # what's queryable (always start here)
tinycloud query "how many videos per source platform?" --in collection:<id> --json
tinycloud query --sql "SELECT source, COUNT(*) AS n FROM files GROUP BY source ORDER BY n DESC" \
--in collection:<id> --jsonQueries execute against three virtual tables built per request from the collections you select (up to 20, joinable): files (one row per file+collection — filename, title, duration, dimensions, plus metadata and source_metadata JSON columns), entities (file-level extracted fields), and segment_entities (segment-level entities with timestamps). Natural-language runs return the compiled statement in data.sql — inspect it, tweak it, resubmit it as --sql (which also bills less). A question that can't compile fails with the attempted SQL rather than guessing.
Dry runs and full-result exports. --dry-run validates/compiles and previews the output columns without executing (reduced cost). Sync results cap at --max-rows (default 1000, max 10000); for everything else, --export csv|jsonl streams the full result server-side to a gzipped file and downloads it:
tinycloud query --sql "SELECT * FROM files ORDER BY filename" --in collection:<id> --export csv --json
tinycloud query --sql "..." --in collection:<id> --export jsonl --background --json # pending → poll
tinycloud query show <query-id> -o ./exports/ --json # download when doneA stored run history, free to read. Every run is stored server-side: query list browses history, query show <id> re-fetches results (and re-downloads a completed export while its 24h link lives), and query cancel <id> aborts an in-flight export with a refund. schema, list, show, and cancel are all free.
Notes
Verbs 16 → 17; features 40 → 42 with query.v1 and query.export.v1. The bundled Cloudglue SDK moves to 0.7.23. Entity tables reflect each file's most recent completed extraction only; metadata collections have no extraction — query their files.metadata / files.source_metadata JSON columns instead. Runs are billed per the rate card (SQL cheaper than natural language; failed runs auto-refund). The skill floor rises to 0.3.17, since the skill teaches the new verb.
Install
curl -fsSL https://app.cloudglue.dev/tinycloud.sh | bash
# or
npm install -g @cloudglue/tinycloud