Back to skill
Skillv1.0.0
ClawScan security
Grocy Inventory · ClawHub's context-aware review of the artifact, metadata, and declared behavior.
Scanner verdict
SuspiciousMar 5, 2026, 2:42 AM
- Verdict
- suspicious
- Confidence
- medium
- Model
- gpt-5-mini
- Summary
- The skill's behavior matches a Grocy client (local API calls to manage inventory) but the SKILL.md embeds a plaintext API key and mismatches declared requirements, which is unexpected and warrants caution.
- Guidance
- This skill otherwise behaves like a normal Grocy client, but the SKILL.md embeds a plaintext API key and shows $API_KEY without declaring it as a required environment variable. Before installing or enabling: (1) Treat the API key in the docs as potentially sensitive — do not assume it's a harmless placeholder. If it's your Grocy key, rotate it. (2) Prefer the publisher to remove hardcoded keys from the skill and require the user to provide GROCY_URL and GROCY_API_KEY via environment variables or config. (3) Remember the skill's commands are state-changing (consume/add/transfer); if you allow autonomous invocations, the agent could modify your local inventory. (4) If you do not run Grocy on localhost:14611, there's no legitimate reason for the skill to access that URL. Ask the publisher to clarify whether the API key is a sample and to update instructions to not include secrets.
Review Dimensions
- Purpose & Capability
- noteName/description align with the instructions: all commands target a local Grocy instance and perform expected inventory and battery operations. However, the skill includes a hardcoded API key in SKILL.md and references an $API_KEY variable despite the skill declaring no required env vars — this is inconsistent with the stated minimal configuration.
- Instruction Scope
- concernInstructions only call the local Grocy API (http://localhost:14611) and use curl for both read and state-changing operations (consume, add, transfer, charge). That's in-scope for an inventory skill, but the doc embeds a plaintext API key and uses an undefined $API_KEY variable. The presence of a concrete API key in the skill text is unexpected and could expose credentials if it is real. Also note: the skill's commands will modify local state (consume/transfer/add) when invoked.
- Install Mechanism
- okNo install spec and no code files — instruction-only skill. This minimizes disk footprint and reduces supply-chain risk.
- Credentials
- concernRegistry metadata declares no required env vars or credentials, yet SKILL.md shows a specific API Key value and expects $API_KEY in examples. Requesting no secrets but shipping a concrete API key in the documentation is disproportionate and inconsistent. If that key is valid it grants full access to the local Grocy instance; if it's a leaked credential, it should be rotated.
- Persistence & Privilege
- okalways is false and the skill does not request persistent system-level privileges. It will act against localhost endpoints when invoked, which is normal for a local-service integration.
