AutoCua
Automate with computer-use agent (ComputerUse / CUA) for macOS, Windows, Linux, Browser, iOS & Android. It sees the screen, clicks, types, browses and writes the code too. One agent, every computer.
翻译准备中
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗A local-first calendar and assignment tracker for students. It runs entirely in the browser (installable as a PWA) and can optionally sync across devices through Supabase. Live at datebookcalendar.vercel.app.
An iOS wrapper app lives in calendar-ios. It loads this site in a WebView and adds native reminders, widgets and Live Activities.
event, assignment or task, with status todo, doing or done..nvmrc) and npmnpm install
cp .env.example .env.local # every variable is optional
npm run dev
Open http://localhost:3000.
All variables are documented in .env.example. The ones that switch features on:
| Variable | Enables |
|---|---|
NEXT_PUBLIC_SUPABASE_URL, NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY | Google sign-in and cloud sync. Schema setup is in SUPABASE_SETUP.md. |
SUPABASE_SERVICE_ROLE_KEY | Server-only: push dispatch and rate limiting. Never expose it to the browser. |
GEMINI_API_KEY | Assistant and syllabus import. GROQ_API_KEY, CEREBRAS_API_KEY, MISTRAL_API_KEY and NVIDIA_API_KEY are fallbacks for the assistant router. |
NEXT_PUBLIC_VAPID_PUBLIC_KEY, VAPID_PRIVATE_KEY, CRON_SECRET | Closed-app reminders over web push. |
| Command | What it does |
|---|---|
npm run dev | Dev server |
npm run build / npm start | Production build and server |
npm run typecheck | tsc --noEmit |
npm run lint | ESLint |
npm run format / format:check | Prettier |
npm test | Vitest |
npm run security:secrets | Scan tracked files for committed secrets |
localStorage (datebook-store). Supabase sync is layered on top, not underneath: the app never needs the network to work.lib/db-sync.ts) is last-write-wins on updatedAt with tombstones for deletes. A new database column needs a numbered migration in supabase/migrations/ and an entry in STRIPPABLE_COLS, so a project that has not run the SQL yet degrades instead of stalling the write queue.lib/local-assistant.ts) answers date, grade, syllabus and planning questions locally. Anything it cannot answer goes to /api/assistant, which routes across providers in lib/llm/.lib/motion.ts, gesture math in lib/gesture.ts. Hot paths animate only transform and opacity./api/push/dispatch, called every ten minutes by the Push dispatch workflow.app/ routes and API handlers
components/ UI; tab pages are in components/pages
lib/ store, sync, date logic, assistant; tests sit beside the code
supabase/ numbered SQL migrations
public/ manifest, icons, service worker
POST /api/push/dispatch refuses unauthenticated calls once push is configured. The shared secret has to exist in both places, set to the same string:
| Where | What to set |
|---|---|
| Vercel project | environment variable CRON_SECRET, then redeploy |
| GitHub repository | Actions secret CRON_SECRET |
If either side is missing or they disagree, the endpoint answers 401 and every scheduled run fails with a named error.
See CONTRIBUTING.md. Commits follow Conventional Commits and are checked by a git hook and in CI.