Skip to content

ATP v0.3.0

Latest

Choose a tag to compare

@WindustH WindustH released this 20 Oct 16:23
· 9 commits to main since this release

Changes

  • Video chapters and replacing a video
    • post --chapters FILE and edit --chapters FILE / --no-chapters take one 0:00 Title line per chapter.
      • Bilibili: through the creator center's chapter cards, with no re-review.
      • Douyin: on publishing, and through the chapter editor afterwards.
      • YouTube (edit only): as a timestamp block in the description.
      • Each platform's rules are checked before sending.
    • edit --video FILE replaces a published video's file on Bilibili (--part N for multi-part videos) and Douyin (where Douyin offers 更换视频). The summary lists the platform's rules: both review the video again; Douyin allows 3 replacements per work and may clear danmaku; on Bilibili the danmaku stay with the old file and the part's chapters are to be set again.
    • Bilibili can now publish videos: atp bili post --video v.mp4 --title … --cover … --category … --topic …. atp bili categories lists the categories, the sub-category is picked as the upload page does, and --ai adds the AI-content statement.
    • --cover-horizontal sets the second cover: the 4:3 横封面 on Douyin, cover43 on Bilibili.
  • Douyin creator tools
    • edit --dry-run shows a work's state without spending an edit: edits left, whether the video can be replaced, and the chapter state. It also prints the exact forms it would send.
    • The edit summary shows the edits left (Douyin allows 5 per work) and refuses when none are.
    • Works whose text @-mentions people, joins an activity or holds Douyin's own search words can now be edited.
    • post --location (search places with poi) and post --activity (see activities).
    • insights POST and works give per-work numbers: plays, completion, 2 s bounce, cover CTR, new followers and more. Also drafts, hotspots, and search -t topic.
  • Job platforms, a new jobs kind. Tables show company, pay and city.
    • Eleduck 电鸭, Liepin 猎聘, Nowcoder 牛客, NCSS 国家大学生就业服务平台, Zhilian 智联招聘, Shixiseng 实习僧, Yingjiesheng 应届生 (宣讲会).
    • careers covers companies' own career sites: ByteDance, Tencent, Alibaba, Meituan and Kuaishou, plus any Feishu Hire, Beisen or Moka site by its link, through the new --site.
    • LinkedIn (as a guest), 1Point3Acres 一亩三分地, 51job 前程无忧, BOSS直聘 (hot jobs, and the account's lists, not yet tried with an account; its search and its job and company pages are blocked by the site's check for now), and Proginn 程序员客栈.
    • Applying is always one job at a time, with a confirmation.
  • More platforms: Steam, Forem / DEV (dev.to), Hupu 虎扑, SMZDM 什么值得买, ZSXQ 知识星球, Pixiv and Pinterest.
  • More on existing platforms
    • TikTok: studio, a list of your videos with their counters, and notifications.
    • Xiaoyuzhou: login, transcript, history, and full episode lists.
    • WeRead: the official Agent Gateway (login --token wrk-… or WEREAD_API_KEY), plus chapters, outline, book-search, reading and related.
    • WeChat Official Accounts: article search through Sogou.
    • V2EX: check-in and balance, with a browser session.
    • Instagram: hot (the explore grid) and publish through the Graph API.
  • Core
    • Browser tabs: platforms whose API only answers a real browser use a headless Chrome tab, and the site's own page makes the request. --browser-window never|auto|always picks headless or windowed. atp platforms marks these platforms.
    • atp doctor checks files, sessions, ffmpeg, the browser, the proxy, the network and the clock (--offline for local checks only).
    • A failed write now says error.outcome: not_sent means it is safe to retry; unknown means check whether it took effect first.
    • Platform-only commands declare whether they only read, and the MCP read tool now runs every read command: the 28 shared ones and 408 platform-only ones.
    • Requests to one platform are paced across several atp processes.
    • Times at midnight UTC no longer show as bare dates in tables.

Upgrading

  • Douyin --cover is the 3:4 main cover. A landscape --cover no longer also sets the 4:3 cover; use --cover-horizontal for that.
  • The MCP read tool's command is a free string (a nested command is one string, e.g. "playlist tracks").
  • Install from the AUR (all-the-platforms-bin) or Homebrew (brew install windusth/tap/atp).