ulw-plan-23ae68— agent skill

ulw-plan-23ae68 — independently scanned and version-tracked by SaferSkills.

by code-yeongyu·Agent Skill·github.com/code-yeongyu/oh-my-openagent

Is ulw-plan-23ae68 safe to install?

SaferSkills independently audited ulw-plan-23ae68 (Agent Skill) and scored it 79/100 (yellow). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 5 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.

Score
79/100
●●●●●●●●○○
↑ +0 since first scan (79 → 79)Re-scan~30s
Latest scan
ScannedJun 22, 2026 · 31d ago
Scans run1 over 90 days
Detectors55 checks · 5 categories
Findings5 warnings · 0 high
EngineSaferSkills 755a9a5
View methodology →
SaferSkills installs
This week0
This month0
All time0
CategoryWeightCategory scoreContribution
Securityprompt, exec, net, exfil, eval
35%
40
14.0 pts
Supply chainhash, typosquat, maintainer, lockfile
20%
100
20.0 pts
Maintenancestaleness, pinning, CI
15%
100
15.0 pts
TransparencySKILL.md, perms, README
15%
100
15.0 pts
Communityinstalls, verify, response
15%
100
15.0 pts

Findings & checks · 5 flagged

Securityscore 40 · 5 findings
MEDIUMInstruction telling the agent not to ask for approvalSS-SKILL-INJECT-DONT-ASK-01 · Prompt injection · packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/SKILL.md×3
MEDIUMit fires on intent; the real damage depends on the host agent's own approval-gating.
Why it matters

The text {match} tells the agent to skip the normal "ask the user first" gate. Used adversarially it removes the human-in-the-loop check before destructive or sensitive actions, turning a normally-gated agent into a fire-and-forget executor.

The exact value spotted
excerptpackages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/SKILL.md· markdown
20- **OVERRIDE - explicit ask wins:** if the user explicitly asks to be questioned or intervie
… (108 chars elided on L20)
21- **CLEAR** - the user knows the outcome; the only open items are preferences/tradeoffs the
… (108 chars elided on L21)
22- **UNCLEAR** - the outcome itself is fuzzy (a vague brief, a bootstrap, `$start-work` with
… (108 chars elided on L22)
23- **ON THE FENCE** - when CLEAR vs UNCLEAR is genuinely ambiguous, treat it as CLEAR and ask
… (108 chars elided on L23)
24 
Occurrences
3 occurrences · first at L22, also L44, L46
Show all 3 locations
Line
File
L22
packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/SKILL.md
L44
packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/SKILL.md
L46
packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/SKILL.md
How to fix
Remove the approval-skipping instruction, or scope it narrowly to a specific safe, reversible action.
  1. Delete blanket "don't ask / no need to confirm" directives from the skill.
  2. If the skill is a genuine autonomous job, restrict the opt-out to a named non-destructive action rather than all actions.
Framework references
OWASPLLM01ATLASAML.T0051
Trace & refs
ruleSS-SKILL-INJECT-DONT-ASK-01sha256010a4ca2189f0f8arubric 365aacaView on GitHub
MEDIUMInstruction telling the agent not to ask for approvalSS-SKILL-INJECT-DONT-ASK-01 · Prompt injection · packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/full-workflow.md
MEDIUMit fires on intent; the real damage depends on the host agent's own approval-gating.
Why it matters

The text {match} tells the agent to skip the normal "ask the user first" gate. Used adversarially it removes the human-in-the-loop check before destructive or sensitive actions, turning a normally-gated agent into a fire-and-forget executor.

The exact value spotted
excerptpackages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/full-workflow.md· markdown
35Make ONE judgment and follow ONE reference:
36- CLEAR -> `intent-clear.md`: run the **two filters** on every candidate question; ask only
… (44 chars elided on L36)
37- UNCLEAR -> `intent-unclear.md`: research maximally, adopt announced best-practice defaults
… (38 chars elided on L37)
38 
39Both record everything to `.omo/drafts/<slug>.md` as they go - long sessions outlive your co
… (60 chars elided on L39)
Occurrences
1 occurrence · at L37
How to fix
Remove the approval-skipping instruction, or scope it narrowly to a specific safe, reversible action.
  1. Delete blanket "don't ask / no need to confirm" directives from the skill.
  2. If the skill is a genuine autonomous job, restrict the opt-out to a named non-destructive action rather than all actions.
Framework references
OWASPLLM01ATLASAML.T0051
Trace & refs
ruleSS-SKILL-INJECT-DONT-ASK-01sha25612211d7a427c799arubric 365aacaView on GitHub
MEDIUMInstruction telling the agent not to ask for approvalSS-SKILL-INJECT-DONT-ASK-01 · Prompt injection · README.md
MEDIUMit fires on intent; the real damage depends on the host agent's own approval-gating.
Why it matters

The text {match} tells the agent to skip the normal "ask the user first" gate. Used adversarially it removes the human-in-the-loop check before destructive or sensitive actions, turning a normally-gated agent into a fire-and-forget executor.

The exact value spotted
excerptREADME.md· markdown
349### Planning. Prometheus
350 
351Complex task? Don't prompt and pray.
352 
353`/start-work` calls Prometheus. He **interviews you like a real engineer**, identifies scope
… (108 chars elided on L353)
Occurrences
1 occurrence · at L351
How to fix
Remove the approval-skipping instruction, or scope it narrowly to a specific safe, reversible action.
  1. Delete blanket "don't ask / no need to confirm" directives from the skill.
  2. If the skill is a genuine autonomous job, restrict the opt-out to a named non-destructive action rather than all actions.
Framework references
OWASPLLM01ATLASAML.T0051
Trace & refs
ruleSS-SKILL-INJECT-DONT-ASK-01sha256c0960ee26e149730rubric 365aacaView on GitHub
Supply chainscore 100 · 0 findings
All supply chain checks passedNo findings in this category for the latest scan.pass
Maintenancescore 100 · 0 findings
All maintenance checks passedNo findings in this category for the latest scan.pass
Transparencyscore 100 · 0 findings
All transparency checks passedNo findings in this category for the latest scan.pass
Communityscore 100 · 0 findings
All community checks passedNo findings in this category for the latest scan.pass
Vendor response · right of reply
Are you the maintainer? Submit a response →

Audit the pieces. Scan the whole. Decide.

~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.