Writing queries, mutations, actions, and HTTP actions with proper argument validation, error handling, internal functions, and runtime considerations
45
44%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Medium
Suggest reviewing before use
Fix and improve this skill with Tessl
tessl review fix ./skills/convex-functions/SKILL.mdSecurity
1 medium severity finding. This skill can be installed but you should review these findings before use.
The skill is specifically designed for direct financial operations, giving the agent the ability to move money or execute financial transactions — such as payment processing, cryptocurrency operations, banking integrations, or market order execution.
Direct money access detected (high risk: 1.00). The skill includes explicit payment-related functionality. It defines a Stripe webhook endpoint ("/webhooks/stripe") with signature verification and processing of Stripe events, and several actions reference calling an external payment API (e.g., processPayment(order), "Call external payment API", purchaseCredits that "Process payment externally" then updates credits). These are specific integrations for payment processing (a payment gateway) rather than generic HTTP/browser tooling, so it constitutes direct financial execution capability.
Low
Low-risk findings.
1 low severity finding. Worth noting, but not necessarily harmful.
The skill exposes the agent to untrusted, user-generated content from public third-party sources, creating a risk of indirect prompt injection. This includes browsing arbitrary URLs, reading social media posts or forum comments, and analyzing content from unknown websites.
Third-party content exposure detected (high risk: 0.80). The skill's HTTP Actions (convex/http.ts) define a webhook route at /webhooks/stripe that reads request.text(), JSON.parse(body), and then acts on event.type/event.data (and actions examples also call external APIs via fetch), which clearly ingests untrusted third-party payloads that can influence subsequent mutations and behavior.
8ef49c9
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.