owner-actions
Skill0 starsChanged 14 days agoMITView on GitHub
How to hand the owner exactly one action at a time when the agent truly cannot do a step itself (payment, third-party account, password or 2FA code, legal acceptance, physical device, a decision only they can make) - record it in READINESS.md, keep working on everything else, ask once at the end of the turn in a fixed format, notify if they are away, verify when done, then ask the next. Use whenever you are about to tell the user to do something.
- Reads credentials
In this repository12 other files it gives its agents.
- AGENTS.mdAGENTS.md
- hireSkill
- learnSkill
- portfolioSkill
- production-readySkill
- product-specSkill
- qa-flowsSkill
- release-gatesSkill
- run-companySkill
- shipSkill
- ux-ui-reviewSkill
- workspaceSkill
The file
We split this skill into the rules it gives an agent
3 rules. About 0 are common, 1 is distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Very specific: line 22
Record: every owner-only item as a numbered line under ## Owner actions in READINESS.md: N.
- Distinctive: line 30
Notify: if the owner may be away: Claude Code uses the PushNotification tool with that one line.
- Very specific: line 32
Secrets: never ask the owner to paste a password, code or key into the chat.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Owner actions: one at a time
The owner should never receive a list of chores. They get one exact action, everything else keeps moving.
What counts as owner-only
Paying or entering card details; creating or verifying an account on a third-party service; a password, 2FA code or passkey; accepting legal terms; buying a domain; a physical action (plug in a phone, tap a prompt on their device); granting an OS permission; a product decision you genuinely cannot make. Everything else, including "test it yourself", "read the docs", "configure the server", is your job.
Before asking, check saved sign-ins (a credentials or account-access tool, if your setup has one) and OWNER.md "Decisions the agent makes alone" (the owner may already have delegated it). Every ask is a cost: the learn review drives owner asks per run down, so prefer a standing rule, a saved sign-in, a default you decide, a test mode or a template over a one-off ask.
Standing approvals: OWNER.md
OWNER.md at the project, company or portfolio root (template: OWNER.template.md in this folder; the init scripts write it) is where the owner pre-approves what you may do without asking: money per month and per item, accounts you may use, where you may post or message as the company, what you may spend on hiring, hard lines. Read it before every paid, public or outbound action. Inside the limits: act, log the spend or the post, move on. Outside them: one owner action. Caps at 0 mean free actions only; "fill OWNER.md" is then the first NEEDS YOU. Some things are never standing: moving money, signing, registering a company or bank account, identity documents, creating a third-party account, deleting customer data, statements in the owner's own name. The owner edits the file to widen or narrow it; you never edit the caps.
Protocol
- Record every owner-only item as a numbered line under
## Owner actionsin READINESS.md:N. <where> -> <exact action> -> unblocks <rows>. Mark the dependent rowsowner. - Keep going in the same turn on every row that does not depend on it.
- Stage it, then ask once, at the end of the turn. First do every step around the owner's click yourself: open the exact page in the owner's own browser, fill every field that is not a secret, payment detail or identity document, and start a watcher that notices when it is done. Never ask whether to open, prepare, deploy or continue something free and reversible; that question is itself an unnecessary ask. Then ask for the single most unblocking item, naming the tab already open, in this exact shape:
Never two. The rest stay in READINESS.md. Log the ask:NEEDS YOU (1 of <n>): <where, with URL or app name> -> <exact thing to click, type or send> -> unblocks <what>bash ~/.agents/skills/learn/scripts/owner-log.sh <project> <class> "<what>" "<how to never ask this again>" "<what you staged>"(class: sign-in, money, new-account, signature, identity, decision, physical, other); it refuses every ask but a decision until the fifth part names what is open and filled (2026-10-31: six sign-ups were asked with no tab open, and two of the six turned out to have no Google button). If the same ask would come back, add the rule that removes it to OWNER.md under "Standing rules proposed by the agent" and let the NEEDS YOU end with "answer yes to make it standing". When the owner hands the click back ("you do it"), ask one yes or no question that names the action, the count and any cost ("Publish all 38 Etsy listings now? $7.60 in Etsy fees"), with a reply button worded as that action, then do it on the yes: a safety check lets a commit in a connected app through only when the owner's words name it (2026-10-30: "you do it on chrome" was refused, the named yes went through). - Notify if the owner may be away: Claude Code uses the PushNotification tool with that one line; a Codex automation notifies once. Never notify for "no change".
- When the owner says it is done, verify it (log in, call the API, check the dashboard), finish what follows yourself (press a staged deploy, run the sync), mark the item done with the date, then ask for the next one.
- Secrets: never ask the owner to paste a password, code or key into the chat. Ask them to sign in themselves in the browser tab, add the key to
.env.localor the platform's variables, or use saved sign-ins or a credentials tool.
Wording
Plain, specific, 30 seconds to read. Good: NEEDS YOU (1 of 2): Railway -> open project "my-app", Variables, add RESEND_API_KEY from resend.com/api-keys -> unblocks F4 password reset email. Bad: "You need to set up email, configure DNS and verify the domain." When the owner must choose, list the options in the message or an in-app question, never a file path to open.
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.

