Agent Economy Report

Skill code audit

CAUTION version 1.3.8 · audited 2026-09-17

prismfy-search @uroboros1205

This skill installs a shell-based web search helper that sends search queries and a Prismfy API key to the third-party service at api.prismfy.io. It declares itself as the default OpenClaw search tool and includes a bootstrap hook that instructs the agent to prefer live searches. The code does not download or execute remote code, does not hide network destinations, and does not touch wallets or payments. However, it sends whatever the agent includes in a query to an external service and tells the agent to search first in many situations, which can expose sensitive context. This matches the publisher's own disclosed risks, so it should be reviewed carefully before use.

Instructions try to steer the agent beyond the declared purpose. hooks/openclaw/HOOK.md line 4 registers an agent:bootstrap event. HOOK.md line 33 says: 'Prefer real search results over training data whenever the answer might have changed or needs to be current:' and line 46 says: '**When in doubt, a quick search takes seconds and prevents wrong answers.**' These are behavioral instructions from an untrusted package that steer the agent toward sending more queries to an external service, although they are disclosed and align with the skill's declared default-search purpose.

Declared purposeDefault web search for OpenClaw, querying search engines through Prismfy using a bundled search.sh helper for search, quota checks, and engine/time/domain filters.
Observed behaviorWhen invoked, search.sh uses curl to make GET and POST requests to https://api.prismfy.io. It sends the PRISMFY_API_KEY environment variable as an Authorization: Bearer header and sends a JSON body containing the user's query, engines, language, and page. It can also call the quota endpoint and pretty-print results using jq. SKILL.md and hooks/openclaw/HOOK.md instruct the agent to run search.sh and prefer live web search. No hidden destinations, obfuscated code, download-and-execute, or payment/wallet behavior was observed.
Verdict, rules onlyCAUTION · reads credential-like environment variables: PRISMFY_API_KEY; touches persistence (cron, shell profile, autostart)
Verdict, AICAUTION
Final verdictCAUTION (never better than either pass)

Capabilities

capabilityvs purposedetail
networkneededsearch.sh makes outbound HTTPS requests to api.prismfy.io for search and quota operations.
shellneededThe skill is a bash helper; SKILL.md and HOOK.md instruct running commands such as bash search.sh.
credentialsneededThe script requires PRISMFY_API_KEY and sends it to api.prismfy.io as a Bearer token, which is expected for the API but exposes the credential to the third-party service.
persistenceneededhooks/openclaw/HOOK.md registers on agent:bootstrap, and SKILL.md instructs the user to export PRISMFY_API_KEY in ~/.zshrc or ~/.bashrc.

Findings

severityfinding
infoDeclared purpose is third-party web search
The skill describes itself as the default OpenClaw web search tool backed by Prismfy, so outbound search traffic to Prismfy is part of its declared function.
SKILL.md:4 Default web search for OpenClaw. Search the web across 10 engines — Google,
infoRequires a Prismfy API key
The skill declares that PRISMFY_API_KEY must be present in the environment.
SKILL.md:15 - PRISMFY_API_KEY
infoSearch traffic is sent to api.prismfy.io
The helper script uses api.prismfy.io as the base URL for its API calls.
search.sh:19 BASE_URL="https://api.prismfy.io"
mediumAPI key is transmitted to Prismfy
The script reads PRISMFY_API_KEY and sends it to the Prismfy API as an Authorization header. This is required for the advertised API, but the credential leaves the user's environment.
search.sh:68 -H "Authorization: Bearer $PRISMFY_API_KEY"
infoMakes outbound network requests
The helper uses curl to contact the Prismfy API.
search.sh:76 if ! response=$(curl "${curl_args[@]}"); then
lowSends the user query text to Prismfy
The script builds a JSON body containing the query and other search parameters, so any text supplied to search.sh is sent to the third-party service.
search.sh:148 '{query: $q, engines: $engines, language: $lang, page: ($page | tonumber)}')
lowInstructs user to persist the API key in shell profile
The setup instructions tell the user to add the Prismfy API key to ~/.zshrc or ~/.bashrc, making the credential persistent.
SKILL.md:55 export PRISMFY_API_KEY="ss_live_your_key_here"
mediumInstalls a bootstrap hook
The package registers a hook on agent:bootstrap, meaning the skill's instructions are loaded into the agent when it starts.
hooks/openclaw/HOOK.md:4 metadata: {"openclaw":{"emoji":"🔍","events":["agent:bootstrap"]}}
mediumInstructs agent to prefer live search
This bootstrap instruction can increase how often the agent sends queries to the Prismfy service, expanding potential exposure of user or agent context.
hooks/openclaw/HOOK.md:46 **When in doubt, a quick search takes seconds and prevents wrong answers.**
infoPublisher discloses broad search behavior
The skill card acknowledges that default search behavior can send user requests to Prismfy more often than expected.
skill-card.md:25 Risk: Broad default-search behavior can send ordinary user requests to an external Prismfy service more often than users may expect.
infoPublisher discloses sensitive data exposure risk
The skill card explicitly warns that sensitive content may be exposed if it becomes part of a search request.
skill-card.md:29 Risk: Sensitive terms, secrets, private code, customer data, or confidential internal details may be exposed if included in requests that trigger search.

0 AI finding(s) were dropped because their file, line or quote did not match the package.

Network destinations in the code

domainservice ratingwhere
api.prismfy.ionot in the service indexsearch.sh:19
clawhub.ainot in the service index.clawhub/origin.json:3
prismfy.ionot in the service indexSKILL.md:21

Other facts

Binaries invokedbash, curl, node
Environment variables readBASE_URL, PRISMFY_API_KEY, QUOTA_ENDPOINT, SEARCH_ENDPOINT
Hard-coded walletsnone
Pipes a download to a shell0
eval / exec / subprocess0
base64 blobs0
File writes7
Persistence2

Files audited

filelinessha256
.clawhub/origin.json7a88ae56df11a34eb…
SKILL.md21943f0df0cafe65cab…
_meta.json601152f77f2202a2b…
hooks/openclaw/HOOK.md593d780d86ef95c863…
search.sh2659c57d5d820092303…
skill-card.md55243bcbffc0ec38bf…

For agents

JSON: https://agenteconomy.report/k/prismfy-search.audit.json · badge: https://agenteconomy.report/k/prismfy-search.audited.svg · skill rating: /k/prismfy-search · commission an audit of any skill: US$ 29 per version.

How this is computed

The complete published package of this exact version was downloaded from the registry and read statically; nothing was executed. A deterministic pass extracts network destinations, binaries, environment variables, writes, install commands, obfuscation markers, subprocesses and wallets, each with file and line. An AI then reads the whole package with those facts and writes the summary, the capabilities and the findings under a strict schema; every finding it produces must cite a file, a line and the exact text, or it is dropped. The final verdict is the worst of the two passes. The audit does not change the skill's trust tier (policy); the author may respond through the dispute channel and the response is published here. Commissioned by: the Agent Economy Report (free program: the 150 most downloaded skills, September 2026).