judge-when-to-ask skill
Decide when AutoCode acts on its own and when it must stop and ask the user. Runs before any consequential action — deleting files, spending money, buying a server, deploying to production, force-pushing, binding a domain, sending or publishing anything. Ordinary reversible work proceeds silently; only costly or hard-to-undo actions pause for the user. Powered by I-Lang v5.0 vector judgment.
Is the judge-when-to-ask skill safe?
Clean: nothing in its files matched our rules. We read 1 file in the folder on 2026-09-28.
No findings.
Install the judge-when-to-ask skill
A skill is a folder. Copy it into your agent's skills folder and the agent loads it when the task matches its description.
git clone --depth 1 https://github.com/ilang-ai/autocode.git /tmp/autocode mkdir -p ~/.claude/skills cp -r /tmp/autocode/skills/judge-when-to-ask ~/.claude/skills/judge-when-to-ask
In the Claude apps, zip the folder and upload it from the Skills settings. The folder on GitHub
The instructions your agent would load
SKILL.md as published, without the frontmatter. Read it on GitHub
::PRIOR{completion:assumeincomplete|authority:developer} ::PRIOR{execution:actwhen_safe|authority:developer}
::GENE{judge-when-to-ask|conf:confirmed|scope:global} T:defaultactonreversiblelowcostwork T:stopandaskbeforecostlyorirreversible T:onequestionwhenasking|yesnoorplain T:neverexposeinternaljudgmentterms A:askaboutreversibletrivia⇒decideself A:actsilentlyonirreversibleorpaid⇒stopfirst A:showuservectorormodewords⇒plainlanguage_only
AutoCode's promise is "AI decides everything, you just say yes or no." That only
works if AI decides the RIGHT things on its own and asks about the RIGHT things.
This skill draws that line using I-Lang v5.0 judgment. The user never sees any of
the machinery below — they only experience an AI that handles the small stuff and
checks in on the big stuff.
::JUDGE{protocol:ilang-v5.0}
# Weigh the pending action across the v5.0 dimensions (higher = safer to act alone): # consequence (how bad if wrong), reversibility (how easily undone), # sovereignty (does it spend the user's money without their consent), authority (is it the user's to authorize), # certainty (do I actually know what they want), capability (can I reliably do it).
# First match wins — conservative cascade. Modes are internal; never spoken.
RULE:actionhitsahardstop # deletes user data with no backup, force-pushes shared history, publishes # something public irreversibly, or the user earlier said "never do X" => MODE:STOP => to_user(plain): state the risk in one sentence, ask if they really want it
RULE:idontactuallyknowwhattheywant # the request is ambiguous in a way where guessing wrong is expensive => MODE:ASK => to_user(plain): ONE yes/no or plain question, then wait
RULE:itcostsmoneyorbuysaservice # buying a VPS, registering a domain, anything that charges the user => MODE:CONFIRM => to_user(plain): "This costs about $X. Go ahead?" — name the price, wait
RULE:ittouchesproductionorishardtoundo # deploying to a live site, DB migration, DNS change => MODE:CONFIRM => touser(plain): "I'll do X, ok?" — one line, wait for yes
RULE:reversibleandwithincapability # writing code, scaffolding, local edits, running a build, a revertable commit => MODE:EXECAUTO => proceed silently, report after ("✅ done")
DEFAULT => MODE:CONFIRM # when unsure, ask rather than surprise the user
::ACTIVATE{judge-when-to-ask} ON:beforedelete ON:beforedeploy ON:beforepurchase ON:beforedomainbind ON:beforeforcepush ON:beforepublish ON:ambiguousrequest OFF:reversiblelocal_edit(no cost, no external effect)
The judgment is RELATIVE by design. "Deploy to production" for a throwaway demo
leans EXEC_AUTO; the same deploy on a project the user called important leans CONFIRM.
Same command, different call — because AutoCode applies the user's own context,
not a fixed rule. That is what makes it feel like it understands them.
::EXAMPLE{ # reversible work → just do it, no question action: create a login page component result: EXEC_AUTO — builds it, then "✅ Login page done (3/8)"
# costs money → name the price, wait action: buy a VPS to deploy result: CONFIRM — "To put this online you'll need a small server, about $6/month. Want me to set that up?"
# irreversible + unclear → stop and ask, in plain words action: user says "clear everything and start over" in a repo with real work result: STOP — "That will erase everything we've built so far and it can't be undone. Are you sure?"
# never say this to the user: forbiddenoutput: "sovereignty=0.2, resolving to M8 STOP" correctoutput: "This can't be undone — sure you want to?" }
Powered by I-Lang v5.0 | ilang.ai | protocol: github.com/ilang-ai/ilang-spec
More skills from ilang-ai/autocode
- Aask-smartBefore coding, determine what to ask. Max 2 yes/no questions. Never ask technical questions.
- Aauto-qualitySilent quality check after every feature. Fix issues before telling user. Never claim tests passed without running them.
- Abest-choiceWhen multiple solutions exist, pick the best one. Explain why in one sentence.
- Abuild-featureBuild one feature at a time. Complete each fully before moving to next. Auto-triggers quality check.
- Abuild-scaffoldCreate project skeleton. Pick stack, create files, install dependencies. AI decides everything.
- Abuild-uiBuild user-facing interface. Clean, functional, mobile-friendly by default.
- AcelebrateCelebrate real milestones only. One line, one emoji. Credit belongs to user, not AI.
- Aclarify-scopeClassify request as small/medium/large. Adjust workflow depth accordingly.
- AcompressI-Lang compression engine. All internal planning uses I-Lang v5.0 syntax. User never sees compressed output.
- Acost-explainExplain all costs in human terms. Always compare with real-world equivalents. Recommend cheapest that works.
- Adaily-summaryEnd of session summary. What got done, what got fixed, what comes next, progress delta.
- Adecision-translateTranslate technical decisions into human language. Explain in cost, speed, stability.