Idempotent Script Design

Use this skill when writing scripts, cron jobs, data pipelines, or any automated process that may be run multiple times. Design every operation to be safely re-runnable without side effects.

gabrielmoreira Updated 17 repo stars

File contents

Idempotent Script Design

An idempotent operation produces the same result whether run once or ten times.

Techniques:

  • Check before create: CREATE TABLE IF NOT EXISTS, mkdir -p, check file existence before writing.
  • Upsert instead of insert: Use INSERT ... ON CONFLICT DO UPDATE in SQL.
  • Atomic writes: Write to a temp file, then rename — prevents corrupt partial output.
  • Track progress: Write a completion marker or checkpoint so reruns skip done work.

Testing idempotency: Run your script twice on the same input and verify the output is identical.

Anti-patterns:

  • Appending to a file without checking if the data is already there.
  • Inserting rows without checking for duplicates.

gabrielmoreira/agent-skills-mirror/tree/main/mirrors/repos/aiming-lab@MetaClaw/memory_data/skills/idempotent-script-design commit cbae9186cf

Frequently asked questions

npx skillmds@latest add gabrielmoreira/idempotent-script-design