Skill flagged — suspicious patterns detected
ClawHub Security flagged this skill as suspicious. Review the scan results before using.
Ai Course Agent
v0.2.1Auto-generates AI education courses from natural language requests in Chinese. Detects patterns like "帮我生成6年级数学分数乘除法的课程" and calls Edustem API to create and...
⭐ 0· 579·1 current·1 all-time
by@ohano
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
OpenClaw
Suspicious
medium confidencePurpose & Capability
The code implements course generation via an Edustem API and usage billing via SkillPay, which matches the description. However the registry metadata at the top claimed no required env vars while SKILL.md and the code require EDUSTEM_USERNAME and EDUSTEM_PASSWORD — an internal metadata mismatch. The Edustem API base URL is an ngrok domain (https://6bb95bf119bf.ngrok-free.app), not an obvious official Edustem host; that endpoint will receive users' Edustem credentials and lesson data. Hardcoded SkillPay API credentials in src/skillpay.ts make payments go to the skill author's account (documented in README), which is functionally related to billing but unusual and risky for users who may expect to configure their own billing credentials.
Instruction Scope
Runtime instructions and code read EDUSTEM_USERNAME and EDUSTEM_PASSWORD and POST them to the API_BASE_URL (the ngrok domain) during login(). The SKILL.md explicitly instructs users to set those env vars. The instructions also state SkillPay credentials are hardcoded and payments will be deducted and routed to the author's account. There are no broader surprises like reading arbitrary host files, but sending user credentials to a non-official ngrok endpoint and routing billing through an author-controlled API are significant scope/privilege concerns.
Install Mechanism
This is effectively instruction/code-only: there is no install spec that downloads arbitrary archives or runs remote installers. Dependencies are normal npm packages (axios, form-data). Nothing in the manifest downloads code from unknown URLs during install. Risk here comes from runtime network calls rather than install-time actions.
Credentials
Requesting EDUSTEM_USERNAME and EDUSTEM_PASSWORD is reasonable for a skill that must call an external Edustem API. However: (1) the registry metadata omitted these required env vars (incoherent), and (2) the skill contains a hardcoded SkillPay API key and skillId in src/skillpay.ts which are sensitive secrets that give the author control over billing operations; users cannot replace these without modifying code. The hardcoded key is unrelated to the user's Edustem account and concentrates financial control with the author.
Persistence & Privilege
always is false and the skill does not request permanent platform-level privileges. It does not modify other skills or global agent settings. Autonomous invocation is enabled by default but is not combined here with other privilege escalations.
What to consider before installing
Key things to consider before installing:
- The skill requires you to provide EDUSTEM_USERNAME and EDUSTEM_PASSWORD; those credentials will be sent to the API endpoint hardcoded in the skill (an ngrok domain: 6bb95bf119bf.ngrok-free.app). Ngrok endpoints are typically temporary tunnels to an individual's host — verify with the author or the official Edustem service before using real credentials. If in doubt, use a throwaway/test Edustem account only.
- The SkillPay API key and skill ID are hardcoded in src/skillpay.ts. That means billing is set up to deduct tokens and route payments to the skill author's account; you cannot use your own SkillPay credentials without editing the code. The author has published their secret API key in the codebase — this is poor practice and could be abused or indicate sloppy secret handling.
- The registry metadata and SKILL.md disagree about required environment variables — the SKILL.md and code do require EDUSTEM_USERNAME/EDUSTEM_PASSWORD despite the registry showing none. This inconsistency lowers trust.
- Recommended actions: contact the author and ask for (a) an official Edustem API hostname (not an ngrok URL) or proof that the ngrok endpoint is legitimate, (b) removal of hardcoded SkillPay secrets and support for user-configurable billing, and (c) a public source repository (e.g., GitHub) with author identity and commit history. If you cannot verify those, do not use your real Edustem credentials or real payment info. Prefer installing only after the above concerns are remediated.
- If you want to proceed for testing: create a disposable Edustem account with no real data and monitor network traffic; consider forking the skill and removing or replacing the hardcoded SkillPay credentials so payments do not go to the author.Like a lobster shell, security has layers — review code before you run it.
latestvk975809qkfxgsvjac65tg395k982a8wd
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
