PromptMake
2026-09-08·16 min read

Skills + Loop Workflow: Standing Jobs with Bounded Runs

Claude skills and loop workflow: encode standing jobs in SKILL.md, bound runs with /goal or /loop. Config and command text only via PromptMake.

claude skills and loopclaude skillsclaude code loopSKILL.md/goalagent skillspromptmake

Generate Claude Skills, Custom GPTs & Gemini Gems

Paste-ready SKILL.md, GPT config, or Gem instructions — free.

Try Agent Skills Generator →

Claude skills and loop work best as a pair: Skills hold the standing playbook; loops bound the run that finishes today's ticket. A Skill is a SKILL.md pack with trigger-rich description and imperative steps. A loop is session control (/goal for a finish line, /loop for interval polling) with verify language and a turn or time cap. This page is the combined workflow product story. Soft skill drafts: https://promptmake.net/skills. Soft loop command text: https://promptmake.net/loop-prompt-generator. PromptMake writes config and command text only. It does not run Claude Code, upload skills, or execute loops. You leave with a stack map, paste patterns, a week-one rollout, and an FAQ.

What a skills + loop stack solves

Teams burn tokens when every ask rewrites house style from scratch, or when a free-running agent keeps "improving" past the finish line. Claude skills and loop together fix both: the Skill teaches how your team ships the recurring chore; the loop owns when to stop. Anthropic's Agent Skills docs (code.claude.com skills pages, September 2026) describe progressive disclosure: name and description stay cheap until the skill loads. Claude Code /goal docs describe a session-scoped completion condition judged after each turn by a small fast model. /loop (scheduled tasks) re-runs a prompt on an interval while the session stays open.

Use this stack when release notes, PR rubrics, support drafts, or migration guards repeat weekly, and when today's instance still needs a measurable done state. Skip it for one-line edits you can verify in a single turn. Soft start when blank folders stall you: describe the standing job at https://promptmake.net/skills, then draft the finish-line command at https://promptmake.net/loop-prompt-generator.

This article is not claude-code-skill-vs-loop (the vs picker). Stay here for the combined workflow: Skill first, bounded run second, review third.

Layer map: Skill owns how, loop owns when

Put stable steps, fences, templates, and must-not-do rules in the Skill body. Put today's acceptance criteria, proof commands, and stop clauses in the /goal or /loop text. Keep CLAUDE.md for always-on repo facts. Do not stuff a one-off migration into SKILL.md. Do not ask /goal to invent your release-note voice from memory.

As of September 2026, every Skill needs YAML front matter with at least name and description, then markdown instructions. Description must say what the Skill does and when Claude should use it. Optional fields in current Claude Code docs can restrict auto-invocation, limit tools, or point at supporting files. Verify field names on the live skills page when you upgrade Claude Code.

For loops, /goal starts the next turn when the previous turn ends (or on limited idle check-ins while background work waits). It stops when the evaluator says met or impossible, when an unrecoverable error clears the goal, or when you run /goal clear. /loop starts on an interval; it stops when you cancel, when Claude ends the scheduled work, or when the recurring task expires (docs note a seven-day bound for many session-scoped recurring tasks). Prefer /goal for "keep fixing until green." Prefer /loop for "poll CI every five minutes."

Skill fields that carry the standing job

Trigger-rich description: verbs, scope, and file types. Short imperative body: numbered steps, output fences, escalate rules. Sibling files for long templates; link them from SKILL.md. Test with must-load and must-not-load prompts after every description edit. Draft structure on the Claude tab at https://promptmake.net/skills, then edit paths before you commit.

Example description shape: "Draft customer-facing release notes from merged PRs using references/release.md. Use when the user asks for release notes, CHANGELOG polish, or ship notes for this repo."

Loop fields that bound the run

Measurable end state the transcript can prove (tests exit 0, lint clean, CHANGELOG covers listed PRs). Stated check Claude must surface. Constraints that must not break. Turn or time clause inside the condition ("or stop after 20 turns"). Soft drafting: https://promptmake.net/loop-prompt-generator returns recommended primitive, command text, success criteria, turn cap, and abort notes. You still paste and run in Claude Code.

