goal-mode
Skill0 starsChanged 5 months agoMITView on GitHub
Stop babysitting a long job. Tell your agent the finish line — "keep working until X" — and it works toward it on its own instead of stopping every few minutes to ask you what to do next. It pings your computer when something meaningful changes and again when it's done, so you can walk away and get pulled back only when it matters. Use when you're stuck hand-nudging a long run ("keep going", "continue", "next") to keep it alive, when you want to work until a real condition is true (all tests pass, the draft is finished, the file is clean) and be notified instead of watching, or when you say "work until X and tell me when it changes".
3 other projects use a version of this.
Adopted by
Most recently taken up by
- TidalPaladin/skillstheir own version, first seen Nov 8, 2026
- shenwell/ai-agent-skillstheir own version, first seen Nov 1, 2026
- carlosbuelvas1/openclaw-skillstheir own version, first seen Oct 8, 2026
Other versions3 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 3
- shenwell/ai-agent-skills★ 2same name
- TidalPaladin/skills★ 1same name
- carlosbuelvas1/openclaw-skills★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository83 other files it gives its agents.
- AGENTS.mdAGENTS.md
- docs/AGENTS.mdAGENTS.md
- shep/AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- shep/CLAUDE.mdCLAUDE.md
- advisory-version-checkSkill
- aeo-llm-content-plannerSkill
- agency-command-centerSkill
- agency-morning-briefSkill
- agency-scorecardSkill
- agent-runbookSkill
- agent-usageSkill
- autonomy-budgetSkill
- backlink-pr-angle-generatorSkill
- brand-kit-from-urlSkill
- browser-automationSkill
- building-autonomous-agentsSkill
- capability-mapSkill
- case-study-engineSkill
- clickup-apiSkill
- client-dashboardSkill
- client-health-scoreSkill
- client-onboarding-osSkill
- cli-llm-routingSkill
- codebase-mapSkill
- command-from-your-phoneSkill
- competitor-content-gap-analysisSkill
- connection-monitorSkill
- content-brief-generatorSkill
- determinism-patternSkill
- dispatch-and-briefSkill
- division-operating-modelSkill
- dreamingSkill
- durable-stateSkill
- entity-topical-authority-mapperSkill
- first-real-jobSkill
- founding-circle-ai-securitySkill
- gbp-competitor-auditSkill
- host-your-agentSkill
- html-reportsSkill
- instinct-bridgeSkill
- evolveSkill
- learn-evalSkill
- learnSkill
- promoteSkill
- skill-createSkill
- internal-linking-auditorSkill
- keyword-deep-diveSkill
- ladder-auditSkill
- lanes-momentum-frameworkSkill
- launch-websiteSkill
- llm-citation-auditSkill
- migration-seo-paritySkill
- migration-visual-checkSkill
- model-gear-routerSkill
- multi-account-gatewaySkill
- multi-model-councilSkill
- night-shiftSkill
- novaSkill
- per-client-memory-routerSkill
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
3 rules. 0 are common, 3 are distinctive, and 0 are very specific to this project.
0
Common
Most of the 3 edited versions we read keep these.
3
Distinctive
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 57
If you hand it a vague one, the agent should tighten it into something checkable and show you the tightened version before it starts.
- Distinctive: line 99
Every visible desktop alert goes through one small script that works on both Mac and Windows:
- Distinctive: line 126
One driver at a time: Only one "keep working" loop should own a session at once.
“Common” is measured: kept by at least 6 in 10 of the 3 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
goal-mode
The problem this solves: you hand your agent a real piece of work — "get this article publish-ready", "keep fixing until every check passes", "clean up all these files" — and then you sit there nudging it. It does one step, stops, and waits. You type "keep going." It does another step, stops, waits. You type "continue." An hour of your day disappears into being the button that keeps the agent alive. That's not an agent working for you — that's you working for the agent.
goal-mode kills that loop. You give the agent the finish line, not the next step. It keeps working toward that finish line on its own — no "what should I do next?" check-ins — and it pings your computer two ways:
- When something meaningful changes — a step finishes, a test flips, it hits a blocker. An instant desktop notification, so you find out the moment it matters.
- On a steady heartbeat (about every 5 minutes) — a quiet "still working" ping, so you know it's alive even when nothing newsworthy happened.
Then when the finish line is reached, it pings you one last time — "done" — and stops. You get your attention back and spend it only when the work actually needs you.
This is the "stop watching, get pinged instead" half of an always-on setup. Its close sibling is
host-your-agent, which gets a job running while your machine sleeps on a schedule. Usegoal-modewhen you're at your machine and want a long job to finish itself without you nudging it; usehost-your-agentwhen you want a job to run overnight with nobody there at all. The safety framing for any run you walk away from — the time box, read-only-by-default, fail-loud-not-silent — lives in thenight-shiftskill. Readnight-shiftonce; it's the contract that makes leaving an agent alone trustworthy.goal-moderuns inside that contract.
Say this to your agent
"Keep working until every check passes. Don't stop to ask me what to do next — the finish line is the instruction. Ping my computer whenever something meaningful changes, give me a heartbeat every 5 minutes so I know you're alive, and notify me when it's done."
That one line is the whole thing. Below is what it actually does under the hood.
How it works (in plain terms)
goal-mode is built on top of a built-in agent feature that lets the agent hold a goal: a condition it keeps working toward and refuses to stop until it's true. On its own, that feature keeps the agent working — but it doesn't tell you anything; you'd still have to watch the screen. This skill adds the missing piece: the notifications to your computer, so you can look away.
So it composes three behaviors:
- Work until done. The finish line becomes the instruction. The agent keeps going toward it and won't quietly stop halfway and wait for you.
- Ping on each change. The moment something real happens — a step done, a check turned green, a wall hit — a desktop notification fires.
- Heartbeat every few minutes. A steady "still working" ping so a quiet stretch never leaves you wondering whether it froze.
The one thing you have to get right is the finish line — see below.
The 3-step setup
Step 1 — Write a finish line the agent can actually check
This is the whole game. A good goal is something the agent can prove is true by showing you the result — not a vibe.
- Weak (a vibe): "make the article better." Better how? The agent can't tell when it's done, so it never will be.
- Strong (checkable): "the article passes the content grader with a score of 90 or higher, and every heading has a section under it." Now there's a finish line it can hit and show you.
Other strong finish lines:
- "every test in the project passes and the linter reports no errors"
- "all 40 product descriptions in this folder are rewritten and none is over 160 characters"
- "the draft is complete end-to-end with an intro, three sections, and a conclusion — no placeholders"
If you hand it a vague one, the agent should tighten it into something checkable and show you the tightened version before it starts. You don't have to phrase it perfectly — just aim at a result you'd recognize as "done."
Step 2 — Arm goal-mode
Tell the agent the finish line and the notification cadence in one breath. Natural language is fine:
"Work until [your finish line]. Don't pause to ask what's next. Ping me on each meaningful change, heartbeat every 5 minutes, notify me when done."
Behind the scenes the agent registers the finish line as its held goal and starts the two notification triggers. You'll get a first "goal armed" ping right away so you know the notifications are working.
Want silent banners (visible, no sound)? Say "no sound" and it'll pass that through.
Step 3 — Walk away
Go do something else. You'll get:
- a quiet heartbeat every ~5 minutes ("still working — 3 of 6 checks green"),
- an instant ping the moment something changes ("content grader hit 91", or "hit a login wall — need you"),
- a final ping when the finish line is reached ("done — all checks green").
The only time it interrupts you with a real question is a genuine blocker it can't get past on its own — a password it doesn't have, a decision only you can make. That's the one legitimate reason for it to stop and ask. Everything else, it just handles and pings you about.
To call it off early, say "clear the goal" — it stops, tears down the heartbeat, and sends a final "cleared" ping.
What a good result looks like
You armed a goal, closed the terminal window in your head, and went to lunch. While you were gone:
- your computer buzzed a few times with quiet heartbeats — you glanced, saw progress, kept eating;
- one buzz said "draft finished, running the grader" — good, still on track;
- one buzz said "done — grader score 92, no placeholders left" — you came back, read the finished piece, and it was actually finished.
You never typed "keep going." You never watched a spinner. You spent your attention on the one moment the work needed a human — reviewing the finished result — instead of on being the agent's life support.
That's the win: the agent works to the finish line; you get pulled in only when it matters.
Notifications: what fires, and how
Every visible desktop alert goes through one small script that works on both Mac and Windows:
bash scripts/goal-notify.sh "<message>" "goal-mode" "<short subtitle>"
# add a 4th argument "none" to send it silently:
bash scripts/goal-notify.sh "still working" "goal-mode" "5-min heartbeat" none- On a Mac it fires a native Notification Center banner (with an optional sound).
- On Windows it fires a toast notification.
- On anything else it degrades quietly to a log line, so the run still works even where there's no notifier.
You don't call this yourself — the agent does. It's here so a "notification" always means a real banner on your screen, never a line of text buried in a terminal you're not looking at.
Capacity: don't let a long run die halfway (and the one thing not to do)
A work-until-done run can be long. The most common way a long run dies quietly is running out of model quota mid-job — it just stops, and you're back to babysitting. Give it headroom:
- Recommended (clean) path: point your agent at a budgeted API key with a spending cap you set. It's predictable, it's yours, and a cap means a runaway loop stops rather than surprising you with a bill.
- Running several jobs or accounts? Give each its own budgeted API key. Do NOT pool multiple personal-subscription logins behind a shared proxy to fake more capacity — that specific pattern violates Anthropic's terms of service and gets accounts banned. If you need more headroom, raise your API budget or stagger the jobs so they don't all run at once — don't pool subscription logins.
The rules it runs under (why you can walk away)
- One driver at a time. Only one "keep working" loop should own a session at once. If the agent is already running another continuous loop, it should surface that and ask which one wins — not stack two loops that fight each other.
- Proof, not claims. The agent must show the result that proves the finish line is met (the passing tests, the finished draft, the clean file list) — not just assert "done." If it can't show it, it isn't done.
- A real blocker is the only reason to stop and ask. Missing credentials or an irreversible decision — that's a legitimate interrupt. "I'm not sure what to do next" is not; the finish line is the instruction.
- Fails loud, not silent. A stall, a down provider, a hit wall — you get a ping. Silence is never treated as success.
These mirror the night-shift contract for any run you're not actively watching. When they hold, "work until it's done and tell me when it changes" is a promise you can rely on.
Where things land
| File | What it is |
SKILL.md | This walkthrough — read it first. |
README.md | The copy-paste quickstart. |
scripts/goal-notify.sh | The cross-platform desktop-notification script (Mac banner / Windows toast). The agent calls this on every ping. |
goal-mode vs. its neighbors
host-your-agent— schedules a job to run while your machine sleeps, with nobody there.goal-modeis for when you're at your machine and want a long job to finish itself without your nudging. Same family, different moment.night-shift— the safety contract for any unattended run (time box, read-only-by-default, fail-loud).goal-modedoesn't restate it; it runs inside it. Readnight-shiftonce.- A plain recurring check ("look at the deploy every 5 minutes, forever") is not a goal — there's no finish line. That's a scheduling task, not
goal-mode. Usehost-your-agentfor anything on a fixed schedule.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

