All skills
simota avatar

/tempo

@f2c9e0a
by shingo imotasimota/agent-skills85 stars
15

Designing scheduling and time-aware logic for cron, timezone/DST, retry/backoff, and business-calendar systems. Use when schedule design is needed.

Use this Skill: https://skilld.dev/gh/simota/agent-skills/tempo

This session only. Nothing lands on disk.

referenceinteraction-schemas.md

≈1.1k tokens on demand. Your agent reads this file only when SKILL.md points to it.

Tempo Interaction Schemas

Question schemas for human-in-the-loop decisions and AUTORUN _STEP_COMPLETE output structure. Surface only when the corresponding INTERACTION_TRIGGER fires.


INTERACTION_TRIGGERS

Trigger Timing When to Ask
DST_POLICY_CHOICE BEFORE_START Schedule runs at local wall-clock time crossing DST
CATCHUP_DEPTH BEFORE_START Backfill scope is unbounded or unspecified
OVERLAP_POLICY ON_DECISION Average runtime approaches interval length
SEMANTICS_CHOICE ON_DECISION At-least-once (cheap) vs exactly-once (Temporal) is unresolved
PLATFORM_FIT ON_RISK Current platform's guarantees do not match requirement

Question Schema

questions:
  - question: "How should the schedule behave across a DST transition?"
    header: "DST Policy"
    options:
      - label: "Defer to next valid time (Recommended)"
        description: "Skip non-existent times (spring-forward 02:30); use first occurrence at fall-back 01:30"
      - label: "Skip the ambiguous day"
        description: "Miss the run entirely when the wall-clock time is invalid/ambiguous"
      - label: "Run both occurrences at fall-back"
        description: "Accept double-run at 01:30 twice; requires strong idempotency"
      - label: "Switch schedule to UTC"
        description: "Evaluate in UTC; wall-clock drifts by +/-1h across DST"
    multiSelect: false
  - question: "How far back should backfill / catchup reach?"
    header: "Catchup"
    options:
      - label: "Since last successful watermark (Recommended)"
        description: "Replay from recorded watermark; bounded by data retention"
      - label: "Fixed window (e.g., last 24h)"
        description: "Cheap and predictable; may miss older gaps"
      - label: "No catchup -- skip forward"
        description: "Run at the next scheduled tick only; accept missed runs"
      - label: "Hard cap (e.g., max 7 days, then alert)"
        description: "Bounded catchup with ops alert on overflow"
    multiSelect: false
  - question: "What is the overlap policy when a run exceeds its interval?"
    header: "Overlap"
    options:
      - label: "Skip concurrent (Recommended)"
        description: "Drop the new tick if the previous run is still active; requires distributed lock"
      - label: "Queue sequentially"
        description: "Enqueue new ticks; may fall behind unbounded if runtime > interval"
      - label: "Allow concurrent"
        description: "Runs overlap; requires idempotent, stateless workload"
    multiSelect: false
  - question: "Which delivery semantics does the workload require?"
    header: "Semantics"
    options:
      - label: "At-least-once with idempotency (Recommended)"
        description: "Cheap on any platform; idempotency key protects against duplicates"
      - label: "Exactly-once via Temporal or similar"
        description: "Platform-native guarantee; higher infra cost, stricter model"
      - label: "At-most-once"
        description: "Acceptable data loss; simplest, use only for non-critical metrics"
    multiSelect: false

AUTORUN _STEP_COMPLETE Output Schema

Tempo-specific Constraints in _AGENT_CONTEXT: Platform, Timezone, SLA, DST_policy, Semantics.

_STEP_COMPLETE:
  Agent: Tempo
  Status: SUCCESS | PARTIAL | BLOCKED | FAILED
  Output:
    deliverable: [spec file path or inline]
    artifact_type: "Schedule Contract"
    parameters:
      cron_expression: "[cron string]"
      platform: GHA | EventBridge | K8s CronJob | Cloud Scheduler | Sidekiq | BullMQ | Celery | Temporal
      timezone: "[IANA name]"
      dst_policy: skip | defer | run-both | UTC
      overlap_policy: skip | queue | concurrent
      retry: {max_attempts, max_total_duration, backoff, retryable_on}
      idempotency: {key_formula, dedup_window, storage}
      dlq_destination: "[queue name or 'none']"
    files_changed: List[{path, type, changes}]
  Handoff:
    Format: TEMPO_TO_[NEXT]_HANDOFF
    Content: [Handoff content for next agent]
  Risks: [DST policy assumptions, platform SLA caveats, idempotency key lifetime]
  Next: Builder | Gear | Gear[gha] | Weave | Beacon | Voyager | Judge | DONE

Source: SKILL.md on GitHub

1 warning5mo3 checks · Risk SAFE
  • Gen Agent Trust Hub5mo

    This skill acts as a scheduling architect, providing documentation, design principles, and code snippets for complex time-based logic. It does not contain executable malicious code, obfuscation, or unauthorized network operations. External references are limited to official government data sources and well-known developer utilities.

  • Socket5mo

    No alerts

  • Snyk5mo

    Risk: MEDIUM · 1 issue

Signed by skilld at f2c9e0a. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 2 days ago.

Activeupdated last month

README badge

README badge for simota/agent-skills/tempo