Release history
OpenCLI releases
Make Any Website & Tool Your CLI. A universal CLI Hub and AI-native runtime. Transform any website, Electron app, or local binary into a standardized command-line interface. Built for AI Agents to discover, learn, and execute tools seamlessly via a unified AGENT.md integration.
All releases
106 shown
readme, Twitter, Bilibili, Xiaohongshu, Jira, Chess, Upwork, GeoGebra, WeRead, extension
Weibo delete, Xianyu inbox, Zhihu comments, Twitter enhancements, Reddit routes
- Add author command for OpenReview ID-explicit publication lookup
- Register tg-cli, discord-cli, wx-cli as external CLIs
- Structured help for daemon/plugin/adapter/profile namespaces
Full changelog
What's Changed
- perf(adapters): hoist cookie reads to page.getCookies (Tier 1, 25 files) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1450
- perf(twitter): drop redundant goto+wait — framework auto pre-navs (PR C) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1451
- refactor(browser): split interactive and automation windows by @jackwener in https://github.com/jackwener/OpenCLI/pull/1453
- perf(twitter): enable browserSession reuse:site on 17 read-only adapters (PR B) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1454
- perf(deepseek): replace fixed-sleep waits with selector-based readiness by @jackwener in https://github.com/jackwener/OpenCLI/pull/1449
- perf(claude): replace fixed-sleep waits with selector-based readiness (D2) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1452
- fix(chatgpt): add Chinese locale selectors for image command by @cd233ljx in https://github.com/jackwener/OpenCLI/pull/1354
- feat(openreview): add author command for ID-explicit publication lookup by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1365
- fix(xiaohongshu): fallback to base64 upload when CDP setFileInput returns 'Not allowed' by @DevEverything01 in https://github.com/jackwener/OpenCLI/pull/1374
- perf(reddit): opt 13 browser adapters into shared site-tab lease by @jackwener in https://github.com/jackwener/OpenCLI/pull/1455
- chore(extension): rename adapter tab group by @jackwener in https://github.com/jackwener/OpenCLI/pull/1457
- feat(help): structured help for daemon/plugin/adapter/profile namespaces by @jackwener in https://github.com/jackwener/OpenCLI/pull/1407
- feat(external): register tg-cli, discord-cli, wx-cli by @jackwener in https://github.com/jackwener/OpenCLI/pull/1458
- docs(readme): list tg-cli, discord-cli, wx-cli in External CLI sections by @jackwener in https://github.com/jackwener/OpenCLI/pull/1459
- perf(chatgpt): replace fixed-sleep waits with selector-based readiness (D3) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1456
- chore(release): 1.7.16 by @jackwener in https://github.com/jackwener/OpenCLI/pull/1460
New Contributors
- @cd233ljx made their first contribution in https://github.com/jackwener/OpenCLI/pull/1354
- @DevEverything01 made their first contribution in https://github.com/jackwener/OpenCLI/pull/1374
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.7.15...v1.7.16
- Empty positional `help` text is now hard‑gated, fixing 18 offenders
- Browser structured help in browsers
- Twitter search filters, bookmark folders, engagement scoring, sibling dedupe and updated docs
- Opt‑in AX references routing through same‑origin frames
Full changelog
What's Changed
- feat(help): hard-gate empty positional help text + fix 18 offenders by @jackwener in https://github.com/jackwener/OpenCLI/pull/1403
- feat(help): add browser structured help by @jackwener in https://github.com/jackwener/OpenCLI/pull/1404
- feat(twitter): P1+P2+P3+P4+P5 — search filters, bookmark folders, engagement scoring, sibling dedupe + help docs by @jackwener in https://github.com/jackwener/OpenCLI/pull/1406
- docs(browser): design agent runtime roadmap by @jackwener in https://github.com/jackwener/OpenCLI/pull/1411
- fix(browser): drive click through CDP mouse events by @jackwener in https://github.com/jackwener/OpenCLI/pull/1412
- feat(browser): add opt-in AX refs by @jackwener in https://github.com/jackwener/OpenCLI/pull/1413
- feat(browser): route AX refs through same-origin frames by @jackwener in https://github.com/jackwener/OpenCLI/pull/1414
- feat(browser): compare DOM and AX state metrics by @jackwener in https://github.com/jackwener/OpenCLI/pull/1415
- docs(browser): document AX validation workflow by @jackwener in https://github.com/jackwener/OpenCLI/pull/1416
- fix(browser): enable Accessibility before AX snapshots by @jackwener in https://github.com/jackwener/OpenCLI/pull/1417
- fix(douyin): handle empty response body in browserFetch by @kagura-agent in https://github.com/jackwener/OpenCLI/pull/1408
- feat(dianping): resolve unknown cities live from www.dianping.com by @henrycjchen in https://github.com/jackwener/OpenCLI/pull/1429
- fix(e2e): unstick e2e-headed by matching fake daemon version by @jackwener in https://github.com/jackwener/OpenCLI/pull/1432
- feat(browser): add semantic locator flags by @jackwener in https://github.com/jackwener/OpenCLI/pull/1434
- feat(browser): add hover focus and dblclick by @jackwener in https://github.com/jackwener/OpenCLI/pull/1435
- feat(browser): add check and uncheck by @jackwener in https://github.com/jackwener/OpenCLI/pull/1437
- feat(browser): add upload command by @jackwener in https://github.com/jackwener/OpenCLI/pull/1438
- feat(browser): add drag command by @jackwener in https://github.com/jackwener/OpenCLI/pull/1439
- feat(browser): extend semantic locators to actions by @jackwener in https://github.com/jackwener/OpenCLI/pull/1440
- feat(browser): wait for downloads by @jackwener in https://github.com/jackwener/OpenCLI/pull/1441
- feat(browser): route AX refs through cross-origin frames by @jackwener in https://github.com/jackwener/OpenCLI/pull/1442
- fix(browser): enable AX in cross-origin frame targets by @jackwener in https://github.com/jackwener/OpenCLI/pull/1443
- feat(browser): add semantic locators to input actions by @jackwener in https://github.com/jackwener/OpenCLI/pull/1444
- test(browser): add real Chrome AX smoke by @jackwener in https://github.com/jackwener/OpenCLI/pull/1445
- feat(browser): add annotated screenshot refs by @jackwener in https://github.com/jackwener/OpenCLI/pull/1433
- chore(release): 1.7.15 by @jackwener in https://github.com/jackwener/OpenCLI/pull/1448
New Contributors
- @henrycjchen made their first contribution in https://github.com/jackwener/OpenCLI/pull/1429
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.7.14...v1.7.15
- Added Twitter unlike, retweet, unretweet, and quote actions (write‑action symmetry P0)
- Improved help adapter to be agent‑friendly
Full changelog
What's Changed
- fix(browser): restart stale ready daemon by @jackwener in https://github.com/jackwener/OpenCLI/pull/1399
- feat(twitter): add unlike + retweet + unretweet + quote (write-action symmetry P0) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1400
- feat(help): make adapter help agent-friendly by @jackwener in https://github.com/jackwener/OpenCLI/pull/1401
- chore(release): 1.7.14 by @jackwener in https://github.com/jackwener/OpenCLI/pull/1402
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.7.13...v1.7.14
- Added qwen, 1point3acres, coingecko adapters
- Support for phone‑controlled Codex project conversations via OpenClaw
- Publish command for Xianyu listing items
Full changelog
What's Changed
- refactor(test): shared page mock + dead test cleanup by @jackwener in https://github.com/jackwener/OpenCLI/pull/1321
- feat(help): group root --help adapters into External CLI / App / Site buckets by @jackwener in https://github.com/jackwener/OpenCLI/pull/1330
- fix(xianyu): fix chat send button detection and textarea activation by @JackyWay in https://github.com/jackwener/OpenCLI/pull/1328
- feat: add qwen / 1point3acres / coingecko adapters by @jackwener in https://github.com/jackwener/OpenCLI/pull/1329
- docs(adapter-author): typed-errors reference + 6 conventions from #1329 by @jackwener in https://github.com/jackwener/OpenCLI/pull/1332
- feat(codex):卡比大佬:支持手机通过 OpenClaw 操作 Codex 项目对话 by @YoungCan-Wang in https://github.com/jackwener/OpenCLI/pull/1307
- feat(xianyu): add publish command for listing items by @hszhsz in https://github.com/jackwener/OpenCLI/pull/1282
- fix(twitter): rewrite followers command using DOM extraction by @JEFFWOO-CIA in https://github.com/jackwener/OpenCLI/pull/1324
- feat(weixin): add Sogou article search by @c-w-xiaohei in https://github.com/jackwener/OpenCLI/pull/1250
- feat: add tiktok creator-videos command by @myluke in https://github.com/jackwener/OpenCLI/pull/1335
- fix(chatwise): support latest electron composer flow by @ahpxex in https://github.com/jackwener/OpenCLI/pull/427
- feat(pubmed): add comprehensive PubMed adapter with 5 commands by @Greatkai in https://github.com/jackwener/OpenCLI/pull/819
- docs(guide): add remote-orchestration page (SSH/frpc reverse tunnel) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1337
- feat: add uisdc and aibase news adapters (closes #1201) by @SnakeEye-sudo in https://github.com/jackwener/OpenCLI/pull/1249
- feat(browser): add verified fill command by @hanzili in https://github.com/jackwener/OpenCLI/pull/1222
- feat: 8 read adapters across 5 sites (arxiv / SO / coingecko / wikipedia / hf) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1338
- feat: 11 read adapters across 8 sites (round 2) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1345
- feat: round 3 — 13 read adapters across 5 new sites + 4 extensions by @jackwener in https://github.com/jackwener/OpenCLI/pull/1346
- feat: 13 read adapters across 6 new sites — dockerhub / rubygems / homebrew / packagist / maven / openalex (round 4) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1347
- feat: 10 read adapters across 6 new sites + contract tests (round 5) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1348
- feat: 12 read adapters across 6 new sites + contract tests (round 7) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1350
- feat: 2 read adapters (wttr, openfda) + contract tests by @jackwener in https://github.com/jackwener/OpenCLI/pull/1355
- fix(deepseek): skip pinned conversations and fail fast when resume target unavailable by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1343
- feat(extension): mark automation tabs with group by @jackwener in https://github.com/jackwener/OpenCLI/pull/1359
- fix(browser): keep automation container window reusable by @jackwener in https://github.com/jackwener/OpenCLI/pull/1360
- feat(deepseek): add detail and send commands for explicit conversation control by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1344
- feat(browser): add --width / --height / --full-page flags to screenshot by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1339
- enrich(ctrip): hotel-suggest + bug fixes (silent clamp, dropped columns, fake URL) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1361
- enrich(reuters): article-detail + bug fixes (silent clamp, silent error envelope) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1362
- fix(linkedin): surface detail_error on --details (no silent catch / no silent empty) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1363
- enrich(toutiao): hot board (public) + bug fixes (silent column drop, partial render) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1366
- refactor(runtime): unify command timeout into a single --timeout arg by @jackwener in https://github.com/jackwener/OpenCLI/pull/1364
- refactor(registry): remove dead adapter metadata by @jackwener in https://github.com/jackwener/OpenCLI/pull/1369
- refactor(linux-do): remove deprecated hot/category/latest compat shims by @jackwener in https://github.com/jackwener/OpenCLI/pull/1368
- enrich(coupang): product detail cmd + replace silent clamp/sentinel/Error with typed errors by @jackwener in https://github.com/jackwener/OpenCLI/pull/1370
- fix(web): include relevant iframes outside main content by @jackwener in https://github.com/jackwener/OpenCLI/pull/1371
- fix(web): avoid duplicate iframe diagnostics by @jackwener in https://github.com/jackwener/OpenCLI/pull/1372
- feat(web): add exhaustive same-origin frame mode by @jackwener in https://github.com/jackwener/OpenCLI/pull/1373
- test(gov-policy): JSDOM-against-frozen-fixture tests for in-browser extractors by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1340
- feat(browser): add adapter session reuse by @jackwener in https://github.com/jackwener/OpenCLI/pull/1383
- fix(registry): pass example field through cli() registration by @yaokuku123 in https://github.com/jackwener/OpenCLI/pull/1381
- feat(llm): reuse browser sessions by site by @jackwener in https://github.com/jackwener/OpenCLI/pull/1385
- refactor(tiktok): 6 read commands → page-context API (Phase 3 P0) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1384
- refactor(tiktok): write commands → button-walker Route 1 with typed errors by @jackwener in https://github.com/jackwener/OpenCLI/pull/1386
- refactor(hupu/hot): pipeline→func + querySelectorAll + 4 enrichment columns (Phase 3 P3) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1387
- refactor(xiaoe): pipeline→func + typed errors + content silent-drop fix (Phase 3 P1) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1388
- feat(chatgpt): add browser chat baseline commands by @jackwener in https://github.com/jackwener/OpenCLI/pull/1389
- feat(qwen): add detail command + fix stale message bubble selector by @jackwener in https://github.com/jackwener/OpenCLI/pull/1390
- refactor(facebook/notifications): pipeline→func + typed errors + 4 enrichment cols (Phase 3 P5) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1391
- feat(yuanbao): add baseline browser commands (status/read/detail/history/send) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1394
- chore(release): pre-release P0/P1 cleanup by @jackwener in https://github.com/jackwener/OpenCLI/pull/1393
- feat(grok): add browser chat baseline commands (read/history/detail/new/send/status) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1392
- fix:(xiaohongshu) improve image publishing by @E2ern1ty in https://github.com/jackwener/OpenCLI/pull/1380
- fix(youtube): use watch page HTML for transcript captions by @kagura-agent in https://github.com/jackwener/OpenCLI/pull/1378
- chore(release): clean stale metadata surfaces by @jackwener in https://github.com/jackwener/OpenCLI/pull/1395
- fix(manifest): rescue 11 desktop adapter commands from factory pattern by @jackwener in https://github.com/jackwener/OpenCLI/pull/1396
- fix(grok): replace sentinel rows + silent-clamp with typed errors, deliver image cmd by @jackwener in https://github.com/jackwener/OpenCLI/pull/1397
- chore(release): 1.7.13 by @jackwener in https://github.com/jackwener/OpenCLI/pull/1398
New Contributors
- @JackyWay made their first contribution in https://github.com/jackwener/OpenCLI/pull/1328
- @JEFFWOO-CIA made their first contribution in https://github.com/jackwener/OpenCLI/pull/1324
- @c-w-xiaohei made their first contribution in https://github.com/jackwener/OpenCLI/pull/1250
- @ahpxex made their first contribution in https://github.com/jackwener/OpenCLI/pull/427
- @Greatkai made their first contribution in https://github.com/jackwener/OpenCLI/pull/819
- @SnakeEye-sudo made their first contribution in https://github.com/jackwener/OpenCLI/pull/1249
- @E2ern1ty made their first contribution in https://github.com/jackwener/OpenCLI/pull/1380
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.7.12...v1.7.13
- Added dialog handling and CDP DOM primitives to browser adapter
- Public adapters for HackerNews, ArXiv, Dev.to, Lobsters, StackOverflow, OpenReview, Indeed, DBLP, Pixiv, Twitter (tweet ID), Dianping (browser search + shop)
- CLI: added command access metadata and agent‑native structured help
Full changelog
What's Changed
- fix(cli): show adapter subcommands in root help by @jackwener in https://github.com/jackwener/OpenCLI/pull/1276
- chore(cli): remove duplicate root help summary logic by @jackwener in https://github.com/jackwener/OpenCLI/pull/1277
- fix: use unique workspace per command execution (fixes #1114) by @kagura-agent in https://github.com/jackwener/OpenCLI/pull/1117
- feat(browser): add dialog handling and CDP DOM primitives by @jackwener in https://github.com/jackwener/OpenCLI/pull/1278
- fix(extension): move daemon bridge to offscreen document by @jackwener in https://github.com/jackwener/OpenCLI/pull/1280
- revert: offscreen daemon bridge by @jackwener in https://github.com/jackwener/OpenCLI/pull/1281
- fix(doctor): remove adapter analyze tip by @jackwener in https://github.com/jackwener/OpenCLI/pull/1283
- fix(bilibili,reddit): add identifier and url columns to hot lists by @jackwener in https://github.com/jackwener/OpenCLI/pull/1284
- fix(douban): drop unparseable fields from movie-hot, add id/votes by @jackwener in https://github.com/jackwener/OpenCLI/pull/1285
- feat(hackernews): add
read <id>and surface item id on every listing by @jackwener in https://github.com/jackwener/OpenCLI/pull/1288 - feat(arxiv): full abstract/authors + surface pdf/categories/comment + new
recent <category>by @jackwener in https://github.com/jackwener/OpenCLI/pull/1289 - fix(twitter): drop permanently-N/A
tweetscolumn from trending by @jackwener in https://github.com/jackwener/OpenCLI/pull/1290 - feat(devto): surface article id on listings + new
read <id>by @jackwener in https://github.com/jackwener/OpenCLI/pull/1292 - feat(lobsters): surface short_id + created_at on listings, add
read <short_id>by @jackwener in https://github.com/jackwener/OpenCLI/pull/1291 - feat(stackoverflow): surface question_id on listings + new
read <id>by @jackwener in https://github.com/jackwener/OpenCLI/pull/1293 - docs(stackoverflow): clarify read answers up to --answers-limit by @jackwener in https://github.com/jackwener/OpenCLI/pull/1295
- feat(openreview): public adapter — search/venue/paper/reviews by @jackwener in https://github.com/jackwener/OpenCLI/pull/1294
- feat(cli): add command access metadata by @jackwener in https://github.com/jackwener/OpenCLI/pull/1296
- feat(indeed): add search and job adapters (US site) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1298
- feat(convention): listing↔detail id pairing rule + CI gate by @jackwener in https://github.com/jackwener/OpenCLI/pull/1297
- feat(dblp): public bibliography adapter — search + paper by @jackwener in https://github.com/jackwener/OpenCLI/pull/1299
- feat(pixiv): surface user_id + url on listings (id-pairing polish) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1300
- feat(twitter): surface tweet id on bookmarks/likes/tweets listings by @jackwener in https://github.com/jackwener/OpenCLI/pull/1301
- feat(1688/hupu/douban/linux-do): surface dropped ids on listings (sweep) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1302
- Add cases/ directory for user use cases by @jackwener in https://github.com/jackwener/OpenCLI/pull/1303
- feat(cli): add agent-native structured help by @jackwener in https://github.com/jackwener/OpenCLI/pull/1304
- feat(youtube/xiaohongshu/xiaoe): surface dropped ids/url on listings (sweep) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1305
- feat(cli): add convention audit command by @jackwener in https://github.com/jackwener/OpenCLI/pull/1306
- feat(dianping): browser adapter — search + shop on www.dianping.com by @jackwener in https://github.com/jackwener/OpenCLI/pull/1309
- fix(dianping/shop): correct in-browser name and reviews extraction by @jackwener in https://github.com/jackwener/OpenCLI/pull/1312
- ci: gate new silent column drops by @jackwener in https://github.com/jackwener/OpenCLI/pull/1308
- ci: gate new typed error lint violations by @jackwener in https://github.com/jackwener/OpenCLI/pull/1310
- feat(browser): enforce verify row shape by @jackwener in https://github.com/jackwener/OpenCLI/pull/1314
- fix(audit): reduce silent column drop false positives by @jackwener in https://github.com/jackwener/OpenCLI/pull/1315
- chore(convention): retire listing↔detail id pairing CI gate, keep advisory by @jackwener in https://github.com/jackwener/OpenCLI/pull/1316
- docs(cases): add three researcher workflow examples by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1317
- test(dianping): JSDOM-against-frozen-fixture tests for in-browser extractors by @jackwener in https://github.com/jackwener/OpenCLI/pull/1313
- chore(dianping/fixtures): strip whitespace-only lines from frozen HTML fixtures by @jackwener in https://github.com/jackwener/OpenCLI/pull/1318
- docs(adapter-author): add jsdom-fixture-pattern reference for in-browser DOM extractors by @jackwener in https://github.com/jackwener/OpenCLI/pull/1319
- Release v1.7.12 / Extension v1.0.5 by @jackwener in https://github.com/jackwener/OpenCLI/pull/1320
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.7.11...v1.7.12
- Polish adapter author verify workflow for browser
- Add collection-delete adapter for Instagram
Full changelog
What's Changed
- fix(extension): remove popup status-row left border accent by @jackwener in https://github.com/jackwener/OpenCLI/pull/1267
- fix(build-manifest): fail loud on import errors and refuse stale dist by @jackwener in https://github.com/jackwener/OpenCLI/pull/1268
- fix(release): build before manifest drift check by @jackwener in https://github.com/jackwener/OpenCLI/pull/1269
- feat(browser): polish adapter author verify workflow by @jackwener in https://github.com/jackwener/OpenCLI/pull/1270
- feat(instagram): add collection-delete adapter by @jackwener in https://github.com/jackwener/OpenCLI/pull/1271
- fix(browser): route type and keys through native input by @jackwener in https://github.com/jackwener/OpenCLI/pull/1274
- chore: bump version to 1.7.11 by @jackwener in https://github.com/jackwener/OpenCLI/pull/1275
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.7.10...v1.7.11
- Added Instagram collection-create API and collection filter for saved items
- Daemon now surfaces stale versions and supports restarts
- Browser trace passed through verify flow
Full changelog
What's Changed
- feat(instagram): add collection-create + collection filter for saved (#1192) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1260
- feat(daemon): surface stale versions and restart by @jackwener in https://github.com/jackwener/OpenCLI/pull/1261
- feat(browser): pass trace through verify by @jackwener in https://github.com/jackwener/OpenCLI/pull/1263
- feat(extension): polish popup UI — merged card, copy contextId, version surfacing by @jackwener in https://github.com/jackwener/OpenCLI/pull/1262
- chore: bump version to 1.7.10 (extension 1.0.4) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1266
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.7.9...v1.7.10
- Minimum Node.js version raised to 21 (baseline enforcement).
- Add Claude adapter for Anthropic Claude interaction
- Observation feature: runtime trace capture
- Trace feature: prune retained artifacts
Full changelog
What's Changed
- fix(web): preserve button text in web read output by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1185
- fix(browser): keep text/javascript API responses in network output by @jackwener in https://github.com/jackwener/OpenCLI/pull/1195
- docs: update extension install to Chrome Web Store by @jackwener in https://github.com/jackwener/OpenCLI/pull/1194
- fix(toutiao): fix NON_TITLE_LINES scope error in articles parser by @sontjer in https://github.com/jackwener/OpenCLI/pull/1179
- fix(doubao): use ID selector for send button by @wjjsn in https://github.com/jackwener/OpenCLI/pull/1188
- fix(youtube): channel videos-tab fallback reads wrong tab from InnerTube response by @darthjaja6 in https://github.com/jackwener/OpenCLI/pull/1164
- fix(doubao): update message selectors for DOM restructure by @wjjsn in https://github.com/jackwener/OpenCLI/pull/1190
- fix(twitter): preserve text when posting images by @hanzili in https://github.com/jackwener/OpenCLI/pull/1180
- fix: separate author name from date text in search results by @yaokuku123 in https://github.com/jackwener/OpenCLI/pull/1173
- fix(uiverse): harden navigation retries and preview lookup by @CissiBot in https://github.com/jackwener/OpenCLI/pull/1171
- feat(google-scholar): add cite and profile commands, fix search dedup by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1176
- feat(browser): bind current tab to bound workspace by @jackwener in https://github.com/jackwener/OpenCLI/pull/1196
- chore(deps): bump jsdom from 29.0.2 to 29.1.0 by @dependabot[bot] in https://github.com/jackwener/OpenCLI/pull/1199
- fix(deepseek): fix send button detection and file upload by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1166
- fix(jd): separate main and detail image extraction by @Xeron2000 in https://github.com/jackwener/OpenCLI/pull/1205
- feat(browser): manage owned workspaces as tab leases by @jackwener in https://github.com/jackwener/OpenCLI/pull/1204
- feat(web): make read render-aware by @jackwener in https://github.com/jackwener/OpenCLI/pull/1209
- feat(zlibrary): add search and info commands by @ZepPellN in https://github.com/jackwener/OpenCLI/pull/1211
- fix(zhihu): fix identity detection, comment, answer, and search by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1207
- fix(chatgpt-app): support Traditional Chinese UI labels by @m72900024 in https://github.com/jackwener/OpenCLI/pull/1220
- fix(chatgpt): fix image generation detection and output path by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1218
- feat(deepseek): add vision mode support by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1216
- feat(boss): add --jobType filter, fix experience codes, surface bossOnline by @huanghuoguoguo in https://github.com/jackwener/OpenCLI/pull/1231
- fix(twitter/following): limit>50 now works via cursor pagination by @Astro-Han in https://github.com/jackwener/OpenCLI/pull/1233
- feat(facebook): add marketplace read commands by @hanzili in https://github.com/jackwener/OpenCLI/pull/1221
- feat(browser): support multiple Chrome profiles by @jackwener in https://github.com/jackwener/OpenCLI/pull/1235
- feat(zhihu) add collection list and list collection content by @lakako in https://github.com/jackwener/OpenCLI/pull/1234
- feat(update-check): show extension update notice on exit by @jackwener in https://github.com/jackwener/OpenCLI/pull/1236
- refactor(adapter): split browser command signatures by @jackwener in https://github.com/jackwener/OpenCLI/pull/1237
- refactor(cli): move external management under external by @jackwener in https://github.com/jackwener/OpenCLI/pull/1238
- fix: stabilize manifest paths on Windows by @jackwener in https://github.com/jackwener/OpenCLI/pull/1239
- docs: clarify OpenCLI extension paths by @jackwener in https://github.com/jackwener/OpenCLI/pull/1240
- refactor: simplify diagnostics and low-use errors by @jackwener in https://github.com/jackwener/OpenCLI/pull/1241
- chore: enforce Node 21 baseline by @jackwener in https://github.com/jackwener/OpenCLI/pull/1242
- docs: refresh stale entry and developer docs by @jackwener in https://github.com/jackwener/OpenCLI/pull/1244
- docs: narrow smart-search skill trigger scope by @jackwener in https://github.com/jackwener/OpenCLI/pull/1248
- feat(observation): add runtime trace capture by @jackwener in https://github.com/jackwener/OpenCLI/pull/1255
- feat(claude): add Claude adapter by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1252
- feat(weibo): add favorites + publish CLI commands by @hszhsz in https://github.com/jackwener/OpenCLI/pull/1253
- refactor(trace): retire diagnostic repair path by @jackwener in https://github.com/jackwener/OpenCLI/pull/1257
- feat(trace): prune retained artifacts by @jackwener in https://github.com/jackwener/OpenCLI/pull/1258
- chore: bump version to 1.7.9 (extension 1.0.3) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1259
New Contributors
- @sontjer made their first contribution in https://github.com/jackwener/OpenCLI/pull/1179
- @wjjsn made their first contribution in https://github.com/jackwener/OpenCLI/pull/1188
- @darthjaja6 made their first contribution in https://github.com/jackwener/OpenCLI/pull/1164
- @hanzili made their first contribution in https://github.com/jackwener/OpenCLI/pull/1180
- @yaokuku123 made their first contribution in https://github.com/jackwener/OpenCLI/pull/1173
- @ZepPellN made their first contribution in https://github.com/jackwener/OpenCLI/pull/1211
- @m72900024 made their first contribution in https://github.com/jackwener/OpenCLI/pull/1220
- @huanghuoguoguo made their first contribution in https://github.com/jackwener/OpenCLI/pull/1231
- @lakako made their first contribution in https://github.com/jackwener/OpenCLI/pull/1234
- @hszhsz made their first contribution in https://github.com/jackwener/OpenCLI/pull/1253
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.7.8...v1.7.9
- PowerChina procurement search adapter
- Toutiao articles adapter for creator dashboard
- WeChat create-draft and drafts commands
Full changelog
What's Changed
- fix(sinafinance): match stock symbol in addition to name by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1158
- feat(powerchina): add procurement search adapter by @leozejia in https://github.com/jackwener/OpenCLI/pull/1155
- fix(deepseek): fix history titles and resume conversation on ask by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1153
- feat(toutiao): add articles adapter for 头条号 creator dashboard by @arronfly in https://github.com/jackwener/OpenCLI/pull/1148
- fix(amazon): fall back discussion to product page by @leozejia in https://github.com/jackwener/OpenCLI/pull/1154
- feat(weixin): add create-draft and drafts commands for Official Account by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1095
- fix(chatgpt-app): use AX send flow and support zh-CN generating state by @961882 in https://github.com/jackwener/OpenCLI/pull/1135
- chore(extension): restore pre-1.6.8 neon terminal icons by @jackwener in https://github.com/jackwener/OpenCLI/pull/1177
- chore: bump version to 1.7.8 by @jackwener in https://github.com/jackwener/OpenCLI/pull/1178
New Contributors
- @arronfly made their first contribution in https://github.com/jackwener/OpenCLI/pull/1148
- @961882 made their first contribution in https://github.com/jackwener/OpenCLI/pull/1135
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.7.7...v1.7.8
- 51job adapter with search, hot, detail, company
- Weread ai-outline command
- Web/download with video/audio/iframe support
Full changelog
1.7.7 (2026-04-23)
Features
- 51job — comprehensive adapter:
search,hot,detail,company. (#1132) - weread —
ai-outlinecommand for AI-generated book outlines. (#1141) - web/download — video/audio/iframe download +
--stdoutstreaming. (#1146) - download — hardened HTML→Markdown pipeline with better element handling. (#1143)
- verify — fixture-based value validation + skill docs for COOKIE pitfalls. (#1131)
- agent-native retrospective — analyze / verify guards / fixture content checks. (#1133)
- twitter — expose
has_mediaandmedia_urlscolumns. (#1115)
Bug Fixes
- core — quality audit fixes: elapsed=0 display, daemon error handler state reset, cause chain truncation guard, download cookie expiry, launcher async kill, verbose error logging. (#1151)
- daemon — allow extension ping CORS for reachability probing. (#1150)
- deepseek — separate thinking process from response in
--thinkmode. (#1142) - deepseek — use position-based model selection instead of text matching. (#1123)
- weread/book — add fallback selectors for reader page without cover. (#1138)
- xiaoyuzhou — correct podcast-episodes API endpoint. (#1129)
- bilibili — resolve full video URLs and preserve full description. (#1118)
Docs
- Fix stale references in READMEs and autofix skill doc. (#1130)
- Restore and rewrite
opencli-usageas orientation skill. (#1128)
What's Changed
- docs: add CHANGELOG entry for 1.7.6 by @jackwener in https://github.com/jackwener/OpenCLI/pull/1127
- docs(skills): restore and rewrite opencli-usage as orientation skill by @jackwener in https://github.com/jackwener/OpenCLI/pull/1128
- feat(twitter): expose has_media and media_urls columns by @Dylanwooo in https://github.com/jackwener/OpenCLI/pull/1115
- fix(deepseek): use position-based model selection instead of text matching by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1123
- fix(bilibili): resolve full video URLs and preserve full description by @haoliangli in https://github.com/jackwener/OpenCLI/pull/1118
- docs: fix stale references in READMEs and autofix skill by @jackwener in https://github.com/jackwener/OpenCLI/pull/1130
- feat(verify): fixture-based value validation + skill docs for COOKIE pitfalls by @jackwener in https://github.com/jackwener/OpenCLI/pull/1131
- feat: agent-native retrospective — analyze / verify guards / fixture content checks by @jackwener in https://github.com/jackwener/OpenCLI/pull/1133
- fix(xiaoyuzhou): correct podcast-episodes API endpoint by @CrisJing in https://github.com/jackwener/OpenCLI/pull/1129
- fix(weread/book): add fallback selectors for reader page without cover by @lw-yang in https://github.com/jackwener/OpenCLI/pull/1138
- feat(weread): add ai-outline command by @lw-yang in https://github.com/jackwener/OpenCLI/pull/1141
- feat(51job): comprehensive adapter (search / hot / detail / company) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1132
- feat(download): harden HTML→Markdown pipeline by @jackwener in https://github.com/jackwener/OpenCLI/pull/1143
- fix(deepseek): separate thinking process from response in --think mode by @kagura-agent in https://github.com/jackwener/OpenCLI/pull/1142
- feat(web,download): absorb #1048 — video/audio/iframe + --stdout by @jackwener in https://github.com/jackwener/OpenCLI/pull/1146
- fix(daemon): allow Browser Bridge ping probe via targeted CORS by @jackwener in https://github.com/jackwener/OpenCLI/pull/1150
- fix: quality audit bug fixes across core modules by @jackwener in https://github.com/jackwener/OpenCLI/pull/1151
- chore: bump version to 1.7.7 by @jackwener in https://github.com/jackwener/OpenCLI/pull/1152
New Contributors
- @Dylanwooo made their first contribution in https://github.com/jackwener/OpenCLI/pull/1115
- @CrisJing made their first contribution in https://github.com/jackwener/OpenCLI/pull/1129
- @lw-yang made their first contribution in https://github.com/jackwener/OpenCLI/pull/1138
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.7.6...v1.7.7
- Agent-native browser payload with network bodies, HTML tree budgets, and extract command
- Network filtering for request discovery and selector-first browser commands (get/click/type/select)
- New platform integrations: Bilibili videos, DeepSeek file uploads, Twitter tweets; automation window lifecycle flags (--live, --focus)
Full changelog
What's New
Features
--liveand--focusflags — keep automation windows open after command execution (#1122)- Bilibili video — new
bilibili videocommand (#1110) - DeepSeek file upload —
--fileflag for ask command (#1093) - Agent-native browser payload — network bodies, html tree budgets, extract command (#1104)
- Network
--filter— field filtering for agent-native request discovery (#1103) - Selector-first find —
get/click/type/selectbrowser commands (#1112) - Compound expansion — cascading stale-ref retry + bbox dedup (#1116)
- Twitter tweets — new tweets command (#1106 timeout fix)
Improvements
- opencli-browser skill restored and upgraded (#1119)
- YouTube — fall back to Videos tab when Home tab has no videos (#1109)
Extension (1.0.2)
- CDP improvements for compound expansion and target resolution
What's Changed
- fix(jianyu): block inaccessible detail links and verification pages by @leozejia in https://github.com/jackwener/OpenCLI/pull/918
- docs: add CHANGELOG entry for 1.7.5 by @jackwener in https://github.com/jackwener/OpenCLI/pull/1097
- feat(twitter): add tweets command for fetching user's recent posts by @jackwener in https://github.com/jackwener/OpenCLI/pull/1098
- fix(jianyu): keep accessible detail urls in search by @jackwener in https://github.com/jackwener/OpenCLI/pull/1099
- feat(browser): rewrite network for agent-native discovery by @jackwener in https://github.com/jackwener/OpenCLI/pull/1100
- feat(browser): remove silent html truncation, add --as json by @jackwener in https://github.com/jackwener/OpenCLI/pull/1102
- feat(browser): network --filter for agent-native request discovery by @jackwener in https://github.com/jackwener/OpenCLI/pull/1103
- feat(browser): agent-native payload — network bodies, html tree budgets, extract command by @jackwener in https://github.com/jackwener/OpenCLI/pull/1104
- feat(browser): selector-first find + get/click/type/select (A2+A3) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1112
- fix(youtube): fall back to Videos tab when Home tab has no videos by @kagura-agent in https://github.com/jackwener/OpenCLI/pull/1109
- feat(deepseek): add file upload support via --file flag by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1093
- feat(bilibili): add video command by @haoliangli in https://github.com/jackwener/OpenCLI/pull/1110
- fix(twitter): add 5s network timeout to resolveTwitterQueryId by @fuleinist in https://github.com/jackwener/OpenCLI/pull/1106
- feat(browser): compound expansion + cascading stale-ref + bbox 0.99 dedup by @jackwener in https://github.com/jackwener/OpenCLI/pull/1116
- docs(skills): restore and upgrade opencli-browser skill by @jackwener in https://github.com/jackwener/OpenCLI/pull/1119
- feat(cli): add --live and --focus flags for automation window lifecycle by @jackwener in https://github.com/jackwener/OpenCLI/pull/1122
- docs: sync --live and --focus window docs by @jackwener in https://github.com/jackwener/OpenCLI/pull/1125
- chore: bump version to 1.7.6, extension to 1.0.2 by @jackwener in https://github.com/jackwener/OpenCLI/pull/1126
New Contributors
- @haoliangli made their first contribution in https://github.com/jackwener/OpenCLI/pull/1110
- @fuleinist made their first contribution in https://github.com/jackwener/OpenCLI/pull/1106
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.7.5...v1.7.6
- 13 Eastmoney finance adapters (quote, rank, kline, sectors, etf, holders, money-flow, northbound, longhu, kuaixun, convertible, index-board, announcement)
- DeepSeek browser adapter with ask, history, new, read, status
- Twitter GraphQL lists (list-tweets, list-add, list-remove)
Full changelog
What's New
Features
- DeepSeek adapter — browser-based ask, history, new, read, status (#1088)
- Eastmoney adapters — 13 finance adapters: quote, rank, kline, sectors, etf, holders, money-flow, northbound, longhu, kuaixun, convertible, index-board, announcement (#1091)
- Twitter GraphQL lists — list-tweets, list-add, list-remove (#1076)
- Download saved path —
web readandweixin downloadnow show saved file location (#1042) - Cross-origin iframe — CDP execution context support for iframed content (#1084)
Improvements
- Multi-tab routing — hardened target isolation and tab routing (#1072)
- Skill consolidation — 6 skills merged into 3, removed mechanical commands (#1094)
- Docs rewrite — browser sections rewritten for AI Agent use case (#1080)
Extension (1.0.1)
- Multi-tab routing support (#1072)
- Cross-origin iframe CDP contexts (#1084)
Bug Fixes
- Per-workspace idle timeout for browser sessions (#1064)
- Xiaoyuzhou: migrate from broken SSR to authenticated API (#1059)
- Xiaohongshu: detect draft save success (#1060)
- Zsxq: separate content from title (#1079)
What's Changed
- feat(nowcoder): add 牛客网 adapter with 16 commands by @Cosmostima in https://github.com/jackwener/OpenCLI/pull/1036
- fix(xiaohongshu): verify title input sticks on publish by @Astro-Han in https://github.com/jackwener/OpenCLI/pull/1050
- fix(twitter): repair lists scraping from detail pages by @Astro-Han in https://github.com/jackwener/OpenCLI/pull/1053
- fix(xiaohongshu): detect current draft save success by @Astro-Han in https://github.com/jackwener/OpenCLI/pull/1060
- docs: add adapter docs for eastmoney, tdx, ths (fix CI) by @jackwener in https://github.com/jackwener/OpenCLI/pull/1061
- fix(xiaoyuzhou): migrate from broken SSR scraping to authenticated API (fixes #1023) by @kagura-agent in https://github.com/jackwener/OpenCLI/pull/1059
- fix(antigravity): implement configurable timeout and auto-reconnect for serve by @deepziyu in https://github.com/jackwener/OpenCLI/pull/859
- refactor(antigravity): keep timeout parsing local by @jackwener in https://github.com/jackwener/OpenCLI/pull/1063
- fix(extension): per-workspace idle timeout for browser sessions by @jackwener in https://github.com/jackwener/OpenCLI/pull/1064
- refactor: clean up design debt — deprecated APIs, arg validation, dead plugin code by @jackwener in https://github.com/jackwener/OpenCLI/pull/1065
- fix(e2e): accept CONFIG_ERROR in xiaoyuzhou E2E guard by @jackwener in https://github.com/jackwener/OpenCLI/pull/1066
- feat: add Chinese academic & policy database adapters by @Muuuun in https://github.com/jackwener/OpenCLI/pull/243
- fix(zsxq): separate content field from title, remove title truncation by @Pandas886 in https://github.com/jackwener/OpenCLI/pull/1079
- feat(twitter): GraphQL-based lists + list-tweets + list-add/remove by @huanghe in https://github.com/jackwener/OpenCLI/pull/1076
- docs: rewrite browser sections — browser is for AI Agents by @jackwener in https://github.com/jackwener/OpenCLI/pull/1080
- fix(browser): harden multi-tab routing and target isolation by @freemandealer in https://github.com/jackwener/OpenCLI/pull/1072
- feat(browser): add cross-origin iframe support via CDP execution contexts by @xzygis in https://github.com/jackwener/OpenCLI/pull/1084
- feat(output): optimize table formatting with width capping and key/value layout by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1081
- revert: undo #1081 output renderer patch by @jackwener in https://github.com/jackwener/OpenCLI/pull/1085
- feat(download): show saved file path in web read and weixin download output by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1042
- feat(deepseek): add DeepSeek browser adapter by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1088
- chore(clis/eastmoney): mirror 13 adapters + _secid helper as Phase A oracle by @jackwener in https://github.com/jackwener/OpenCLI/pull/1091
- refactor: consolidate 6 skills into 3, remove mechanical commands by @jackwener in https://github.com/jackwener/OpenCLI/pull/1094
- chore: bump version to 1.7.5, extension to 1.0.1 by @jackwener in https://github.com/jackwener/OpenCLI/pull/1096
New Contributors
- @Cosmostima made their first contribution in https://github.com/jackwener/OpenCLI/pull/1036
- @Pandas886 made their first contribution in https://github.com/jackwener/OpenCLI/pull/1079
- @huanghe made their first contribution in https://github.com/jackwener/OpenCLI/pull/1076
- @xzygis made their first contribution in https://github.com/jackwener/OpenCLI/pull/1084
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.7.4...v1.7.5
- xiaohongshu: require signed note URLs
- doubao: harden ask response parsing
- external: use safe npm install for dws
- YouTube adapter expanded with feed, history, watch-later, subscriptions, playlist management, and engagement operations
- Stock market hot ranking adapters for eastmoney, tdx, ths
- Ref-Backed Locator for browser actions
Full changelog
What's Changed
- chore: prune legacy config switches by @jackwener in https://github.com/jackwener/OpenCLI/pull/998
- fix: remove duplicate extension zip from releases by @jackwener in https://github.com/jackwener/OpenCLI/pull/1001
- docs: clean up README Highlights section by @jackwener in https://github.com/jackwener/OpenCLI/pull/1008
- docs: sync Highlights cleanup to zh-CN README and docs site by @jackwener in https://github.com/jackwener/OpenCLI/pull/1009
- chore(deps): bump vitest from 4.1.2 to 4.1.4 by @dependabot[bot] in https://github.com/jackwener/OpenCLI/pull/1005
- chore(deps): bump @types/node from 25.5.2 to 25.6.0 by @dependabot[bot] in https://github.com/jackwener/OpenCLI/pull/1004
- chore(deps): bump undici from 8.0.2 to 8.1.0 by @dependabot[bot] in https://github.com/jackwener/OpenCLI/pull/1003
- chore(ci): bump softprops/action-gh-release from 2.6.1 to 3.0.0 by @dependabot[bot] in https://github.com/jackwener/OpenCLI/pull/1002
- Add bookmark_count field to bookmarks command by @forvendettaw in https://github.com/jackwener/OpenCLI/pull/1010
- fix(twitter): register lists command in manifest by @jackwener in https://github.com/jackwener/OpenCLI/pull/1011
- feat: Ref-Backed Locator for browser actions by @jackwener in https://github.com/jackwener/OpenCLI/pull/1016
- fix(chatgpt): support Chinese UI for model selector by @mademing68092354-glitch in https://github.com/jackwener/OpenCLI/pull/1006
- fix(plugin): install monorepo sub-plugin deps when not hoisted by @Benjamin-eecs in https://github.com/jackwener/OpenCLI/pull/1007
- feat(bilibili): favorite command supports specifying fid by @xavier-cai in https://github.com/jackwener/OpenCLI/pull/1013
- feat(uiverse): add Uiverse code and preview adapters by @CissiBot in https://github.com/jackwener/OpenCLI/pull/1000
- fix(xiaohongshu): require signed note URLs by @Astro-Han in https://github.com/jackwener/OpenCLI/pull/996
- Feat/douban book subject by @warkcod in https://github.com/jackwener/OpenCLI/pull/993
- feat(grok): add image command for grok.com image generation by @flizzywine in https://github.com/jackwener/OpenCLI/pull/906
- fix(doubao): harden ask response parsing by @Astro-Han in https://github.com/jackwener/OpenCLI/pull/933
- fix: auto-restart stale daemon and improve connection error messages by @jackwener in https://github.com/jackwener/OpenCLI/pull/1028
- fix(deamon&extension): preserve network capture and surface extension mismatch diagnostics by @freemandealer in https://github.com/jackwener/OpenCLI/pull/1030
- fix(external): use safe npm install for dws by @jackwener in https://github.com/jackwener/OpenCLI/pull/1033
- feat: add hot stock ranking adapters for eastmoney, tdx, ths by @dividduang in https://github.com/jackwener/OpenCLI/pull/1025
- feat(binance): depth shows both bids and asks by @harveyyue in https://github.com/jackwener/OpenCLI/pull/1019
- feat(xiaoyuzhou): add episode download and transcript support by @eeee0717 in https://github.com/jackwener/OpenCLI/pull/1031
- feat(youtube): add feed, history, watch-later, subscriptions, playlist, like, unlike, subscribe, unsubscribe by @sunbird89629 in https://github.com/jackwener/OpenCLI/pull/1029
- chore: bump version to 1.7.4 by @jackwener in https://github.com/jackwener/OpenCLI/pull/1045
New Contributors
- @forvendettaw made their first contribution in https://github.com/jackwener/OpenCLI/pull/1010
- @mademing68092354-glitch made their first contribution in https://github.com/jackwener/OpenCLI/pull/1006
- @Benjamin-eecs made their first contribution in https://github.com/jackwener/OpenCLI/pull/1007
- @xavier-cai made their first contribution in https://github.com/jackwener/OpenCLI/pull/1013
- @CissiBot made their first contribution in https://github.com/jackwener/OpenCLI/pull/1000
- @flizzywine made their first contribution in https://github.com/jackwener/OpenCLI/pull/906
- @freemandealer made their first contribution in https://github.com/jackwener/OpenCLI/pull/1030
- @dividduang made their first contribution in https://github.com/jackwener/OpenCLI/pull/1025
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.7.3...v1.7.4
- Extension version decoupled from CLI version
- Removed OPENCLI_SKIP_FETCH environment variable
- ChatGPT adapters renamed: desktop → chatgpt-app, web → chatgpt
- Hardened anti-detection flows in Xiaohongshu adapter
- Addressed code audit findings (C1-C4, I1, I4, I6) and round 2 findings (safety, hot-reload, error diagnostics)
- New Beike (贝壳找房) adapter
- New Mubu adapter with 5 commands
- Maimai talent search with multi-dimensional filters
Full changelog
What's Changed
- feat(discord-app): add delete command to remove a message by ID by @himself65 in https://github.com/jackwener/OpenCLI/pull/976
- feat(maimai): add talent search with multi-dimensional filters by @ivanxia1988 in https://github.com/jackwener/OpenCLI/pull/977
- feat(ke): add Beike (贝壳找房) adapter by @runzhliu in https://github.com/jackwener/OpenCLI/pull/975
- feat(bilibili): add feed-detail and enhance feed command by @harveyyue in https://github.com/jackwener/OpenCLI/pull/974
- feat(clis/chatgptweb): add ChatGPT web image generation command by @asimons81 in https://github.com/jackwener/OpenCLI/pull/973
- fix(xiaohongshu): harden anti-detection flows by @Astro-Han in https://github.com/jackwener/OpenCLI/pull/980
- fix(douban): classify tv search results correctly by @Astro-Han in https://github.com/jackwener/OpenCLI/pull/979
- fix: address code audit findings (C1-C4, I1, I4, I6) by @jackwener in https://github.com/jackwener/OpenCLI/pull/981
- fix: code audit round 2 — safety, hot-reload, error diagnostics by @jackwener in https://github.com/jackwener/OpenCLI/pull/982
- feat: decouple extension version from CLI version by @jackwener in https://github.com/jackwener/OpenCLI/pull/985
- fix: clean up stale .yaml adapter files from older versions (#953) by @jackwener in https://github.com/jackwener/OpenCLI/pull/986
- docs: document undocumented environment variables by @jackwener in https://github.com/jackwener/OpenCLI/pull/983
- Remove unused OPENCLI_SKIP_FETCH env var by @jackwener in https://github.com/jackwener/OpenCLI/pull/987
- Rename chatgpt adapters: desktop → chatgpt-app, web → chatgpt by @jackwener in https://github.com/jackwener/OpenCLI/pull/989
- Fix automation window not closing on command failure by @jackwener in https://github.com/jackwener/OpenCLI/pull/992
- refactor: unify OPENCLI_VERBOSE and DEBUG=opencli by @jackwener in https://github.com/jackwener/OpenCLI/pull/991
- feat(mubu): add Mubu adapter with 5 commands by @SherlockSalvatore in https://github.com/jackwener/OpenCLI/pull/964
- chore: bump version to 1.7.3 by @jackwener in https://github.com/jackwener/OpenCLI/pull/997
New Contributors
- @ivanxia1988 made their first contribution in https://github.com/jackwener/OpenCLI/pull/977
- @runzhliu made their first contribution in https://github.com/jackwener/OpenCLI/pull/975
- @asimons81 made their first contribution in https://github.com/jackwener/OpenCLI/pull/973
- @SherlockSalvatore made their first contribution in https://github.com/jackwener/OpenCLI/pull/964
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.7.2...v1.7.3
- Update binance adapter imports from src/clis/binance to clis/binance
- Binance adapters moved from src/clis/ to clis/
- Twitter lists command for user list retrieval
- Weibo support for for-you and following feed types
Full changelog
What's Changed
- migrate: move binance adapters from src/clis/ to clis/ by @jackwener in https://github.com/jackwener/OpenCLI/pull/967
- refactor: smart sync adapters — hash-based diff instead of full copy by @jackwener in https://github.com/jackwener/OpenCLI/pull/966
- fix: include adapter tests in default npm test by @jackwener in https://github.com/jackwener/OpenCLI/pull/969
- fix(zsxq): accept topic_id as string in getTopicFromResponse by @fgksgf in https://github.com/jackwener/OpenCLI/pull/963
- feat(twitter): add lists command to retrieve user lists by @isanwenyu in https://github.com/jackwener/OpenCLI/pull/958
- feat(weibo): support for-you and following feed types by @iiilin in https://github.com/jackwener/OpenCLI/pull/959
- fix(zsxq): update topic test for group_id parameter by @jackwener in https://github.com/jackwener/OpenCLI/pull/971
- chore: bump version to 1.7.2 by @jackwener in https://github.com/jackwener/OpenCLI/pull/972
New Contributors
- @fgksgf made their first contribution in https://github.com/jackwener/OpenCLI/pull/963
- @isanwenyu made their first contribution in https://github.com/jackwener/OpenCLI/pull/958
- @iiilin made their first contribution in https://github.com/jackwener/OpenCLI/pull/959
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.7.1...v1.7.2
- Custom TypeScript adapters no longer supported
- Codegen string escaping
- Diagnostic body redaction
- YAML error envelope output format
- Upstream issue filing in opencli-autofix
- Persistent daemon (removed idle timeout)
- Auto-close adapter windows
- OPENCLI_WINDOW_FOCUSED configuration option
Full changelog
What's Changed
- refactor: make daemon persistent, remove idle timeout by @jackwener in https://github.com/jackwener/OpenCLI/pull/913
- docs: remove daemon status/restart references by @jackwener in https://github.com/jackwener/OpenCLI/pull/914
- fix(xiaoe): resolve missing episodes for long courses via auto-scroll by @Clearner1 in https://github.com/jackwener/OpenCLI/pull/904
- feat: auto-close adapter windows, add OPENCLI_WINDOW_FOCUSED, document config by @jackwener in https://github.com/jackwener/OpenCLI/pull/915
- fix(jianyu): stabilize search and add detail extraction contract by @leozejia in https://github.com/jackwener/OpenCLI/pull/912
- fix(jianyu): avoid early API bucket cutoff by @jackwener in https://github.com/jackwener/OpenCLI/pull/916
- chore: release v1.7.0 by @jackwener in https://github.com/jackwener/OpenCLI/pull/917
- fix: restore cross-platform entries in package-lock.json by @jackwener in https://github.com/jackwener/OpenCLI/pull/919
New Contributors
- @Clearner1 made their first contribution in https://github.com/jackwener/OpenCLI/pull/904
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.6.10...v1.7.0
- Migrate CLI adapters from YAML to TypeScript
- New adapters: Gitee, JD.com, Taobao, CNKI
- Fast-path completion and version commands
Full changelog
What's Changed
- feat: verified generate pipeline with structured contract by @jackwener in https://github.com/jackwener/OpenCLI/pull/878
- chore: release v1.6.9 by @jackwener in https://github.com/jackwener/OpenCLI/pull/875
- test: fix Windows verified-path CI assertion by @jackwener in https://github.com/jackwener/OpenCLI/pull/879
- fix(docs): add missing .md extension to adapter index links by @FnExpress in https://github.com/jackwener/OpenCLI/pull/874
- feat: opencli-generate skill spec + thin wrapper by @jackwener in https://github.com/jackwener/OpenCLI/pull/880
- fix: typecheck regression in skill-generate test by @jackwener in https://github.com/jackwener/OpenCLI/pull/881
- feat: P2 EarlyHint callback channel for cost gating by @jackwener in https://github.com/jackwener/OpenCLI/pull/882
- refactor: rename operate to browser by @jackwener in https://github.com/jackwener/OpenCLI/pull/883
- refactor: remove version field from GenerateOutcome and EarlyHint by @jackwener in https://github.com/jackwener/OpenCLI/pull/884
- docs: restructure README narrative by @jackwener in https://github.com/jackwener/OpenCLI/pull/885
- refactor: migrate all CLI adapters from YAML to TypeScript by @jackwener in https://github.com/jackwener/OpenCLI/pull/887
- refactor: eliminate any types in core (non-clis) files by @jackwener in https://github.com/jackwener/OpenCLI/pull/886
- refactor(skills): merge opencli-generate into opencli-explorer by @jackwener in https://github.com/jackwener/OpenCLI/pull/891
- feat(skills): add External CLI section to opencli-usage by @jackwener in https://github.com/jackwener/OpenCLI/pull/893
- refactor(skills): unify command reference by site instead of technology by @jackwener in https://github.com/jackwener/OpenCLI/pull/894
- docs(autofix): add "Empty ≠ Broken" pre-check before repair loop by @jackwener in https://github.com/jackwener/OpenCLI/pull/896
- feat: add jimeng workspace create command by @myluke in https://github.com/jackwener/OpenCLI/pull/895
- fix: retry on No window with id CDP error by @elias-didoo in https://github.com/jackwener/OpenCLI/pull/892
- Feat : add Gitee adapters and docs by @zwang-JS in https://github.com/jackwener/OpenCLI/pull/845
- feat: add jimeng workspaces list command by @myluke in https://github.com/jackwener/OpenCLI/pull/897
- perf: fast-path completion/version/shell-scripts to bypass full discovery by @jackwener in https://github.com/jackwener/OpenCLI/pull/898
- feat(jd,taobao,cnki): add JD, Taobao, and CNKI adapters by @Muuuun in https://github.com/jackwener/OpenCLI/pull/248
- fix: repair baseline main ci checks by @Astro-Han in https://github.com/jackwener/OpenCLI/pull/901
- docs: fix desktop adapter commands to match actual CLI output by @luka2chat in https://github.com/jackwener/OpenCLI/pull/900
- feat: replace tabId with targetId as cross-layer page identity by @jackwener in https://github.com/jackwener/OpenCLI/pull/899
- docs: mention refreshing skills in update instructions by @jackwener in https://github.com/jackwener/OpenCLI/pull/902
- refactor: unify browser error classification and deduplicate retry logic by @jackwener in https://github.com/jackwener/OpenCLI/pull/908
- chore: bump version to 1.6.10 by @jackwener in https://github.com/jackwener/OpenCLI/pull/910
New Contributors
- @FnExpress made their first contribution in https://github.com/jackwener/OpenCLI/pull/874
- @myluke made their first contribution in https://github.com/jackwener/OpenCLI/pull/895
- @elias-didoo made their first contribution in https://github.com/jackwener/OpenCLI/pull/892
- @zwang-JS made their first contribution in https://github.com/jackwener/OpenCLI/pull/845
- @Muuuun made their first contribution in https://github.com/jackwener/OpenCLI/pull/248
- @luka2chat made their first contribution in https://github.com/jackwener/OpenCLI/pull/900
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.6.9...v1.6.10
What's Changed
- feat: verified generate pipeline with structured contract by @jackwener in https://github.com/jackwener/OpenCLI/pull/878
- chore: release v1.6.9 by @jackwener in https://github.com/jackwener/OpenCLI/pull/875
- test: fix Windows verified-path CI assertion by @jackwener in https://github.com/jackwener/OpenCLI/pull/879
- fix(docs): add missing .md extension to adapter index links by @FnExpress in https://github.com/jackwener/OpenCLI/pull/874
- feat: opencli-generate skill spec + thin wrapper by @jackwener in https://github.com/jackwener/OpenCLI/pull/880
- fix: typecheck regression in skill-generate test by @jackwener in https://github.com/jackwener/OpenCLI/pull/881
- feat: P2 EarlyHint callback channel for cost gating by @jackwener in https://github.com/jackwener/OpenCLI/pull/882
- refactor: rename operate to browser by @jackwener in https://github.com/jackwener/OpenCLI/pull/883
- refactor: remove version field from GenerateOutcome and EarlyHint by @jackwener in https://github.com/jackwener/OpenCLI/pull/884
- docs: restructure README narrative by @jackwener in https://github.com/jackwener/OpenCLI/pull/885
- refactor: migrate all CLI adapters from YAML to TypeScript by @jackwener in https://github.com/jackwener/OpenCLI/pull/887
- refactor: eliminate any types in core (non-clis) files by @jackwener in https://github.com/jackwener/OpenCLI/pull/886
- refactor(skills): merge opencli-generate into opencli-explorer by @jackwener in https://github.com/jackwener/OpenCLI/pull/891
- feat(skills): add External CLI section to opencli-usage by @jackwener in https://github.com/jackwener/OpenCLI/pull/893
- refactor(skills): unify command reference by site instead of technology by @jackwener in https://github.com/jackwener/OpenCLI/pull/894
- docs(autofix): add "Empty ≠ Broken" pre-check before repair loop by @jackwener in https://github.com/jackwener/OpenCLI/pull/896
- feat: add jimeng workspace create command by @myluke in https://github.com/jackwener/OpenCLI/pull/895
- fix: retry on No window with id CDP error by @elias-didoo in https://github.com/jackwener/OpenCLI/pull/892
- Feat : add Gitee adapters and docs by @zwang-JS in https://github.com/jackwener/OpenCLI/pull/845
- feat: add jimeng workspaces list command by @myluke in https://github.com/jackwener/OpenCLI/pull/897
- perf: fast-path completion/version/shell-scripts to bypass full discovery by @jackwener in https://github.com/jackwener/OpenCLI/pull/898
- feat(jd,taobao,cnki): add JD, Taobao, and CNKI adapters by @Muuuun in https://github.com/jackwener/OpenCLI/pull/248
- fix: repair baseline main ci checks by @Astro-Han in https://github.com/jackwener/OpenCLI/pull/901
- docs: fix desktop adapter commands to match actual CLI output by @luka2chat in https://github.com/jackwener/OpenCLI/pull/900
- feat: replace tabId with targetId as cross-layer page identity by @jackwener in https://github.com/jackwener/OpenCLI/pull/899
- docs: mention refreshing skills in update instructions by @jackwener in https://github.com/jackwener/OpenCLI/pull/902
- refactor: unify browser error classification and deduplicate retry logic by @jackwener in https://github.com/jackwener/OpenCLI/pull/908
- chore: bump version to 1.6.10 by @jackwener in https://github.com/jackwener/OpenCLI/pull/910
- chore: bump extension version to 1.6.10 by @jackwener in https://github.com/jackwener/OpenCLI/pull/911
New Contributors
- @FnExpress made their first contribution in https://github.com/jackwener/OpenCLI/pull/874
- @myluke made their first contribution in https://github.com/jackwener/OpenCLI/pull/895
- @elias-didoo made their first contribution in https://github.com/jackwener/OpenCLI/pull/892
- @zwang-JS made their first contribution in https://github.com/jackwener/OpenCLI/pull/845
- @Muuuun made their first contribution in https://github.com/jackwener/OpenCLI/pull/248
- @luka2chat made their first contribution in https://github.com/jackwener/OpenCLI/pull/900
Full Changelog: https://github.com/jackwener/OpenCLI/compare/v1.6.9...v1.6.10
- Self-Repair protocol for automatic adapter fixing
- GitHub Trending, Binance, Weather adapters
- Quark Drive adapter
- Session-level network capture for CDPPage
- CDP console messages support
- 1688 assets downloadable
Full changelog
What's Changed
- refactor: centralize build path resolution by @jackwener in https://github.com/jackwener/opencli/pull/807
- fix: add safety boundaries to diagnostic output by @jackwener in https://github.com/jackwener/opencli/pull/806
- test: remove flaky bloomberg e2e tests by @jackwener in https://github.com/jackwener/opencli/pull/818
- fix(scaffold): replace non-existent extract step with select by @jackwener in https://github.com/jackwener/opencli/pull/814
- feat(cdp): implement session-level network capture for CDPPage by @jackwener in https://github.com/jackwener/opencli/pull/815
- feat(operate): unify network capture + implement CDP consoleMessages by @jackwener in https://github.com/jackwener/opencli/pull/816
- feat:add 1688 assets downloadable by @BruceLoveDecimal in https://github.com/jackwener/opencli/pull/820
- feat(xueqiu): add kline and groups adapters by @williamxie1989 in https://github.com/jackwener/opencli/pull/809
- feat(extension): v1.6.8 — fix scripting permission + refresh icons by @jackwener in https://github.com/jackwener/opencli/pull/822
- refactor: extract shared scoring + consolidate time utils by @jackwener in https://github.com/jackwener/opencli/pull/823
- feat(linux-do): split topic content into a dedicated command by @tiaot33 in https://github.com/jackwener/opencli/pull/821
- refactor: remove scoring heuristic, use noise filter + structured metadata by @jackwener in https://github.com/jackwener/opencli/pull/824
- chore: release v1.6.8 by @jackwener in https://github.com/jackwener/opencli/pull/825
New Contributors
- @williamxie1989 made their first contribution in https://github.com/jackwener/opencli/pull/809
Full Changelog: https://github.com/jackwener/opencli/compare/v1.6.7...v1.6.8
Minor fixes and improvements.
Full changelog
What's Changed
- fix: avoid inserting completion config inside multi-line shell commands by @kaichen in https://github.com/jackwener/opencli/pull/796
- feat: structured diagnostic output for AI adapter repair by @jackwener in https://github.com/jackwener/opencli/pull/802
New Contributors
- @kaichen made their first contribution in https://github.com/jackwener/opencli/pull/796
Full Changelog: https://github.com/jackwener/opencli/compare/v1.6.6...v1.6.7
What's Changed
- fix: avoid inserting completion config inside multi-line shell commands by @kaichen in https://github.com/jackwener/opencli/pull/796
- feat: structured diagnostic output for AI adapter repair by @jackwener in https://github.com/jackwener/opencli/pull/802
- chore: bump version to 1.6.7 by @jackwener in https://github.com/jackwener/opencli/pull/803
New Contributors
- @kaichen made their first contribution in https://github.com/jackwener/opencli/pull/796
Full Changelog: https://github.com/jackwener/opencli/compare/v1.6.6...v1.6.7
## What's Changed * fix: expose runtime deps to copied user adapters * chore: bump version to 1.6.6
- Gemini deep-research workflow with docs export
- LessWrong adapter
- AutoResearch framework with Layer 4 Save-as-CLI eval
- Instagram post, reel, story publishing
- Twitter --images flag for posts
- opencli operate command for browser control from Claude Code
Full changelog
What's Changed
- docs: add tab completion to getting started guides by @luojiyin1987 in https://github.com/jackwener/opencli/pull/658
- refactor: centralize daemon transport client by @jackwener in https://github.com/jackwener/opencli/pull/692
- fix(xiaohongshu): clarify empty note shell hint by @Astro-Han in https://github.com/jackwener/opencli/pull/686
- fix(twitter): resolve article ID to tweet ID before GraphQL query by @gucasbrg in https://github.com/jackwener/opencli/pull/688
- feat: add opencli operate — browser control commands for Claude Code skill by @jackwener in https://github.com/jackwener/opencli/pull/614
- fix(skills): add YAML frontmatter for discovery and improve descriptions by @jackwener in https://github.com/jackwener/opencli/pull/694
- chore: release v1.6.0 by @jackwener in https://github.com/jackwener/opencli/pull/697
New Contributors
- @gucasbrg made their first contribution in https://github.com/jackwener/opencli/pull/688
Full Changelog: https://github.com/jackwener/opencli/compare/v1.5.9...v1.6.0
- Xiaohongshu note command with nested reply support
- Instagram media download command
- Long-lived daemon model replacing idle timeout
Full changelog
What's Changed
- [codex] restore deleted root SKILL.md by @jackwener in https://github.com/jackwener/opencli/pull/609
- [codex] fix weixin article download extraction by @jackwener in https://github.com/jackwener/opencli/pull/612
- fix(zhihu): stop question command failing on unused detail fetch by @Astro-Han in https://github.com/jackwener/opencli/pull/606
- fix(xiaohongshu): check login wall before autoScroll in search (fixes #597) by @kagura-agent in https://github.com/jackwener/opencli/pull/608
- feat(xiaohongshu): add note command and nested reply support for comments by @0xsegfaulted in https://github.com/jackwener/opencli/pull/599
- fix(xiaohongshu): support full URL/short link and fix video extraction by @geegewu in https://github.com/jackwener/opencli/pull/615
- chore(deps): bump vitest from 4.1.1 to 4.1.2 by @dependabot[bot] in https://github.com/jackwener/opencli/pull/620
- fix(ctrip): update search adapter to live endpoint by @leozejia in https://github.com/jackwener/opencli/pull/627
- fix(weread): recover book details from cached shelf fallback by @Astro-Han in https://github.com/jackwener/opencli/pull/628
- fix(substack): update selectors for Substack DOM redesign (fixes #621) by @kagura-agent in https://github.com/jackwener/opencli/pull/624
- feat(instagram): add media download command by @fii6 in https://github.com/jackwener/opencli/pull/623
- feat(notebooklm): add read commands and compatibility layer by @muqiao215 in https://github.com/jackwener/opencli/pull/622
- fix(docs): use relative links in adapter index by @jackwener in https://github.com/jackwener/opencli/pull/629
- feat(daemon): replace 5min idle timeout with long-lived daemon model by @jackwener in https://github.com/jackwener/opencli/pull/641
- fix: avoid in-page redirect in facebook search by @Astro-Han in https://github.com/jackwener/opencli/pull/642
- fix(douyin): repair creator draft flow by @Astro-Han in https://github.com/jackwener/opencli/pull/640
- fix(douyin): narrow getDraftCommand return type to fix TS2722 build failure by @jackwener in https://github.com/jackwener/opencli/pull/643
- fix(douyin): support current creator api response shapes by @ajia1206 in https://github.com/jackwener/opencli/pull/618
- feat(stealth): harden CDP debugger detection countermeasures by @jackwener in https://github.com/jackwener/opencli/pull/644
- fix(v2ex): add id field to hot and latest API responses by @reabiter in https://github.com/jackwener/opencli/pull/646
- fix(bilibili): distinguish login-gated subtitles from empty results by @warkcod in https://github.com/jackwener/opencli/pull/645
- feat(youtube): add search filters — --type shorts/video/channel, --upload, --sort by @jackleeio in https://github.com/jackwener/opencli/pull/616
- enhance(v2ex): add content, member, created, node fields to topic output by @reabiter in https://github.com/jackwener/opencli/pull/648
- feat: Electron auto-launcher — zero-config CDP connection by @jackwener in https://github.com/jackwener/opencli/pull/653
- chore: release v1.5.7 by @jackwener in https://github.com/jackwener/opencli/pull/654
New Contributors
- @kagura-agent made their first contribution in https://github.com/jackwener/opencli/pull/608
- @0xsegfaulted made their first contribution in https://github.com/jackwener/opencli/pull/599
- @geegewu made their first contribution in https://github.com/jackwener/opencli/pull/615
- @leozejia made their first contribution in https://github.com/jackwener/opencli/pull/627
- @fii6 made their first contribution in https://github.com/jackwener/opencli/pull/623
- @muqiao215 made their first contribution in https://github.com/jackwener/opencli/pull/622
- @reabiter made their first contribution in https://github.com/jackwener/opencli/pull/646
- @warkcod made their first contribution in https://github.com/jackwener/opencli/pull/645
- @jackleeio made their first contribution in https://github.com/jackwener/opencli/pull/616
Full Changelog: https://github.com/jackwener/opencli/compare/v1.5.6...v1.5.7
- Band.us adapter with bands, posts, mentions
- Spotify playback adapter
- Tieba browser adapters
Full changelog
What's Changed
- fix(tests): update E2E exit code assertions for usage errors by @jackwener in https://github.com/jackwener/opencli/pull/567
- docs: sync docs with codebase (v1.5.5, exit codes, hub table, new adapters) by @jackwener in https://github.com/jackwener/opencli/pull/575
- fix(weread): harden reader fallback and search mapping by @Astro-Han in https://github.com/jackwener/opencli/pull/562
- feat: add 知识星球(zsxq) site adapter by @xtftbwvfp in https://github.com/jackwener/opencli/pull/571
- feat(xiaohongshu): use CDP DOM.setFileInputFiles for image upload by @james0x-sudo in https://github.com/jackwener/opencli/pull/574
- feat(band): add Band.us adapter — bands, posts, mentions, post commands by @kanghouchao in https://github.com/jackwener/opencli/pull/532
- feat(spotify): add Spotify playback adapter by @bhutano in https://github.com/jackwener/opencli/pull/560
- fix(zsxq): require active group context by @jackwener in https://github.com/jackwener/opencli/pull/579
- feat(xiaohongshu): add cover image URL to user notes output by @jeffdeen in https://github.com/jackwener/opencli/pull/572
- feat(douyin): add user-videos command with top comments by @sunbird89629 in https://github.com/jackwener/opencli/pull/554
- refactor(douyin): share user video public api by @jackwener in https://github.com/jackwener/opencli/pull/580
- feat(doubao): add history, detail, meeting-summary by @svcvit in https://github.com/jackwener/opencli/pull/566
- feat: add Tieba browser adapters in TypeScript by @Astro-Han in https://github.com/jackwener/opencli/pull/581
- feat(youtube): mute and pause watch pages for read commands by @haoyueb2 in https://github.com/jackwener/opencli/pull/578
- fix(cli): normalize boolean arg aliases in commander adapter by @inori-3333 in https://github.com/jackwener/opencli/pull/585
- feat(browser): add ONES adapter support for tasks and worklog commands by @2hangchen in https://github.com/jackwener/opencli/pull/386
- feat(xueqiu): add comments command by @Astro-Han in https://github.com/jackwener/opencli/pull/587
- docs: add dingtalk and wecom CLI to external CLI hub by @jackwener in https://github.com/jackwener/opencli/pull/594
- fix(spotify): follow-up fixes for token refresh, null guards and credentials guidance by @bhutano in https://github.com/jackwener/opencli/pull/591
- chore(release): 1.5.6 by @jackwener in https://github.com/jackwener/opencli/pull/596
New Contributors
- @xtftbwvfp made their first contribution in https://github.com/jackwener/opencli/pull/571
- @james0x-sudo made their first contribution in https://github.com/jackwener/opencli/pull/574
- @kanghouchao made their first contribution in https://github.com/jackwener/opencli/pull/532
- @bhutano made their first contribution in https://github.com/jackwener/opencli/pull/560
- @jeffdeen made their first contribution in https://github.com/jackwener/opencli/pull/572
- @sunbird89629 made their first contribution in https://github.com/jackwener/opencli/pull/554
- @svcvit made their first contribution in https://github.com/jackwener/opencli/pull/566
- @haoyueb2 made their first contribution in https://github.com/jackwener/opencli/pull/578
- @inori-3333 made their first contribution in https://github.com/jackwener/opencli/pull/585
- @2hangchen made their first contribution in https://github.com/jackwener/opencli/pull/386
Full Changelog: https://github.com/jackwener/opencli/compare/v1.5.5...v1.5.6
- Sinafinance rewritten with public API (no browser required)
- Unix-standard process exit codes for error types
Full changelog
What's Changed
- fix: remove invalid
state: 'normal'from chrome.windows.create() by @Cjy-CN in https://github.com/jackwener/opencli/pull/559 - 添加新浪财经行情及滚动新闻抓取 by @yichuanzhao99-ctrl in https://github.com/jackwener/opencli/pull/546
- feat(sinafinance): rewrite stock as public API, no browser required by @jackwener in https://github.com/jackwener/opencli/pull/563
- feat(exit-codes): Unix-standard process exit codes for all error types by @jackwener in https://github.com/jackwener/opencli/pull/564
- chore(release): 1.5.5 by @jackwener in https://github.com/jackwener/opencli/pull/565
New Contributors
- @Cjy-CN made their first contribution in https://github.com/jackwener/opencli/pull/559
- @yichuanzhao99-ctrl made their first contribution in https://github.com/jackwener/opencli/pull/546
Full Changelog: https://github.com/jackwener/opencli/compare/v1.5.4...v1.5.5
- Bluesky adapter with 9 commands
- Plugin create scaffold command
- Multi-source plugin install support
- Plugin system with opencli-plugin.json manifest
- Extension auto-update notifier
- Smart error dispatch with real-time status
Full changelog
What's New
Features
- Plugin system: opencli-plugin.json manifest and monorepo plugin support (#475)
- Zero onboarding: extension version check and update notifier (#479)
- Smart error dispatch: inline Browser Bridge diagnosis with real-time status (#481)
- New adapters: paperreview.ai (#464), IMDb (#472), Product Hunt (#462), 36kr (#461)
- Adapter enhancements: douban photo commands (#474), twitter likes (#448), bilibili/xiaohongshu comments (#457), linux-do unified feed (#434), chatgpt model selection (#438)
- Runtime: Bun compatibility (#459)
Improvements
- Deduplicated code, improved type safety, simplified error classes (#480)
- Unified YAML args parsing, browser step constants, and CommandArgs type
- Hook dedup protection for plugins
- Safer output normalization
Fixes
- Extension release packaging validation (#470)
- Various adapter fixes (jd, xiaohongshu, weread, weixin)
- Stabilized http download temp file handling (#443)
- Restored executable permission on bin entries after tsc build (#446)
Full Changelog: https://github.com/jackwener/opencli/compare/v1.4.1...v1.5.0
- Cross-platform E2E and smoke testing (Linux/macOS/Windows)
- Chrome Web Store readiness (popup UI, privacy policy, CSP)
- Douyin creator center adapter with 14 commands
Full changelog
What's Changed
- ci: add cross-platform E2E and smoke test support (Linux/macOS/Windows) by @ByteYue in https://github.com/jackwener/opencli/pull/411
- chore: release v1.4.0 by @jackwener in https://github.com/jackwener/opencli/pull/413
- feat(extension): Chrome Web Store readiness — popup UI, privacy policy, CSP by @jackwener in https://github.com/jackwener/opencli/pull/415
- feat: add filter option for twitter search by @stormslowly in https://github.com/jackwener/opencli/pull/410
- feat: add url field to 9 search adapters (67% -> 97% coverage) by @AllenS0104 in https://github.com/jackwener/opencli/pull/414
- feat(douyin): add Douyin creator center adapter (14 commands, 8-phase publish pipeline) by @nianyi778 in https://github.com/jackwener/opencli/pull/416
- feat(weibo,youtube): add Weibo commands and YouTube channel/comments by @jackwener in https://github.com/jackwener/opencli/pull/418
- fix: remove incorrect gws external CLI entry by @jackwener in https://github.com/jackwener/opencli/pull/419
- fix: remove nonexistent readwise external CLI entry by @jackwener in https://github.com/jackwener/opencli/pull/420
- chore: trim adapter test suite to bilibili, zhihu, v2ex by @jackwener in https://github.com/jackwener/opencli/pull/421
- fix(test): gate extended browser e2e tests behind OPENCLI_E2E=1 by @jackwener in https://github.com/jackwener/opencli/pull/423
- fix(extension): improve UX when daemon is not running by @jackwener in https://github.com/jackwener/opencli/pull/424
- chore: release v1.4.1 by @jackwener in https://github.com/jackwener/opencli/pull/425
New Contributors
- @stormslowly made their first contribution in https://github.com/jackwener/opencli/pull/410
- @nianyi778 made their first contribution in https://github.com/jackwener/opencli/pull/416
Full Changelog: https://github.com/jackwener/opencli/compare/v1.4.0...v1.4.1
- Plugin system with lifecycle hooks (onStartup, onBeforeExecute, onAfterExecute)
- New adapters: Pixiv, JD.com, Web (generic URL), Dictionary, LinkedIn
- Cross-platform CI matrix (Linux/macOS/Windows)
Full changelog
Highlights
New Adapters
- Pixiv — ranking, search, user illusts, detail, download
- JD.com — product details
- Web — generic
web readfor any URL → Markdown - Dictionary — search, synonyms, examples
- LinkedIn — timeline feed
Plugin System
- Lifecycle hooks API —
onStartup,onBeforeExecute,onAfterExecute - Plugin structure validation on install/update
- Windows path and symlink compatibility
Bug Fixes
- Fix
hasLimitanalysis bug (was using wrong parameter Set) - Fix template engine chained
||evaluation - Fix phantom
scrollpipeline step (declared but never registered) - Extension security hardening — tab isolation, URL validation, cookie scope
- HTTP status checking in fetch pipeline step
- Cookie scoping for downloads
- Natural numeric sort with
localeCompare - 17+ additional bug fixes from deep code reviews
Code Quality
- Replace all
catch (err: any)with typedgetErrorMessage()across 13 files - Adopt
CliErrorsubclasses across social and desktop adapters - Cross-platform CI matrix (Linux/macOS/Windows)
- Comprehensive documentation sync — SKILL.md, README, docs site
Full Changelog: https://github.com/jackwener/opencli/compare/v1.3.3...v1.4.0
- Command injection vulnerability fixed in external CLI execution
- Navigator.webdriver masking and artifact cleanup
- Browser stealth anti-detection with 7 patches
- Multiple new adapters: weixin, xiaohongshu, Doubao, hackernews, v2ex
- Live recording command for API capture
- opencli setup command removed
- Browser CSRF attack hardening in daemon
- Doctor command now defaults to live mode with automatic daemon auto-start
- opencli setup command removed
- Browser CSRF attack hardening in daemon
- Doctor command now defaults to live mode with automatic daemon auto-start
## What's Changed * chore: code cleanup + extension conflict troubleshooting
Minor fixes and improvements.
Full changelog
What's Changed
- chore: remove CRX from release pipeline and docs by @jackwener in https://github.com/jackwener/opencli/pull/258
- fix: treat empty tab URL as debuggable (fixes first-run failure) by @jackwener in https://github.com/jackwener/opencli/pull/259
Full Changelog: https://github.com/jackwener/opencli/compare/v1.2.4...v1.2.5
- Hardened resolveTabId against New Tab Override interception
- Standardize all CLI argument names to kebab-case
- Bloomberg adapter
- Enhanced --help with registry metadata
- Auto-waiting with goto() post-load settle
Full changelog
What's Changed
- chore(main): release 1.1.0 by @jackwener in https://github.com/jackwener/opencli/pull/134
- ci: migrate docs deployment to cross-repo build via opencli-website by @ByteYue in https://github.com/jackwener/opencli/pull/138
- docs: add missing adapter docs, fix sidebar 404s, add doc-check CI by @ByteYue in https://github.com/jackwener/opencli/pull/140
- feat: add Bloomberg adapter by @KasumiChen in https://github.com/jackwener/opencli/pull/145
- fix: correct xiaohongshu creator metric parsing by @ajia1206 in https://github.com/jackwener/opencli/pull/146
- feat: enhance --help with registry metadata and enrich list --json with full arg schema by @Astro-Han in https://github.com/jackwener/opencli/pull/142
- refactor: extract serialization helpers to registry.ts and stabilize arg schema by @jackwener in https://github.com/jackwener/opencli/pull/148
- fix: harden external CLI hub by @jackwener in https://github.com/jackwener/opencli/pull/149
- refactor!: standardize all CLI arg names to kebab-case by @jackwener in https://github.com/jackwener/opencli/pull/150
- refactor: split engine.ts into discovery/execution, extract Commander adapter by @jackwener in https://github.com/jackwener/opencli/pull/152
- refactor: deep CLI layer architecture improvements by @jackwener in https://github.com/jackwener/opencli/pull/164
- docs: sync documentation with PR #150 arg renames by @jackwener in https://github.com/jackwener/opencli/pull/179
- docs(chatgpt): sync read docs with AX behavior by @mark-li-llm in https://github.com/jackwener/opencli/pull/180
- feat: auto-waiting — goto() post-load settle, remove 31 hardcoded waits by @jackwener in https://github.com/jackwener/opencli/pull/181
- feat(twitter): add block, unblock, and hide-reply commands by @himself65 in https://github.com/jackwener/opencli/pull/182
- feat(steam): add top sellers command by @upupnoah in https://github.com/jackwener/opencli/pull/178
- Fix Apple Podcasts search query handling and top chart failures by @yanCode in https://github.com/jackwener/opencli/pull/187
- fix(twitter): rewrite trending from YAML to TS with DOM scraping fallback by @jackwener in https://github.com/jackwener/opencli/pull/189
New Contributors
- @upupnoah made their first contribution in https://github.com/jackwener/opencli/pull/178
Full Changelog: https://github.com/jackwener/opencli/compare/v1.1.0...v1.1.1
- VitePress documentation site with GitHub Pages deployment
- Jike adapter with 10 commands
- StackOverflow search, hot, unanswered, and bounties commands
- HuggingFace top papers command
Full changelog
What's Changed
- feat(jike): add Jike adapter with 10 commands by @Astro-Han in https://github.com/jackwener/opencli/pull/117
- feat(boss): add resume command to view candidate profile by @huangsen365 in https://github.com/jackwener/opencli/pull/119
- feat(stackoverflow): add search, hot, unanswered, and bounties commands by @vkop007 in https://github.com/jackwener/opencli/pull/116
- fix(smzdm): navigate to search results page directly instead of deprecated ajax API by @ylongw in https://github.com/jackwener/opencli/pull/113
- docs: add VitePress documentation site by @ByteYue in https://github.com/jackwener/opencli/pull/112
- feat(hf): add top command for hf papers (daily, weekly, monthly) by @k1tyoodev in https://github.com/jackwener/opencli/pull/110
- fix: infer browser mode for public TS adapters and stabilize Chaoxing tests by @KasumiChen in https://github.com/jackwener/opencli/pull/115
New Contributors
- @vkop007 made their first contribution in https://github.com/jackwener/opencli/pull/116
- @ylongw made their first contribution in https://github.com/jackwener/opencli/pull/113
- @k1tyoodev made their first contribution in https://github.com/jackwener/opencli/pull/110
- @KasumiChen made their first contribution in https://github.com/jackwener/opencli/pull/115
Full Changelog: https://github.com/jackwener/opencli/compare/v1.0.3...v1.0.4
- Boss adapter with chatlist, chatmsg, and send commands
- Boss resume command for candidate profiles
Full changelog
What's Changed
- docs: correct note_id params for xiaohongshu by @gnosis23 in https://github.com/jackwener/opencli/pull/108
- fix(twitter): fix newline handling in post command via clipboard paste by @zhutiancillm in https://github.com/jackwener/opencli/pull/107
- fix(twitter): use pushState for search SPA navigation by @Astro-Han in https://github.com/jackwener/opencli/pull/105
- fix(chatgpt): read replies from AX tree instead of clipboard shortcut by @mark-li-llm in https://github.com/jackwener/opencli/pull/106
- feat(boss): add chatlist, chatmsg, and send commands by @huangsen365 in https://github.com/jackwener/opencli/pull/95
- fix: use JSON.stringify for safe JS string interpolation in evaluate() by @ByteYue in https://github.com/jackwener/opencli/pull/109
New Contributors
- @gnosis23 made their first contribution in https://github.com/jackwener/opencli/pull/108
- @zhutiancillm made their first contribution in https://github.com/jackwener/opencli/pull/107
- @mark-li-llm made their first contribution in https://github.com/jackwener/opencli/pull/106
- @huangsen365 made their first contribution in https://github.com/jackwener/opencli/pull/95
Full Changelog: https://github.com/jackwener/opencli/compare/v1.0.2...v1.0.3
- WeRead adapter with 7 commands
- Chaoxing (学习通) adapter for assignments and exams
- Apple Podcasts coverage and documentation
- WeRead adapter with 7 commands
- Apple Podcasts coverage and documentation
## What's Changed * feat: Chrome Extension + micro-daemon for browser automation
- Grok.com site support
- Download support for xhs, twi, bilibili, zhihu
- Xiaohongshu creator analytics commands
Full changelog
What's Changed
- feat: add grok.com site support by @foreverxdord in https://github.com/jackwener/opencli/pull/60
- feat: Add download support for xhs, twi, bilibili, zhihu by @ByteYue in https://github.com/jackwener/opencli/pull/22
- feat(xiaohongshu): add 4 creator analytics commands (creator-profile, creator-stats, creator-notes, creator-note-detail) by @stone16 in https://github.com/jackwener/opencli/pull/49
- docs: add issue/PR templates and contributing guide by @ByteYue in https://github.com/jackwener/opencli/pull/63
- ci: add Dependabot, security audit, release-please, and CI optimization by @ByteYue in https://github.com/jackwener/opencli/pull/64
- chore(ci): bump actions/checkout from 4 to 6 by @dependabot[bot] in https://github.com/jackwener/opencli/pull/66
- chore(ci): bump actions/setup-node from 4 to 6 by @dependabot[bot] in https://github.com/jackwener/opencli/pull/65
- chore(deps): bump commander from 13.1.0 to 14.0.3 by @dependabot[bot] in https://github.com/jackwener/opencli/pull/67
- fix(xiaohongshu): restore user profile note fetching by @washanhanzi in https://github.com/jackwener/opencli/pull/69
- fix(browser): avoid selecting non-server playwright cli paths by @Waioot in https://github.com/jackwener/opencli/pull/74
- fix(main): navigate to domain before cookie/header strategy commands in CDP mode by @backtime1993 in https://github.com/jackwener/opencli/pull/71
New Contributors
- @foreverxdord made their first contribution in https://github.com/jackwener/opencli/pull/60
- @dependabot[bot] made their first contribution in https://github.com/jackwener/opencli/pull/66
- @washanhanzi made their first contribution in https://github.com/jackwener/opencli/pull/69
- @Waioot made their first contribution in https://github.com/jackwener/opencli/pull/74
Full Changelog: https://github.com/jackwener/opencli/compare/v0.9.7...v0.9.8
- Jimeng (即梦AI) CLI support
- Linux.do adapter with 6 commands
Full changelog
What's Changed
- feat: add jimeng (即梦AI) CLI support by @stone16 in https://github.com/jackwener/opencli/pull/57
- feat(linux-do): add linux.do adapter with 6 commands by @Astro-Han in https://github.com/jackwener/opencli/pull/56
New Contributors
- @stone16 made their first contribution in https://github.com/jackwener/opencli/pull/57
Full Changelog: https://github.com/jackwener/opencli/compare/v0.9.6...v0.9.7
## What's Changed * feat(xiaoyuzhou): add podcast platform adapter
- CDP remote connection support for server environments
Full changelog
What's Changed
- fix(barchart): add CSRF retry and mostActive fallback to flow by @himself65 in https://github.com/jackwener/opencli/pull/51
- feat(browser): add CDP remote connection support for server environments by @jackwener in https://github.com/jackwener/opencli/pull/52
New Contributors
- @jackwener made their first contribution in https://github.com/jackwener/opencli/pull/52
Full Changelog: https://github.com/jackwener/opencli/compare/v0.7.11...v0.8.0
- Barchart stock quote, options, greeks, and flow commands
Full changelog
What's Changed
- fix: discover global @playwright/mcp for nvm/npm installs by @yanCode in https://github.com/jackwener/opencli/pull/42
- ci: add pkg.pr.new for continuous package previews by @himself65 in https://github.com/jackwener/opencli/pull/46
- feat(barchart): add stock quote, options, greeks, and flow commands by @himself65 in https://github.com/jackwener/opencli/pull/45
New Contributors
- @yanCode made their first contribution in https://github.com/jackwener/opencli/pull/42
- @himself65 made their first contribution in https://github.com/jackwener/opencli/pull/46
Full Changelog: https://github.com/jackwener/opencli/compare/v0.7.10...v0.7.11
- Twitter timeline rewrite to direct GraphQL
- Twitter search and notifications hardening
## What's Changed * fix(opencode): use 'environment' instead of 'env' for MCP config
- LinkedIn job search adapter
- Reddit threaded comment tree to read command
- YouTube video metadata and transcript commands
Full changelog
What's Changed
- feat(linkedin): add job search adapter by @SiweiMa in https://github.com/jackwener/opencli/pull/28
- feat(reddit): add threaded comment tree to read command by @AlexZhangji in https://github.com/jackwener/opencli/pull/26
- feat(youtube): add video metadata and transcript commands by @AlexZhangji in https://github.com/jackwener/opencli/pull/25
New Contributors
- @SiweiMa made their first contribution in https://github.com/jackwener/opencli/pull/28
- @AlexZhangji made their first contribution in https://github.com/jackwener/opencli/pull/26
Full Changelog: https://github.com/jackwener/opencli/compare/v0.7.2...v0.7.3
## What's Changed * feat(boss): add detail adapter + security_id in search
## What's Changed * feat: add E2E testing infrastructure with real Chrome in CI (#1)
## What's Changed * feat(browser): Chrome 144+ auto-discovery via DevToolsActivePort