Combined workflow: standing job, then bounded run

The week-one pattern is fixed. Encode the playbook once. Run today's instance under a cap. Review whether the Skill or the goal condition needs a tweak. Repeat. Guests get about three generations per day per PromptMake path; free accounts about five. Quotas are separate for /skills and /loop-prompt-generator.

Pick a chore that already happened three times this month. Name it in one line. Ask if the steps will still be true next month. If yes, that line becomes the Skill. Today's ticket details become the /goal condition. Soft scaffolds keep the layers separate on purpose so standing jobs do not collapse into one-off ticket sludge.

Anthropic's /goal docs (code.claude.com/docs/en/goal, reviewed September 2026) stress measurable conditions the evaluator can judge from conversation evidence. The evaluator does not run shell on its own. Claude must surface command results. Write the proof into the condition and into the Skill steps so each turn leaves evidence. Idle check-ins for background work are capped on current Claude Code versions; do not assume infinite unattended babysitting without reading the live goal page for your build.

Step 1: Draft and install the Skill

  1. Open https://promptmake.net/skills and describe the recurring job in plain language. 2. Generate a Claude SKILL.md draft. 3. Tighten the description triggers. 4. Move long tables into sibling files. 5. Add fences before destructive shell. 6. Place the folder under .claude/skills/ (project) or ~/.claude/skills/ (personal). 7. Invoke with /skill-name and with a natural ask that should auto-load. 8. Fix false loads before you trust the Skill in a loop.

Step 2: Write the bounded /goal or /loop

  1. Open https://promptmake.net/loop-prompt-generator. 2. Select /goal for a finish line or /loop for polling. 3. Paste today's acceptance criteria and proof commands. 4. Include a turn or time cap. 5. Review every path. 6. In Claude Code, load the Skill (slash or matching ask), then paste the /goal. 7. Watch evaluator verdicts. 8. Clear early with /goal clear if the branch is wrong.

Example combined paste shape: invoke or trigger your release-notes skill, then /goal CHANGELOG.md has an entry for every PR merged this week, npm test -- test/changelog exits 0, or stop after 15 turns. The Skill owns format. The goal owns completion.

Paste patterns for three common jobs

Keep one Skill per standing chore. Keep one goal condition per session instance. Soft-edit both drafts so paths match your monorepo. PromptMake never opens your repository. The patterns below pair a standing SKILL.md job with a capped session runner so house style stays in git and today's proof stays in the /goal line. Copy the shape, swap paths, and keep fences honest for your permission mode. If the Skill description is vague, every loop turn may reload the wrong playbook and burn context before the evaluator ever sees a test result.

Store the Skill folder next to the team's Claude Code config so reviews catch trigger drift. Store winning /goal strings in the ticket or a short runbook so the next engineer does not invent a new finish line. Soft scaffolds at https://promptmake.net/skills and https://promptmake.net/loop-prompt-generator keep those two artifacts separate on purpose.

Release notes: Skill template + /goal coverage

Skill body: steps to list merged PRs, map each to a customer-facing bullet, ban internal ticket IDs, link references/release.md. Goal: "CHANGELOG.md covers PRs #120-#134 in customer language, or stop after 12 turns." Proof: Claude shows the PR list and the diff hunks in the transcript so the evaluator can judge.

PR review rubric: Skill checklist + capped /goal

Skill body: security, tests, docs, and API fence checklist. Goal: "Open PR review comments cover every rubric item for branch feature/auth, or stop after 10 turns. Do not push." Use Manual mode if tool approval must stay human. Auto mode pairs with /goal only when you accept unattended tool calls inside policy.

Support draft: Skill tone + short /goal

Skill body: approved FAQ links, empathy fences, escalate-to-human rules. Goal: "Draft reply cites FAQ section 3 and asks one clarifying question, or stop after 6 turns." Short caps fit drafting jobs. Long caps fit migrations.

