refactor-for-determinism

Refactor for Determinism

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "refactor-for-determinism" with this command: npx skills add kasperjunge/agent-resources/kasperjunge-agent-resources-refactor-for-determinism

Refactor for Determinism

Build reliable skills by separating deterministic steps from judgment-based steps.

Core Principle

Deterministic steps belong in scripts. Use SKILL.md to orchestrate the workflow and reserve judgment for the non-deterministic parts.

Workflow

  1. Identify Deterministic vs Non-Deterministic Work

For each step in the skill:

  • Deterministic: repeatable, mechanical, or validation-heavy steps → script candidates

  • Non-deterministic: judgment, interpretation, creative choices → keep in SKILL.md

Examples of deterministic steps:

  • Running quality checks

  • Verifying clean git state

  • Updating version strings

  • Promoting CHANGELOG sections

  • Collecting diff context for review

Examples of non-deterministic steps:

  • Writing changelog content

  • Selecting a solution approach

  • Code review judgments

  • Deciding release timing

  1. Design Scripts for Deterministic Steps

For each deterministic step:

  • Create a script in scripts/ within the skill directory

  • Make it self-contained with clear error messages

  • Validate inputs and exit non-zero on failure

  • Prefer small, single-purpose scripts

  1. Update SKILL.md to Use Scripts
  • Replace manual command lists with script calls

  • Reference scripts using relative paths: scripts/...

  • Keep judgment steps explicit in prose

  1. Document Boundaries

Make the line between scripted and non-scripted steps obvious:

  • Use section headers like "Deterministic Steps" and "Judgment Steps"

  • Call out where human/agent judgment is required

Output Format

Determinism Audit

Deterministic Steps (script candidates)

  • [Step] → [script name]

Non-Deterministic Steps (keep in SKILL.md)

  • [Step] → [why it needs judgment]

Script Plan

  • scripts/[name] - [purpose, inputs, outputs]

SKILL.md Updates

  • [Where to call each script]

Common Mistakes

Mistake Fix

Scripting judgment Keep decision-making in SKILL.md

One giant script Split into small, focused scripts

Silent failures Print clear errors and exit non-zero

Hardcoded paths Use repo-relative paths

Forgetting SKILL.md updates Always wire scripts into instructions

What NOT to Do

  • Do NOT hide decisions inside scripts

  • Do NOT make scripts that require manual editing

  • Do NOT mix multiple responsibilities into one script

  • Do NOT add extra documentation files beyond SKILL.md

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

brainstorm-solutions

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

commit-work

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

make-release

No summary provided by upstream source.

Repository SourceNeeds Review