@11agents/cli 0.1.35 → 0.1.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -142,6 +142,7 @@ class TikTokAdbPublisher:
142
142
  status="published",
143
143
  )
144
144
  append_publish_record(self.records_path, record)
145
+ self._close_tiktok_best_effort(device, run_dir)
145
146
  return TikTokAdbPublishResult(
146
147
  device_id=device.device_id,
147
148
  status=status,
@@ -242,6 +243,17 @@ class TikTokAdbPublisher:
242
243
  self._ok(self.adb.launch_package(device.adb_serial, TIKTOK_PACKAGE), "launch TikTok")
243
244
  time.sleep(5)
244
245
 
246
+ def _close_tiktok(self, device: Device) -> None:
247
+ self._ok(self.adb.force_stop(device.adb_serial, TIKTOK_PACKAGE), "close TikTok")
248
+
249
+ def _close_tiktok_best_effort(self, device: Device, run_dir: Path) -> None:
250
+ try:
251
+ self._close_tiktok(device)
252
+ time.sleep(1)
253
+ self.adb.screenshot(device.adb_serial, run_dir / "after-app-close.png")
254
+ except Exception:
255
+ pass
256
+
245
257
  def _open_create(self, device: Device, run_dir: Path) -> None:
246
258
  root = self._dump_and_check(device, run_dir, "before-create")
247
259
  create_node = ui.find_node(
@@ -136,6 +136,7 @@ class TikTokAppiumPublisher:
136
136
  status="published",
137
137
  ),
138
138
  )
139
+ self.media_helper._close_tiktok_best_effort(device, run_dir)
139
140
  return TikTokAppiumPublishResult(
140
141
  device_id=device.device_id,
141
142
  status=status,
@@ -357,6 +357,7 @@ class XiaohongshuAdbPublisher:
357
357
  status="published",
358
358
  ),
359
359
  )
360
+ self._close_xiaohongshu_best_effort(device, run_dir)
360
361
  return XiaohongshuAdbPublishResult(
361
362
  device_id=device.device_id,
362
363
  status=status,
@@ -531,9 +532,12 @@ class XiaohongshuAdbPublisher:
531
532
  def _close_xiaohongshu(self, device: Device) -> None:
532
533
  self._ok(self.adb.force_stop(device.adb_serial, self.package), "close Xiaohongshu")
533
534
 
534
- def _close_xiaohongshu_best_effort(self, device: Device) -> None:
535
+ def _close_xiaohongshu_best_effort(self, device: Device, run_dir: Path | None = None) -> None:
535
536
  try:
536
537
  self._close_xiaohongshu(device)
538
+ if run_dir is not None:
539
+ time.sleep(self._wait("after_prompt_dismiss"))
540
+ self.adb.screenshot(device.adb_serial, run_dir / "after-app-close.png")
537
541
  except Exception:
538
542
  pass
539
543
 
@@ -34,6 +34,8 @@ ADB fallback when explicitly requested:
34
34
 
35
35
  Use `--range`, `--parallel`, and `--max-concurrency N` only when the approved plan targets multiple devices. Keep concurrency at or below 5.
36
36
 
37
+ Successful live publish is only confirmed after the CLI taps the publish button and verifies TikTok publish completion. After writing the publish record, the CLI force-stops TikTok and captures `after-app-close.png` in the run artifacts.
38
+
37
39
  ## Output
38
40
 
39
41
  Return publish status, record id, account/device, screenshot path, permalink or platform post id when available, duration, error action, and the data-collection handoff:
@@ -33,7 +33,7 @@ Structured package:
33
33
  11agents mobile publish-xiaohongshu --device D03 --publish-package "/path/publish_package.json" --json --task-id TASK_123
34
34
  ```
35
35
 
36
- Successful live publish is only confirmed after the CLI taps the final publish button, waits without tapping while Xiaohongshu shows upload/progress state, closes and relaunches Xiaohongshu, then opens the "我" page, opens the note whose title matches the expected title or the first visible profile note as a verified fallback, and verifies the detail page against the expected title/body. The CLI recovers the note link by default for live publish; use `--no-copy-link-after-publish` only when link recovery is explicitly not wanted. If that evidence does not match, treat the result as `failed`; do not claim publish success from the publish button tap alone.
36
+ Successful live publish is only confirmed after the CLI taps the final publish button, waits without tapping while Xiaohongshu shows upload/progress state, closes and relaunches Xiaohongshu, then opens the "我" page, opens the note whose title matches the expected title or the first visible profile note as a verified fallback, and verifies the detail page against the expected title/body. The CLI recovers the note link by default for live publish; use `--no-copy-link-after-publish` only when link recovery is explicitly not wanted. After writing the publish record, the CLI force-stops Xiaohongshu and captures `after-app-close.png` in the run artifacts. If that evidence does not match, treat the result as `failed`; do not claim publish success from the publish button tap alone.
37
37
 
38
38
  Link copy after publish or during the recovery skill:
39
39
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@11agents/cli",
3
- "version": "0.1.35",
3
+ "version": "0.1.36",
4
4
  "description": "11agents local runtime and telemetry CLI",
5
5
  "type": "module",
6
6
  "bin": {