Common mistakes in a skills + loop workflow

Encoding today's ticket as a Skill. Acceptance criteria rot after merge. Put them in /goal.

Writing a /goal with no playbook. The agent invents house style. Put style in SKILL.md.

Fuzzy conditions. "Make it better" gives the evaluator nothing to judge. Anthropic's /goal guidance wants measurable end states Claude surfaces in conversation.

Missing turn caps. Bound cost in the condition text. A twenty-turn ceiling is easier to raise later than an uncapped burn is to explain.

Using /loop for a finish-line refactor. Interval polling is for CI and deploys. Finish lines belong in /goal.

Treating PromptMake as a runner. It returns text. You run Claude Code. Soft honesty stays on https://promptmake.net/skills and https://promptmake.net/loop-prompt-generator.

Skipping must-not-load tests. Vague Skill descriptions fire inside every loop turn and burn context.

Mixing Skill body and goal condition in one file. Standing steps drift when every ticket rewrites the playbook. Keep two artifacts.

When to draft with PromptMake next

Blank SKILL.md stalls most teams. Soft start at https://promptmake.net/skills for Claude, Custom GPT, or Gemini Gem tabs when you need the same standing job on another host. Soft loop text at https://promptmake.net/loop-prompt-generator when the finish line is clear but the command shape is not. Cross-link both so the Skill and the run stay editable artifacts in git.

A practical week looks like this. Monday: draft the Skill, run must-load and must-not-load prompts, commit. Tuesday: wrap one real ticket in a capped /goal with the Skill loaded. Wednesday: tighten description triggers from false loads. Thursday: add a sibling reference file if the body grew past a page. Friday: save the winning /goal shape next to the Skill README so onboarding does not restart from folklore.

PromptMake stays text-only on both paths. Guests get about three generations per day per path; free accounts about five as of mid-2026. Confirm live quotas. Do not invent marketplace upload, loop execution, or repo access claims for the product.

Read claude-code-skill-vs-loop when you only need the picker. Read claude-loop-prompt-guide or agent-loop-prompt-templates when stop conditions need more templates. Stay here for the combined standing-job-plus-bounded-run story.

FAQ

What is a claude skills and loop workflow?

A claude skills and loop workflow stores recurring playbooks in SKILL.md and bounds each session with /goal or /loop command text. Skills teach how. Loops decide when to keep going and when to stop. Soft drafts: https://promptmake.net/skills and https://promptmake.net/loop-prompt-generator.

Does PromptMake run Skills or loops?

No. PromptMake generates config and command text only. You install Skills in Claude Code or claude.ai paths you control. You paste /goal or /loop into your session. Soft skill hub: https://promptmake.net/skills.

Should the Skill or the /goal come first?

Draft the Skill first when the chore repeats. Draft /goal first when you already have a working playbook and need a finish line today. Most teams ship Skill, then wrap the first real ticket in a capped /goal.

How do I keep costs down on long goals?

Narrow directory scope, prefer targeted tests, write a turn clause into the condition, and clear with /goal clear when the branch is wrong. Evaluation tokens on the small fast model are usually small next to main-turn spend, per Anthropic's /goal docs as of September 2026.

Can one Skill run inside many /goal sessions?

Yes. That is the point. The Skill loads when the description matches or when you slash-invoke it. Each /goal is session-scoped for today's proof. Soft command text: https://promptmake.net/loop-prompt-generator.

How is this different from claude-code-skill-vs-loop?

That article is the disambiguation picker. This page is the combined product workflow: how to stack Skills with bounded runs, paste patterns, and rollout steps. Soft start for both layers remains /skills plus /loop-prompt-generator.

Where do I start on the free tier?

Describe one recurring chore at https://promptmake.net/skills, generate a Claude draft, edit triggers, then open https://promptmake.net/loop-prompt-generator for a capped /goal. Guests get about three runs per path per day; free accounts about five as of mid-2026. Confirm live quotas on the site.

Ready to generate your own prompts?

Free. No sign-up required. Works with all major AI models.

Related articles