スキル一覧に戻る
paralect

hive-scheduler

by paralect

0🍴 0📅 2026年1月18日
GitHubで見るManusで実行

SKILL.md


name: hive-scheduler description: How to create scheduled jobs in Hive framework globs:

  • src/scheduler/handlers/*.js alwaysApply: false

Scheduler Jobs

Background jobs on cron schedules.

Location: /src/scheduler/handlers/{jobName}.js

Template

import db from 'db';

export const handler = async () => {
  // Job logic
};

export const cron = '0 * * * *';  // Every hour

Cron Patterns

┌─ minute (0-59)
│ ┌─ hour (0-23)
│ │ ┌─ day of month (1-31)
│ │ │ ┌─ month (1-12)
│ │ │ │ ┌─ day of week (0-6)
* * * * *
PatternSchedule
* * * * *Every minute
*/5 * * * *Every 5 minutes
0 * * * *Every hour
0 */12 * * *Every 12 hours
0 0 * * *Daily at midnight
0 9 * * 1Mondays at 9am

Examples

Sync external data:

import db from 'db';
import moment from 'moment';
import externalApi from 'services/externalApi';

export const handler = async () => {
  const items = await externalApi.list({
    updatedSince: moment().subtract(5, 'minutes').toDate(),
  });
  
  for (const item of items) {
    await db.services.items.updateOne(
      { externalId: item.id },
      (doc) => ({ ...doc, ...item })
    );
  }
};

export const cron = '*/5 * * * *';

Mark overdue:

import db from 'db';
import moment from 'moment';

export const handler = async () => {
  await db.services.invoices.updateMany(
    {
      isPaid: { $ne: true },
      isDue: { $ne: true },
      dueOn: { $lt: new Date() },
    },
    (doc) => ({ ...doc, isDue: true })
  );
};

export const cron = '0 */12 * * *';

Rules

  • Export both handler and cron
  • Keep jobs idempotent (safe to re-run)
  • Log progress for debugging

スコア

総合スコア

50/100

リポジトリの品質指標に基づく評価

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

レビュー

💬

レビュー機能は近日公開予定です