Skip to content

Releases

pt cli v0.4.0-alpha.1

pt cli v0.4.0-alpha.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 16 Oct 18:18

The first published release of pt cli. Both pt and the compatible ptctl
entry point are in every package. Everything here is alpha: the commands, the
ptctl.dev/v1 JSON schema, and the private-store formats can still change.

What works

  • Metafiles: strict bounded bencode, exact v1/v2/hybrid identity, and a
    private exact-byte, no-clobber metafile store.
  • Content proof: v1 piece and v2 Merkle verification, bounded discovery of
    renamed or scattered bytes, and copy-only, journaled materialization.
  • TJUPT: session, account, search, detail, and bonus reads; acknowledged
    metafile fetch; at-most-once bonus exchange; and site login with password
    and optional two-step code, saving the session cookie to an owner-only file.
  • M-Team: session, account, search (with paging and filters), detail, own
    torrent lists (seeding, leeching, completed, incomplete, uploaded), and bonus
    reads; acknowledged metafile fetch and at-most-once bonus exchange through the
    official API; and site login saving the API key.
  • Saved credentials: after site login, every site command uses the saved
    credential; site logout removes it.
  • Downloaders: qBittorrent and Transmission reads, plus reviewed stopped
    adoption, recheck/start, stop, and keep-data removal of one exact job.
  • Reconciliation: one report that keeps site, downloader, metafile, and
    storage evidence on separate axes.
  • Source retirement: reviewed unlinking of exact source names and removal
    of exact empty parents.
  • Automation: --output json on every command, stable exit codes, stdin-only
    secrets, and explicit --acknowledge-* flags for every effect; see
    docs/AUTOMATION.md.

Known limits

  • M-Team metafile fetch and bonus exchange pass offline tests but were not run
    against a real torrent or exchange. M-Team messages and RSS are not supported.
  • A TJUPT session cookie expires; run site login again when a read reports
    the session is no longer authenticated.
  • Concurrent pt processes do not share a request rate limit; run site
    commands one at a time.
  • Packages exist for Windows amd64, Linux amd64, and macOS arm64 only, and are
    not code-signed or notarized.

Native tested packages for fe033606b25fc39bf2b7f9b2b87963aa9bb2437f. Verify SHA256SUMS before use. No code signing or notarization is provided.

What's Changed

  • feat: reconcile from a fresh storage index by @tonycoder-hub in #8
  • Prepare ptctl for more site adapters; reorganize docs for people and agents by @tonycoder-hub in #10
  • Add M-Team adapter with API-key status, account, and search by @tonycoder-hub in #11
  • Fix the 2026-10-14 review findings and tighten them in a second pass by @tonycoder-hub in #12
  • feat: deliver pt cli with verified packages and draft release workflow by @tonycoder-hub in #9
  • Name the likely cause when a downloader refuses the login by @tonycoder-hub in #13
  • Make TJUPT status, account and search work against the live site by @tonycoder-hub in #14
  • tjupt: read the real bonus page, report more account/search/detail fields, withhold exchange by @tonycoder-hub in #16
  • tjupt: keep the full name of long search results; fuzz the page parsers by @tonycoder-hub in #19
  • tjupt: report a missing torrent ID as not_found by @tonycoder-hub in #20
  • docs: record the live exchange confirmation and the store parent rule by @tonycoder-hub in #21
  • feat(tjupt): password-confirmed bonus exchange in one POST by @tonycoder-hub in #22
  • Add site login with TJUPT password and two-step code by @tonycoder-hub in #23
  • Make site login prompt on the terminal by default by @tonycoder-hub in #24
  • Say when a downloader sent no response by @tonycoder-hub in #25
  • Add M-Team torrent detail and search category names by @tonycoder-hub in #26
  • Add M-Team metafile download through the signed link by @tonycoder-hub in #27
  • feat(cli): use the credential site login saved for every site command by @tonycoder-hub in #28
  • Let reconcile observe M-Team (API key) and use the saved site credential by @tonycoder-hub in #29
  • Add search paging, mode, category, and free filters (M-Team) by @tonycoder-hub in #30
  • Add M-Team bonus catalog, review, and exchange by @tonycoder-hub in #31
  • Add M-Team own torrent lists and publish releases on merge (v0.4.0-alpha.1) by @tonycoder-hub in #32

New Contributors

Full Changelog: https://github.com/tonycoder-hub/ptctl/commits/v0.4.0-alpha.1