ClassCharts

AdvisoryAudited by Static analysis on Apr 30, 2026.

Overview

No suspicious patterns detected.

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

An agent following these instructions too broadly could change a ClassCharts account password or spend a student's reward balance without the user clearly approving the exact action.

Why it was flagged

The skill documents account password changes and includes a quick example that purchases the first rewards-shop item, but it does not require explicit user confirmation or a user-selected item before these mutating actions.

Skill content
| `changePassword(current, new)` | Change parent account password |
...
const purchase = await client.purchaseReward(rewards.data[0].id);
Recommendation

Only allow password changes or reward purchases after explicit user confirmation, and require the user to specify the target account, pupil, item, and intended change.

What this means

Anyone with these credentials could access homework, behaviour, attendance, detentions, announcements, and related pupil information available to the account.

Why it was flagged

The skill requires ClassCharts login credentials and, for student login, a student code plus date of birth. This is disclosed and expected for the integration, but it grants access to sensitive school and pupil data.

Skill content
env:
  - CLASSCHARTS_EMAIL
  - CLASSCHARTS_PASSWORD
  - CLASSCHARTS_CODE
...
Student logs in with ClassCharts code and date of birth.
Recommendation

Store credentials only in environment variables or a secret manager, avoid putting them in prompts or logs, and use the least-privileged account needed.

What this means

A compromised or changed package version could affect how credentials or ClassCharts data are handled.

Why it was flagged

The skill relies on an unpinned third-party npm package for an unofficial API. This is central to the skill's purpose, but users are depending on that package's integrity and future updates.

Skill content
install: npm install classcharts-api
...
The API is unofficial.
Recommendation

Pin and review the package version before use, and install it only from a trusted npm registry or reviewed source.