BorisSun0424-boop/zaoba

Productivity & Utilities

Schedule daily check-ins for AI tool credits on macOS and Windows, with a local dashboard and reports.

106
18
JavaScript
MIT
3 days old

Overview

zaoba automates the daily check-in and credit-claiming tasks of several AI tools, then writes a report and sends a desktop notification. It targets users who keep desktop clients such as WorkBuddy, Doubao Work, and Trae CN, or web accounts such as Zhipu Qingyan and MiniMax Code, and do not want to click the check-in buttons each day.

The mechanism is not token cracking. For web platforms it reuses a persistent Playwright browser profile and either calls a known endpoint or clicks a button matching configured keywords. For Electron-based desktop clients it starts or attaches to the client over the Chrome DevTools Protocol and invokes the client's own check-in channel. The project states that currently WorkBuddy, Doubao Work, Zhipu Qingyan, MiniMax Code, and Trae CN can actually check in daily; Qoder CN is preconfigured but disabled by default platform list and caveats.

A local web console at http://127.0.0.1:7788 shows per-platform status, a 14-day grid, run logs via SSE, and the daily report. The server is zero-dependency Node, binds only to localhost, and the frontend has no build step dashboard details.

Quick start

Preparation: macOS 12+ or Windows 10/11, Node.js 18 or newer, and roughly 1.5 GB of disk space for dependencies and the browser kernel (Windows can reuse system Edge and skip the 570 MB download). Packaged zips are available for Windows and macOS; a step-by-step getting-started guide covers client and login requirements.

macOS sequence:

git clone https://github.com/BorisSun0424-boop/zaoba.git
cd zaoba
bash scripts/bootstrap.sh --check
bash scripts/bootstrap.sh
npm run login
npm run dry-run
npm run checkin
bash scripts/install-launchd.sh
npm run web

This checks prerequisites, installs dependencies and the browser, saves your web login once, performs a no-op rehearsal, runs a real check-in, installs the launchd job (08:00 plus a 12:30 retry) and opens the console. Windows uses the PowerShell script instead: powershell -ExecutionPolicy Bypass -File scripts\bootstrap.ps1 -Check then -File scripts\bootstrap.ps1, and scripts\install-service.ps1 for the scheduled task. Do not run the .sh script on Windows; it exits with a macOS-only message.

After installation, choose platforms with npm run setup or the console switches. Desktop-client platforms still require you to install and log in to the client; web platforms require one npm run login (or the console's login button). QR-code login cannot be delegated to an AI agent.

Scheduling and sleep behavior

A launchd job (macOS) or Windows Task Scheduler task runs the check-in daily, with a randomized delay and a midday retry for missed runs. Locking the screen does not stop it; full system sleep does. On macOS the README suggests sudo pmset repeat wakeorpoweron MTWRFSU 07:55:00 to wake the machine before the run timing and sleep notes. The time can be changed in the console, with npm run schedule -- 08:30, or in config.json.

Constraints and risks

  • This is automation of existing check-in flows, not a way around captchas, sliders, or QR login; those still need a human.
  • Desktop clients must be Chromium/Electron-based and actually expose a check-in entry. Native AppKit apps and mobile-only check-ins are out of scope.
  • Platform redesigns can break keyword matching; npm run probe and editable keywords/doneKeywords in config.json are the intended fix path.
  • The persistent profile directory holds session credentials; treat it as account data and do not share it. Session expiry produces needs_login and requires logging in again.
  • The author notes that many platforms' terms forbid automation, so account risk exists; keep it to one run per day, on your own device and one account known limitations.

HotRepo's take

In the JavaScript new-project list for 2026-11-01, zaoba was recorded with 106 stars total and 5 stars gained during a one-hour window observed from 14:45 to 15:45 UTC; 18 forks in total. The repository did not appear on the all-language GitHub daily ranking. With one short snapshot and no discussion threads, the data supports only that observation, not a trend. The project's distinctive engineering effort is concentrated in making CDP attach to third-party Electron clients and in idempotent, serialized runs with per-platform status, which is more specific than a generic web scraper.

Written by AI from the project's README, updated . The project's own docs are the source of truth.