Prepare for tinycloud 0.3.21: bulk connector metadata imports (skill floor → 0.3.21) - #30
Merged
Merged
Conversation
…floor → 0.3.21) tinycloud 0.3.21 (SDK 0.7.25, spec v0.7.17) adds bulk connector metadata imports (features 45→46: library.collections.imports.v1; verbs stay 17 — `imports` is a `library` subcommand family): - `library imports create <col> --name <n> --connector <id>` saves an immutable definition that lists a data connector server-side (google-drive, dropbox, zoom, gong, recall, grain, iconik) and imports each matching file's source_metadata into a METADATA collection as collection files — thousands to hundreds of thousands of records per run, no media processing, runs consume no credits. Filters reuse the `connectors files` flags (or --filters '<json-array>' for several listing passes); append vs refresh modes, --delete-missing (refresh-only sweep of files this import brought in), --rate-limit, --max-files, --thumbnails, --no-start. - `imports list`/`show` page definitions and run history; create/run/show report envelope status `pending` while a run executes (poll `imports show` until `ready`, progress counters inline); one active run per collection; `cancel`/`delete` never remove imported files. Because the skill teaches the subcommand family, the floor rises to 0.3.21: tinycloud-skill.json min_version/supported_range/skill_version → 0.3.21 and required_features +library.collections.imports.v1, with preflight.sh kept identical (the CI sync check passes). npm launcher version → 0.3.21 (1:1 with the binary). SKILL.md and reference/verbs.md teach the new surface; CLAUDE.md records the release. Verified: npm test 42/42 (fixture CDN); shellcheck clean; claude plugin validate passes; preflight.sh exits 0 against a real 0.3.21 darwin-arm64 binary (all 35 required features present); scripts/smoke-test.sh all-pass against the same binary (EXPECTED_VERSION=0.3.21).
amyxst
approved these changes
Aug 14, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
tinycloud 0.3.21 (SDK 0.7.25, spec v0.7.17) adds bulk connector metadata imports — features 45→46 (
library.collections.imports.v1), verbs stay 17 (importsis alibrarysubcommand family, not a verb). Source PR: makeyolo/tinycloud#247.library imports create <col> --name <n> --connector <id>saves an immutable definition that lists a data connector server-side (google-drive, dropbox, zoom, gong, recall, grain, iconik) and imports each matching file'ssource_metadatainto a metadata collection as collection files — thousands to hundreds of thousands of records per run, no media download/processing, runs consume no credits. Filters reuse theconnectors filesflags (or--filters '<json-array>'for several listing passes);appendvsrefreshmodes;--delete-missing(refresh-only sweep of files this import brought in);--rate-limit,--max-files,--thumbnails,--no-start.imports list/showpage definitions and run history;create/run/showreport envelopependingwhile a run executes (pollimports showuntilready); one active run per collection;cancel/deletenever remove imported files.Changes here
tinycloud-skill.jsonmin_version/supported_range/skill_version→ 0.3.21,required_features+library.collections.imports.v1(34→35);preflight.shkept identical (CI sync check passes).package.json→ 0.3.21 (1:1 with the binary).SKILL.md+reference/verbs.mdteach the new surface (bulk-import snippet, gotcha, and a fulllibrary importsreference block with filters/modes/pending semantics and the pre-0.3.21 unknown-command fallback).CLAUDE.mdrecords the release.Verification
npm test: 42/42 against the fixture CDN (offline).shellcheck install.sh scripts/smoke-test.sh skills/tinycloud/scripts/preflight.sh: clean.claude plugin validate .: passes.preflight.shexits 0 (all 35 required features present, credentials configured);scripts/smoke-test.shall-pass withEXPECTED_VERSION=0.3.21.Merge gate
channels.stable= 0.3.21 with pinned tarballs + manifest + sidecars) — the raised floor makes the skill refuse older binaries, and the npm publish workflow gates ongenerate-manifest.mjs --check. The "live CDN serves" line in CLAUDE.md intentionally still says 0.3.20; it flips in a follow-up commit on this branch once the CDN upload lands (the 0.3.20 pattern).Note
Low Risk
Documentation and version-metadata only in the public dist repo; no runtime logic changes. Operational risk is merge timing—older binaries are rejected once the skill floor ships.
Overview
Raises the tinycloud skill and npm launcher to 0.3.21 so agents require a binary with
library.collections.imports.v1(tinycloud-skill.json,preflight.sh,package.json).Documents the new
library importssubcommands for bulk, credit-free connector metadata backfills into metadata collections: create/list/show/run/cancel/delete, filter/mode semantics,pendingpolling, and immutability/one-active-run rules inSKILL.md,reference/verbs.md, andCLAUDE.md(including CI/CDN notes forchannels.stable= 0.3.21).Reviewed by Cursor Bugbot for commit 2bf3f0e. Bugbot is set up for automated code reviews on this repo. Configure here.