@mmmbuto/qwen-code-termux 0.14.1-termux → 0.15.5-termux

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.
Files changed (41) hide show
  1. package/README.md +1 -1
  2. package/bundled/batch/SKILL.md +304 -0
  3. package/bundled/loop/SKILL.md +1 -0
  4. package/bundled/qc-helper/SKILL.md +1 -0
  5. package/bundled/qc-helper/docs/configuration/auth.md +13 -6
  6. package/bundled/qc-helper/docs/configuration/settings.md +173 -108
  7. package/bundled/qc-helper/docs/features/_meta.ts +6 -0
  8. package/bundled/qc-helper/docs/features/approval-mode.md +16 -8
  9. package/bundled/qc-helper/docs/features/arena.md +3 -2
  10. package/bundled/qc-helper/docs/features/code-review.md +279 -0
  11. package/bundled/qc-helper/docs/features/commands.md +96 -26
  12. package/bundled/qc-helper/docs/features/dual-output.md +593 -0
  13. package/bundled/qc-helper/docs/features/followup-suggestions.md +6 -6
  14. package/bundled/qc-helper/docs/features/headless.md +61 -0
  15. package/bundled/qc-helper/docs/features/hooks.md +408 -120
  16. package/bundled/qc-helper/docs/features/mcp.md +100 -14
  17. package/bundled/qc-helper/docs/features/memory.md +168 -0
  18. package/bundled/qc-helper/docs/features/sandbox.md +9 -1
  19. package/bundled/qc-helper/docs/features/status-line.md +261 -0
  20. package/bundled/qc-helper/docs/features/sub-agents.md +126 -7
  21. package/bundled/qc-helper/docs/features/tips.md +54 -0
  22. package/bundled/qc-helper/docs/features/tool-use-summaries.md +178 -0
  23. package/bundled/qc-helper/docs/overview.md +4 -4
  24. package/bundled/qc-helper/docs/quickstart.md +15 -9
  25. package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +1 -1
  26. package/bundled/qc-helper/docs/support/tos-privacy.md +1 -1
  27. package/bundled/qc-helper/docs/support/troubleshooting.md +9 -3
  28. package/bundled/review/DESIGN.md +165 -0
  29. package/bundled/review/SKILL.md +359 -88
  30. package/cli.js +296184 -260145
  31. package/locales/ca.js +2143 -0
  32. package/locales/de.js +104 -14
  33. package/locales/en.js +113 -13
  34. package/locales/fr.js +2099 -0
  35. package/locales/ja.js +103 -14
  36. package/locales/pt.js +105 -14
  37. package/locales/ru.js +103 -14
  38. package/locales/zh-TW.js +1678 -0
  39. package/locales/zh.js +110 -13
  40. package/package.json +2 -2
  41. package/bundled/qc-helper/docs/configuration/memory.md +0 -0
@@ -310,6 +310,67 @@ echo "Recent usage trends:"
310
310
  tail -5 usage.log
311
311
  ```
312
312
 
313
+ ## Persistent Retry Mode
314
+
315
+ When Qwen Code runs in CI/CD pipelines or as a background daemon, a brief API outage (rate limiting or overload) should not kill a multi-hour task. **Persistent retry mode** makes Qwen Code retry transient API errors indefinitely until the service recovers.
316
+
317
+ ### How it works
318
+
319
+ - **Transient errors only**: HTTP 429 (Rate Limit) and 529 (Overloaded) are retried indefinitely. Other errors (400, 500, etc.) still fail normally.
320
+ - **Exponential backoff with cap**: Retry delays grow exponentially but are capped at **5 minutes** per retry.
321
+ - **Heartbeat keepalive**: During long waits, a status line is printed to stderr every **30 seconds** to prevent CI runners from killing the process due to inactivity.
322
+ - **Graceful degradation**: Non-transient errors and interactive mode are completely unaffected.
323
+
324
+ ### Activation
325
+
326
+ Set the `QWEN_CODE_UNATTENDED_RETRY` environment variable to `true` or `1` (strict match, case-sensitive):
327
+
328
+ ```bash
329
+ export QWEN_CODE_UNATTENDED_RETRY=1
330
+ ```
331
+
332
+ > [!important]
333
+ > Persistent retry requires an **explicit opt-in**. `CI=true` alone does **not** activate it — silently turning a fast-fail CI job into an infinite-wait job would be dangerous. Always set `QWEN_CODE_UNATTENDED_RETRY` explicitly in your pipeline configuration.
334
+
335
+ ### Examples
336
+
337
+ #### GitHub Actions
338
+
339
+ ```yaml
340
+ - name: Automated code review
341
+ env:
342
+ QWEN_CODE_UNATTENDED_RETRY: '1'
343
+ run: |
344
+ qwen -p "Review all files in src/ for security issues" \
345
+ --output-format json \
346
+ --yolo > review.json
347
+ ```
348
+
349
+ #### Overnight batch processing
350
+
351
+ ```bash
352
+ export QWEN_CODE_UNATTENDED_RETRY=1
353
+ qwen -p "Migrate all callback-style functions to async/await in src/" --yolo
354
+ ```
355
+
356
+ #### Background daemon
357
+
358
+ ```bash
359
+ QWEN_CODE_UNATTENDED_RETRY=1 nohup qwen -p "Audit all dependencies for known CVEs" \
360
+ --output-format json > audit.json 2> audit.log &
361
+ ```
362
+
363
+ ### Monitoring
364
+
365
+ During persistent retry, heartbeat messages are printed to **stderr**:
366
+
367
+ ```
368
+ [qwen-code] Waiting for API capacity... attempt 3, retry in 45s
369
+ [qwen-code] Waiting for API capacity... attempt 3, retry in 15s
370
+ ```
371
+
372
+ These messages keep CI runners alive and let you monitor progress. They do not appear in stdout, so JSON output piped to other tools remains clean.
373
+
313
374
  ## Resources
314
375
 
315
376
  - [CLI Configuration](../configuration/settings#command-line-arguments) - Complete configuration guide