Back to skill

Security audit

Clawic CLI

Security checks for vulnerabilities and agentic risk

Overview

This skill is coherent documentation for using the Clawic CLI, with disclosed network, install, overwrite, and memory behavior, though users should pin or otherwise trust the npm package and registry before running commands.

Install only if you trust the clawic npm package and the selected registry. Prefer a pinned or project-local package workflow for repeatable use, run show before install when reviewing a skill, choose the destination directory deliberately, and use --force only when replacing files is intentional.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:48
Finding

Unpinned Third-Party npm Package Retrieval and Execution

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 48–70; repeated in command-patterns.md, lines 4–13, and errors-and-overrides.md, lines 54–58
Vulnerability Type: Unpinned third-party dependency execution
Risk Level: Medium

Complete Code Snippet

From SKILL.md, lines 48–70:

bash
npx clawic registry
npx clawic search pocketbase --limit 5
npx clawic show pocketbase
npx clawic install pocketbase --dir ./skills
bash
npm install -g clawic
clawic search pocketbase --limit 5
text
- `npx clawic ...` for one-off use, or `npm install -g clawic` for a persistent local binary
text
`npx clawic ...` may fetch the published npm package if it is not already cached locally. Use a global install or a pinned project workflow when the user wants a repeatable local binary instead of ad hoc package fetches.

The installation metadata at SKILL.md, line 8 also identifies the package without an exact version:

yaml
metadata: {"clawdbot":{"emoji":"CLI","requires":{"bins":["node"],"anyBins":["clawic","npx"],"config":["~/clawic/"]},"install":[{"id":"npm-clawic","kind":"npm","package":"clawic","bins":["clawic"],"label":"Install clawic CLI (npm)"}],"os":["linux","darwin","win32"]}}

Technical Analysis

The documented commands execute or globally install the third-party clawic npm package without specifying an exact audited version, lockfile, or integrity hash. When the package is not cached, npx clawic may resolve, retrieve, and immediately execute the version currently selected by the npm registry. Similarly, npm install -g clawic installs mutable third-party code and exposes its executable persistently in the user's environment.

Because package resolution is not pinned, the effective code can change after this Skill has been reviewed. A compromised npm publisher account, malicious package release, registry compromise, or compromised transitive dependency could therefore turn an apparently legitimate command ...[truncated 1722 chars]

Remediation
View remediation

Remediation Suggestions

  1. Pin every example to a reviewed exact package version, for example:

    bash
    npx --yes clawic@1.0.0 registry
    npx --yes clawic@1.0.0 show pocketbase
    
  2. Change the installation metadata from an unversioned package reference to an exact reviewed version if the metadata format supports version constraints.

  3. Prefer a project-local dependency recorded in package.json with a committed lockfile. Use npm ci in repeatable environments rather than globally installing a mutable package.

  4. Verify the package's npm provenance, publisher identity, source repository, release tag, and integrity metadata before recommending execution.

  5. Review lifecycle scripts and transitive dependencies. Where compatible, install with lifecycle scripts disabled:

    bash
    npm ci --ignore-scripts
    

    Enable only specifically reviewed scripts if the package requires them.

  6. Avoid presenting npm install -g clawic as the preferred repeatable workflow. A pinned project-local installation provides stronger isolation, reviewability, and removal behavior.

  7. Document an update process that requires review before changing the pinned version or lockfile, rather than silently accepting the newest registry release.

Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Memory PoisoningPersistent Context Injection, Context Window Stuffing, Memory Manipulation
Findings (18)

Memory Manipulation

High
Category
Memory Poisoning
Confidence
85% confidence
Finding

Skill manipulates agent memory, state, or stored context. Memory corruption can alter personality, override safety rules, or cause unpredictable behavior.

Content

Scanner excerpt · SKILL.md (reported line 40)May include surrounding context.

md
| Copy-ready commands | `command-patterns.md` |
| Query design for local matching | `search-strategy.md` |
| Registry and manifest model | `registry-and-manifests.md` |
| Install destinations and overwrite rules | `install-safety.md` |
| Errors and custom registry overrides | `errors-and-overrides.md` |

Open only the smallest file needed for the current blocker. Most sessions only need `command-patterns.md` plus `install-safety.md`.

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 91)May include surrounding context.

md
- Expect files such as `SKILL.md`, auxiliary docs, and metadata files like `_meta.json` if the manifest includes them.

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 159)May include surrounding context.

md
- Expect files such as `SKILL.md`, auxiliary docs, and metadata files like `_meta.json` if the manifest includes them.

