← スキル一覧に戻る

hive-scheduler
by paralect
⭐ 0🍴 0📅 2026年1月18日
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)
* * * * *
| Pattern | Schedule |
|---|---|
* * * * * | Every minute |
*/5 * * * * | Every 5 minutes |
0 * * * * | Every hour |
0 */12 * * * | Every 12 hours |
0 0 * * * | Daily at midnight |
0 9 * * 1 | Mondays 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
handlerandcron - 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
レビュー
💬
レビュー機能は近日公開予定です