v0.2.0
tt now runs on the any-cli/kit framework.
The commands and the records they print are the same. What changed is that each
command is declared once and now drives the command line, an HTTP server, an MCP
tool set, and a resource-URI driver from that single declaration.
Serve the same commands
tt serve --addr :7777 # GET /v1/user/<handle> returns NDJSON
tt mcp # speak MCP over stdiott mcp lets an agent call video, user, posts, search, and the rest as
tools. tt serve puts the same operations behind a small HTTP surface.
Use tt as a resource-URI driver
The package registers a tiktok domain the way a program registers a database
driver with database/sql. A host enables it with one blank import:
import _ "github.com/tamnd/tiktok-cli/tiktok"Then ant dereferences tiktok:// URIs:
ant get tiktok://user/tiktok # the profile record
ant get tiktok://video/7106594312292453675 # one video
ant ls tiktok://user/tiktok # the user's videos
ant cat tiktok://video/7106594312292453675 # just the description text
ant url tiktok://hashtag/minecraft # the live https URLStore any run
tt posts @tiktok --db posts.dbEvery command can tee its records into a SQLite file as it prints them.
Flag and exit code changes
--ratereplaces--delayfor the minimum spacing between requests.--dbtees records into a store, and--profileselects a saved profile.--jobsis gone; the read commands page in order rather than fan out.- A missing handle, video, hashtag, or sound now exits 6 (not found)
instead of folding into the empty-result code. Walled surfaces still exit 4,
and a valid empty result still exits 3.
Full notes: https://tiktok-cli.tamnd.com/release-notes/v0-2-0/
Install
go install github.com/tamnd/tiktok-cli/cmd/tt@latest
docker run --rm ghcr.io/tamnd/tiktok:0.2.0 --helpPure-Go binaries for Linux, macOS, Windows, and FreeBSD, plus deb/rpm/apk
packages, a multi-arch GHCR image, checksums, SBOMs, and a cosign signature.