Hidden Instructions

High
Category
Prompt Injection
Confidence
70% confidence
Finding

Hidden instructions were detected in comments or invisible text. These could contain malicious directives. Manual review is recommended.

Content

Scanner excerpt · memory-template.md (reported line 15)May include surrounding context.

md
integration: pending | done | declined

## Context
<!-- Activation cues, preferred runtime path, default install root -->
<!-- Example: "Use this when I ask for a Clawic skill or mention the clawic CLI." -->

## Registry Defaults

Rp1

Medium
Category
MCP Rug Pull
Confidence
94% confidence
Finding

The skill repeatedly recommends running npx clawic without a pinned version, which can cause users to execute whatever package version npm resolves at runtime. This creates a supply-chain risk: a compromised upstream release, typo-squatted dependency path, or unexpected major-version change could lead to execution of unreviewed code.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
94% confidence
Finding

This unpinned npx clawic invocation may fetch and execute the latest published package version instead of a reviewed one. In a security-sensitive install workflow, that increases exposure to upstream package compromise or breaking behavior changes.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
94% confidence
Finding

Using npx clawic without a version means the command path is not reproducible and may execute newly published code from npm. Because this skill concerns downloading and installing additional artifacts, chaining unpinned package execution with remote file retrieval increases supply-chain risk.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
94% confidence
Finding

This install example relies on an unpinned npx package fetch, which can execute arbitrary newer code before writing files locally. The danger is elevated here because the command performs installation into the workspace, so a compromised CLI could affect both code execution and filesystem writes.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
92% confidence
Finding

The requirement text endorses npx clawic ... for one-off use without requiring a pinned version, normalizing execution of mutable upstream code. Even though the skill includes a warning about ad hoc fetches, the examples still direct users toward a less controlled path.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
91% confidence
Finding

This line tells users to confirm whether they want npx clawic ..., but it does not constrain the version and therefore preserves the risk of executing an unintended release. In guidance meant to establish a safe runtime path, omitting version pinning is a meaningful security gap.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
93% confidence
Finding

The security note acknowledges that npx clawic ... may fetch the published package, which correctly identifies the risk, but it still leaves the unsafe invocation pattern in active use elsewhere. Because the skill is operational guidance, retaining unpinned examples can lead users to execute transient, unreviewed code despite the warning.

Content

No source excerpt is available for this finding.

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
75% confidence
Finding

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.

Content

Scanner excerpt · SKILL.md (reported line 117)May include surrounding context.

md
- Forgetting that install root defaults to `./skills` -> files appear in an unexpected folder.
- Re-running `install` into an existing target without `--force` -> file creation fails on the first existing path.
- Using `--force` in a shared or dirty tree -> previously reviewed files get overwritten.
- Overriding `CLAWIC_REGISTRY_BASE_URL` without checking compatibility -> index or manifest fetches return 404 or malformed JSON.
- Assuming `registry` validates availability -> it only prints the active base URL.

## External Endpoints

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
75% confidence
Finding

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.

Content

Scanner excerpt · SKILL.md (reported line 144)May include surrounding context.

md
**This skill does NOT:**
- send search queries to a hosted semantic search API
- auto-install skills without consent
- overwrite files unless the user chooses `--force`
- read or modify files outside the selected install destination plus `~/clawic/` for optional memory

Rp1

Medium
Category
MCP Rug Pull
Confidence
87% confidence
Finding

The documentation recommends npx clawic without pinning a version, which allows execution of whatever package version is current at the time of use. That creates a supply-chain risk: a compromised latest release, typo/confusion package resolution issue, or unexpected breaking change could cause users to run unreviewed code.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The documentation explicitly shows overriding CLAWIC_REGISTRY_BASE_URL and even notes that registry does not validate the host or manifest shape, but it provides no trust or integrity warning. This materially increases the chance that users will fetch skill metadata or install sources from an attacker-controlled host, enabling supply-chain compromise or installation of malicious content.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
90% confidence
Finding

The documentation recommends running npx clawic without pinning a specific package version. npx may fetch and execute the latest published package at runtime, which creates a supply-chain risk if the package is compromised, typosquatted, or unexpectedly changed. In this skill context, the risk is more significant because the command is presented as a troubleshooting step users may copy and execute directly.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
70% confidence
Finding

npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
84% confidence
Finding

This markdown file describes the install command, including the default root and final directory, which indicates filesystem writes. It does not include any explicit user-facing warning or caution about modifying local files or overwriting behavior beyond noting that --force affects write failures.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.