webdev-periodic-updates

Implements scheduled cron jobs for Manus webdev projects using Heartbeat HTTP callbacks and AGENT crons.

Updated Aug 28, 2026
One-click install
npx skills add https://github.com/AnderHonorato/Mem-rias-IA---Infinity --skill webdev-periodic-updates-anderhonorato
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: webdev-periodic-updates
Source: https://github.com/AnderHonorato/Mem-rias-IA---Infinity/tree/main/Manus/Skills/webdev-periodic-updates
Command: npx skills add https://github.com/AnderHonorato/Mem-rias-IA---Infinity --skill webdev-periodic-updates-anderhonorato

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Recurring and scheduled work (digests, cleanups, notifications, end-user-defined schedules) cannot rely on in-process timers like setInterval or node-cron because Cloud Run terminates idle instances. This Skill provides the correct patterns for implementing durable, platform-managed cron jobs in Manus webdev fullstack and Expo projects. ## Core Features & Use Cases - Heartbeat HTTP cron: Platform POSTs directly to /api/scheduled/* handlers on the deployed site, authenticated via sdk.authenticateRequest with user.isCron and user.taskUid. - AGENT cron: Spawns a fresh isolated Manus agent session for triggers needing agentic capabilities like browsing, deep research, or image generation, with curl-based write-back via $SCHEDULED_TASK_ENDPOINT_BASE and $SCHEDULED_TASK_COOKIE. - End-user scheduling: tRPC mutations calling createHeartbeatJob persist taskUid on business rows so end-users can create, pause, resume, and delete their own schedules. - Use Case: A marketing site needs a daily 9am campaign email send. Create a tRPC mutation that calls createHeartbeatJob with a 6-field cron expression, store the returned taskUid on the campaign row, and mount an idempotent Express handler at /api/scheduled/sendMarketing. ## Quick Start Read this Skill first, then implement a daily scheduled job by adding a schedule_cron_task_uid column, creating a tRPC mutation that calls createHeartbeatJob, and mounting an authenticated handler at /api/scheduled/<name> before deploying.

Frequently Asked Questions about webdev-periodic-updates

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a scheduled cron job in a Manus webdev project?

Create a tRPC mutation that calls createHeartbeatJob with a name, 6-field cron expression, and a callback path starting with /api/scheduled/. Persist the returned taskUid on the business row, then mount an Express handler at that path authenticated via sdk.authenticateRequest.

Heartbeat cron vs AGENT cron: which should I use?

Use Heartbeat when the trigger only needs a single LLM call or deterministic logic handled inline by your site. Use AGENT cron only when the trigger genuinely needs agentic capabilities like web browsing, file manipulation, shell access, or multi-step deep research.

Why can't I use setInterval or node-cron for scheduled tasks?

Cloud Run terminates idle instances, so in-process timers do not survive and will silently stop firing. All recurring work must use platform-managed crons that POST to /api/scheduled/* endpoints on the deployed site.

Why is my scheduled task failing or retrying repeatedly?

The platform retries 5xx and 429 responses up to 3 times, so handlers must be idempotent and return 2xx for skippable cases like orphaned rows. Handlers also have a 2-minute timeout, and the site must be deployed since dev sandboxes are unreachable.

How do I look up the business row inside a cron callback handler?

Always look up the business row by the schedule_cron_task_uid column matching user.taskUid from sdk.authenticateRequest, never by values from req.body since the request body is attacker-controllable. The taskUid is set by the cron system and is trustworthy.

Can end-users create their own scheduled jobs through my site?

Yes, end-user-defined schedules are always Heartbeat crons created through your tRPC mutation using the decoded app_session_id cookie as the session token. End-users can only see and manage their own crons; owners inspect all crons via the manus-heartbeat CLI or the manus.im dashboard.