Lifterlms
Analysis
This skill is useful for LifterLMS work, but it asks users to install an unpinned global CLI, delegate credentials through Membrane, and allows destructive LMS actions without clear guardrails.
Findings (7)
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.
Checks for instructions or behavior that redirect the agent, misuse tools, execute unexpected code, cascade across systems, exploit user trust, or continue outside the intended task.
clientAction.agentInstructions (optional) — instructions for the AI agent on how to proceed programmatically.
The skill allows instructions returned by the external connection flow to guide the agent. This is purpose-aligned for setup, but those instructions should not become higher authority than the user's request.
Delete Course | delete-course | Deletes a course ... Delete Student | delete-student | Deletes a student ... send requests directly to the LifterLMS API
The skill exposes create/update/delete actions and direct API access, but the artifacts do not specify approval, scope limits, or safeguards for high-impact mutations.
npm install -g @membranehq/cli@latest ... If no app is found, one is created and a connector is built automatically.
The skill relies on an unpinned global npm package and automatically built remote connectors, while the registry has no install spec to pin, verify, or constrain those components.
npm install -g @membranehq/cli@latest ... npx @membranehq/cli connection get <id> --wait --json
The skill instructs the user to install and run npm-distributed CLI code. This is expected for a CLI-based integration, but it is local code execution that users should notice.
Delete Course | delete-course | Deletes a course ... Delete Membership | delete-membership | Deletes a membership ... Delete Student | delete-student | Deletes a student
A wrong destructive action or ID could affect related LMS entities such as courses, memberships, enrollments, or student records, and the artifacts do not describe containment or rollback.
Checks whether tool use, credentials, dependencies, identity, account access, or inter-agent boundaries are broader than the stated purpose.
Membrane handles authentication and credentials refresh automatically ... "connect" — user needs to authenticate (OAuth, API key, etc.).
The skill requires delegated authentication and automatic credential refresh for an account that can perform LMS mutations, but it does not define least-privilege scopes, duration, or revocation handling.
Checks for exposed credentials, poisoned memory or context, unclear communication boundaries, or sensitive data that could leave the user's control.
This skill uses the Membrane CLI to interact with LifterLMS. Membrane handles authentication and credentials refresh automatically
The integration uses Membrane as a gateway for LifterLMS data and credentials, but the artifacts do not clearly define data boundaries, connector permissions, or how gateway-originated instructions should be constrained.
