本文へ移動
cccskills
無料GitHub で公開

jobs-events

Use when creating Laravel jobs, queued workflows, events, or listeners. Covers clear responsibilities, safe serialization, and retry/failure handling.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md2.7 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

jobs-events

When to use

Use when creating jobs, events, listeners, or queued workflows.

Do NOT use when:

  • Artisan commands (use artisan-commands skill)
  • Scheduling configuration (use laravel-scheduling skill)

Procedure: Create a Job

Step 0: Inspect

  1. Check existing jobs — match naming, queue config, retry strategy, failure handling.
  2. Determine sync vs. async — only queue work that is slow, retryable, or non-blocking.
  3. Check queue driver: .env / config/queue.php (Redis, database, sync).
  4. Check Horizon: config/horizon.php for queue names, supervisors, balancing.

Step 1: Create the job class

  1. Pass IDs or compact DTOs in constructor — not full models with relations.
  2. Set queue via $this->onQueue(Queue::NAME->value).
  3. Add tags() for Horizon filtering.
  4. Set $maxExceptions, backoff(), $uniqueFor as needed.

Step 2: Implement handle()

  1. Keep focused and readable.
  2. Delegate complex logic to services/actions.
  3. Design for idempotency — retries must not create duplicates.

Step 3: Test

  • Bus::fake(), Queue::fake(), Event::fake().
  • Test side effects, not just dispatch assertions.

Procedure: Create an Event + Listener

Step 1: Create event

  • Past-tense naming: OrderPlaced, ImportCompleted.
  • Keep payload focused.
  • Laravel 11+: automatic discovery — no manual registration.

Step 2: Create listener

  • One responsibility per listener.
  • Delegate large logic to services.
  • Use ShouldQueue on listeners that do heavy work.

Conventions

→ See guideline php/jobs.md for full conventions (serialization, idempotency, events, dispatching).

Output format

  1. Job/Event/Listener class(es) with proper serialization and retry config
  2. Event registration in EventServiceProvider if needed

Gotcha

  • Without ShouldQueue, jobs run synchronously.
  • Queued jobs serialize constructor args — don't pass loaded models.
  • Listener exceptions block the event chain — queue heavy listeners.
  • Set $tries and $backoff — unlimited retries overwhelm the queue.

Do NOT

  • Do NOT serialize Eloquent models with loaded relations into queued jobs.
  • Do NOT ignore idempotency — retries must not create duplicates.
  • Do NOT hide critical business flows behind deep listener chains.

Auto-trigger keywords

  • Laravel job
  • queue
  • event
  • listener
  • dispatch
  • serialization

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'.

日本語の概要は準備中です。原文の説明を表示しています。

event4u-app/agent-config112026年10月13日 更新

Use when defining or auditing the activation event — aha-moment selection, retention correlation, falsifiable definition. Triggers on 'what is our aha moment', 'redefine activation'.

日本語の概要は準備中です。原文の説明を表示しています。

event4u-app/agent-config112026年10月13日 更新

Use when capturing an architectural decision — file naming, next ADR number, Status / Context / Decision / Consequences, index regen; fires even without saying 'ADR'.

日本語の概要は準備中です。原文の説明を表示しています。

event4u-app/agent-config112026年10月13日 更新

Adversarial critique — devil's advocate, stress-test, honest teardown ('poke holes', 'be brutal', 'was hältst du davon'); explicit request only. Routine code or design review → code-review.

日本語の概要は準備中です。原文の説明を表示しています。

event4u-app/agent-config112026年10月13日 更新

Use when reading, creating, or updating agent documentation, module docs, roadmaps, or AGENTS.md. Understands the full .augment/, agents/, and copilot-instructions structure.

日本語の概要は準備中です。原文の説明を表示しています。

event4u-app/agent-config112026年10月13日 更新

Use for an adversarial red-team / blue-team / auditor review of an AI agent's CONFIG + behaviour (rules, skills, MCP, hooks, permissions) — attack-chain → defensive-gap list, not a code audit.

日本語の概要は準備中です。原文の説明を表示しています。

event4u-app/agent-config112026年10月13日 更新

event4u-app のスキルをすべて見る

このスキルの問題を報告する