Ae1
- Category
- analysis-evasion
- Confidence
- 100% confidence
- Finding
Referenced artifact was not completely inspected
- Content
md | `SKILL.md` | working — every operative rule, nothing else |
Security audit
Security checks for vulnerabilities and agentic risk
The skill is coherent investor-research tooling, but it retains cross-session data and can automatically post finished files into shared channels without a fresh confirmation.
Install only where the agent workspace and delivery channel are appropriate for the audience. Avoid using this in broad shared channels unless everyone there should receive the final investor workbook, and only import workbooks or ledgers you trust because they become part of future run memory.
Referenced artifact was not completely inspected
| `SKILL.md` | working — every operative rule, nothing else |
Referenced artifact was not completely inspected
| `SKILL.md` | working — every operative rule, nothing else |
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
attached — only counted. If you run a bot for several people, the safest setup is one agent
per team, each with its own workspace.
**Scheduled runs** (cron jobs) continue a stored market without asking; anything that
would need a question — a different scope, a shared folder — stops before the first search
and reports the question instead.
The skill explicitly relies on file reads/writes and exec, but it does not declare a restrictive tool scope or allowed-tools policy in metadata. That increases the chance the runtime grants broader capabilities than intended and makes it harder for operators to audit or sandbox the skill safely.
The 'When to Use' section describes triggers such as investor research, deal sourcing, fundraising, CRM enrichment, and filling gaps in a list, which are broad request types that can occur in many ordinary conversations. The file does not provide a specific invocation phrase set or negative examples clarifying when the skill should not activate, increasing the risk of unintended invocation.
The skill is designed around persistent storage of investor records, pending/rejected entities, round history, and ledger data across runs and even across conversations. That persistence creates cross-session data retention and possible cross-user leakage risks, especially because the skill notes shared workspaces and stores sensitive rejected-entity judgments locally.
**The run ends only when `finish` says so.** It checks the stop rule itself (*Job 1*): six
rounds in a row with no new firm, across at least three surfaces, none resting on a failed
fetch, pending queue empty — or the user's own budget — or the 60-round backstop. **Exit 4
means keep searching**: do not write a final report, do not say you are done. Use
`finish --early user` only when the user ended the run, or `finish --early "blocker: <what
failed>"` when tools or the model limit failed — the script refuses anything else — and the
report then says STOPPED EARLY.
The skill instructs the agent to automatically deliver a file to chat channels and other surfaces without a fresh confirmation. In shared channels this can disclose compiled investor data, source links, and run state to unintended recipients, especially because the skill itself recognizes that workspaces and channels may be shared.
(Slack, Telegram, its own line in the final reply (or use the message tool's media
WhatsApp, Discord, field) — ONE file, <market>-investors.xlsx, arrives as a document.
Signal, …) Never attach the CSVs: they are the memory, not the deliverable.
Send it WITHOUT asking — in a channel too (see §6).
Control UI / CLI state the absolute path, and attach it where the surface allows.
scheduled job put the MEDIA: line in the final response; the job's delivery
target receives it.
Posting the finished Excel file to a channel 'without asking again' is unsafe because channel membership may be broader than the requester expects, and the file contains aggregated research output and operational memory. The skill acknowledges shared/public contexts, which makes autonomous dissemination more dangerous rather than less.
(*OpenClaw* above).
**In a channel, say once in the first reply that the finished Excel file will be posted
here for everyone in it.** That notice is the only one: at the end, post the file without
asking again.
**Use a separate root per user or team whenever the session context names one.**
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
**There is no budget unless the user sets one.** By default the run continues until the
exhaustion rule is met — six empty rounds in a row, with the gates open — and `finish` allows
the stop. **Never ask the user for a budget.** If the user names a number ("use 10 rounds",
"quick scan"), pass it as `init --budget N`. **Sixty rounds is the backstop** for a run
without a budget; a user who explicitly asks for more gets their number after one sentence
on what it costs.
The import path accepts a user-supplied directory, .txt ledger, or .xlsx file and writes its contents into the skill workspace as ledger-uploaded-*.txt, temporary CSVs, and possibly rounds/history state. That is a genuine workspace-poisoning risk: a crafted upload can persist attacker-controlled data across future runs, influence deduplication/decision logic, and corrupt or steer later research results even without code execution.
Skill's behavior or capabilities extend beyond its stated purpose. Scope creep allows an agent to perform actions unrelated to its documented functionality, increasing the attack surface.
permit persons to whom the Software is furnished to do so.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
No suspicious patterns detected.