Glance

PassAudited by VirusTotal on May 12, 2026.

Overview

Type: OpenClaw Skill Name: Developer: Version: Description: OpenClaw Agent Skill This skill bundle is classified as suspicious due to the broad and powerful capabilities it instructs the AI agent to perform. The `SKILL.md` and `widget-sdk.md` documents explicitly instruct the agent to use its own tools for data collection, including `exec` for shell commands, PTY for interactive CLI tools, and `browser` for web scraping. Furthermore, the agent is instructed to set up cron jobs for scheduled data refreshes, which is a persistence mechanism. While these capabilities are presented as necessary for the stated purpose of managing a personal dashboard and collecting widget data, they represent significant high-risk behaviors that could be abused if the agent were compromised or given malicious instructions.

Findings (0)

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

API keys for services like GitHub, Anthropic, OpenAI, Notion, or Linear could be duplicated into another local credential store and then used by widgets or generated server code.

Why it was flagged

The skill encourages reusing credentials already known to the agent and copying them into Glance without explicit per-credential user approval.

Skill content
OpenClaw already knows your API keys... OpenClaw doesn't ask you to configure anything. It just stores your existing credentials in Glance's encrypted database
Recommendation

Require explicit user confirmation for each credential, explain where it will be stored and how it will be used, prefer least-privilege tokens, and do not assume credentials in agent memory may be reused automatically.

What this means

A local agent or process with GLANCE_URL may be able to mutate dashboard state without a separate Glance token.

Why it was flagged

The documented workflow lets the agent access local Glance APIs by setting an Origin header rather than using a bearer token, despite those APIs managing widgets and cached data.

Skill content
Auth note: Local requests with Origin header bypass Bearer token auth
Recommendation

Require bearer-token authorization for mutating and credential-related endpoints, declare any required token in metadata, and avoid treating a spoofable Origin header as authorization.

What this means

A malicious or compromised widget instruction could redirect the agent to perform actions unrelated to safe dashboard refreshes.

Why it was flagged

The agent is told to fetch instructions from a stored widget record and follow them, making dashboard/widget content an authoritative instruction source.

Skill content
sqlite3 $GLANCE_DATA/glance.db "SELECT json_extract(fetch, '$.instructions')..." ... # Follow the instructions, then:
Recommendation

Treat widget instructions as untrusted data, constrain them to a narrow data-refresh contract, and require user approval before using credentials, changing accounts, deleting data, or performing unrelated tool actions.

What this means

Bad refresh instructions can persist and repeatedly influence future agent behavior, especially for scheduled widgets.

Why it was flagged

Agent refresh widgets persist instructions and schedules that can be reused across future tasks.

Skill content
fetch.instructions ... REQUIRED if type is agent_refresh; fetch.schedule ... REQUIRED if type is agent_refresh (cron)
Recommendation

Store only structured, validated refresh parameters when possible; review any free-form instructions before enabling schedules; and provide a clear way to disable or reset agent_refresh widgets.

What this means

Generated widget code could call unexpected services, misuse stored credentials, or expose dashboard data if not reviewed.

Why it was flagged

The documented workflow has the agent create server-side widget code that can access stored credentials; the supplied artifacts do not show sandboxing or approval boundaries.

Skill content
"server_code": "const token = await getCredential('github'); ...", "server_code_enabled": true
Recommendation

Require user review before enabling server_code, sandbox execution, restrict outbound network access and credential access per widget, and log what each widget is allowed to do.

What this means

Running the installer gives code from an external domain control over local setup, dependency installation, and optional service installation.

Why it was flagged

The recommended one-line install executes a remote script that is not included in the reviewed artifacts.

Skill content
curl -fsSL https://openglance.dev/install.sh | bash
Recommendation

Inspect the installer before running it, prefer a pinned release or reviewed source checkout, and avoid piping remote scripts directly into a shell.

What this means

Glance may keep running and refreshing widgets after the original task is complete.

Why it was flagged

The macOS service example installs a launch agent that starts automatically and restarts persistently.

Skill content
<key>RunAtLoad</key> <true/> ... <key>KeepAlive</key> <true/>
Recommendation

Only install the background service if you want always-on behavior, and keep clear stop/unload instructions available.

What this means

A dashboard or widget action can wake the agent and cause it to process refresh work, so webhook tokens and allowed actions matter.

Why it was flagged

The optional refresh flow lets the dashboard call the OpenClaw gateway with a token to trigger agent activity.

Skill content
OPENCLAW_WEBHOOK_URL=http://localhost:18789/tools/invoke ... clicking refresh ... will instantly wake OpenClaw
Recommendation

Use a narrowly scoped webhook token, restrict the gateway to local trusted callers, and verify what payloads the dashboard can send to OpenClaw.