Install untrusted source
- Finding
- Install source points to URL shortener or raw IP.
Security checks across static analysis, malware telemetry, and agentic risk
Prompt-injection indicators were detected in the submitted artifacts (unicode-control-chars); human review is required before treating this skill as clean.
Install this only if you are comfortable giving the agent full local SiYuan API access. Keep the API token private, point base_url only at your trusted local SiYuan instance, use explicit document/notebook scopes, and review any delete, move, bulk export, or SQL-style request before allowing it. ClawScan detected prompt-injection indicators (unicode-control-chars), so this skill requires review even though the model response was benign.
VirusTotal findings are pending for this skill version.
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.
Anyone or any agent process with access to this config can use the token to access and change your SiYuan notes.
The skill requires a SiYuan API token and instructs the user to store it in the skill config, giving the client authenticated access to the user's local SiYuan data.
API token from SiYuan settings ... token: "your-api-token-here"
Keep config.yaml private, avoid sharing logs or files containing the token, and rotate the token if it may have been exposed.
A mistaken or over-broad delete request could remove important notes or notebooks.
The delete tool supports removing notebooks, documents, and blocks, and includes an option to bypass confirmation. This is expected for a management client but is high-impact.
"Delete SiYuan notebooks and documents" ... parser.add_argument('--yes', '-y', action='store_true', help='Skip confirmation')Require explicit user approval before delete operations, avoid using `--yes` unless you are certain, and keep backups of important notebooks.
If an agent uses attacker-controlled or unverified text as an ID, it could query more data than intended or cause errors.
The list tool builds an SQL query using the supplied notebook_id. This is local and purpose-aligned, but raw query construction should not use untrusted text.
WHERE box = '{notebook_id}' AND type = 'd'Use notebook IDs obtained from trusted SiYuan API results, and consider validating or parameterizing query inputs.
Private notes may be exposed to the agent context, and note text should be treated as data rather than instructions.
The read tool returns document Markdown content to stdout, meaning private note text can enter the agent conversation or downstream outputs.
content = result.get('content', '') ... print(content)Ask the agent to read only the specific documents needed, avoid broad exports unless necessary, and do not let instructions inside notes override your actual request.