Skip to content

v2.0.3

Latest

Choose a tag to compare

@github-actions github-actions released this 07 Nov 17:45
9bc5f5c

Includes Chrome extension 1.0.27. Update the extension for loopback connectivity, native keyboard input, and browser-window recovery fixes.

Features

  • Add Pinduoduo search and Twitter list-members commands.
  • Include replies and retweets in Twitter search results, and suggest site login commands on authentication failures.

Fixes

  • Agree on a reachable loopback address across the daemon, CLI, and extension; avoid replacing a newer daemon with an older CLI.
  • Aim browser clicks at the resolved element, detect sibling occlusion, send complete native keyboard events, and recover owned idle windows after restart.
  • Fall back to DataTransfer uploads when the file chooser does not open; safely replace stale plugin host junctions on Windows.
  • Preserve JavaScript pipes and quoted expressions in pipelines, append query parameters before URL fragments, and escape CSV/Markdown headers.
  • Isolate concurrent download temporary files, preserve article code blocks, and honor yt-dlp failure exit status.
  • Improve LinkedIn experience, activity, and job parsing; wait for Weixin verification and article rendering; fix Ctrip train navigation.
  • Improve Twitter identity, Facebook search, Reddit blocked-page handling, JD login detection, Gemini conversation extraction, Grok session/text extraction, and YouTube login detection.
  • Update Xiaohongshu search and creator-note extraction, and report unloaded interaction counts as errors rather than zero.
  • Update undici to 7.30.1 for published security advisories.

What's Changed

  • docs: highlight Chrome Web Store installation by @jackwener in #2687
  • fix(extension): recover marked idle browser windows after restart by @wangning19940904 in #2703
  • fix(deps): bump undici to 7.30.1 for three published advisories by @yisiliu in #2709
  • fix(skills): pass --session to autofix browser page commands by @StrivingLee in #2706
  • fix(pipeline/template): evaluate expressions that start and end with a quote by @Enesuygurs in #2696
  • fix(ctrip): use one-way ticketType and unblock train navigation (#2689) by @nengqi in #2700
  • fix(adapters): fall through to DataTransfer upload when the intercepted file chooser never opens by @LeoLin990405 in #2683
  • fix(xiaohongshu): fail typed when a note's interaction counts never load instead of reporting 0 by @yisiliu in #2708
  • fix(linkedin): prevent title and company shift on grouped experience cards (#2433) by @nengqi in #2701
  • fix(weixin): wait for the captcha to auto-resolve before failing (#2045) by @LeoLin990405 in #2694
  • fix(browser): aim retargeted clicks at the resolved element, not the ancestor centre by @LeoLin990405 in #2682
  • fix(xiaohongshu): read the current .note-card render in creator-notes DOM fallback by @jackwener in #2779
  • fix(xiaohongshu): search on the AI-search homepage, with a guarded result-URL fallback by @jackwener in #2777
  • fix(daemon): agree on one loopback address across daemon, CLI and extension (#2690) by @jackwener in #2782
  • fix(daemon): only replace a daemon older than the CLI (#2761) by @jackwener in #2783
  • fix(reddit): classify Reddit's network-security block across all read commands; keep partial read on denied expansion by @jackwener in #2784
  • fix(output): escape CSV and Markdown column headers by @gavenren in #2743
  • fix(download): honor yt-dlp failure exit status by @gavenren in #2744
  • fix(download): preserve literal article code blocks by @gavenren in #2745
  • fix(pipeline): append query parameters before URL fragments by @gavenren in #2738
  • fix(pipeline): preserve pipes inside JavaScript expressions by @gavenren in #2742
  • fix(download): isolate concurrent transfer temporary files by @gavenren in #2741
  • feat(auth): suggest the site login command on not_logged_in rows by @gaurav0107 in #2775
  • feat(clis): add pinduoduo search adapter by @Ghost-Sam1222 in #2752
  • fix(linkedin): escape Rest.li reserved characters in job search values by @vshalpnjabi in #2769
  • fix(linkedin): recognise SDUi activity cards in posts (#2651) by @jackwener in #2778
  • docs: explain cleanup for legacy sitemap skill copies by @deosiree in #2764
  • fix(plugin): safely replace stale host junctions on Windows (#2711) by @jackwener in #2780
  • fix(facebook): poll search results and recover rejected navigation (#2650) by @LeoLin990405 in #2693
  • fix(twitter): resolve the logged-in account from the twid cookie instead of sidebar testids (#2770) by @jackwener in #2781
  • feat(twitter): add list-members to enumerate a list's member accounts (#2776) by @jackwener in #2785
  • fix(twitter): add replies/retweets to search results; flag partial list pages outside JSON by @simon1uo in #2766
  • fix(youtube): trust page login state for whoami by @wmgylc in #2759
  • fix(gemini): read turns from conversation containers without height filtering by @Q-My99 in #2749
  • fix(grok): resolve session via /api/auth/session and strip chrome nodes from message text by @Q-My99 in #2748
  • fix(browser): send code, keyCode and keypress text with native key presses by @gaurav0107 in #2756
  • fix(jd): fail typed when search redirects to login instead of returning empty results by @gaurav0107 in #2754
  • chore(release): prepare 2.0.3 with extension 1.0.27 by @jackwener in #2793

New Contributors

Full Changelog: v2.0.2...v2.0.3