Proper Lambda function structure with error handling
34
18%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/aws-serverless/SKILL.mdQuality
Discovery
22%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This description reads like a topic heading rather than a functional skill description. It lacks concrete actions (what the skill does), has no 'Use when...' trigger guidance, and provides minimal detail for Claude to distinguish it from other coding or AWS-related skills. It needs substantial expansion to be useful for skill selection.
Suggestions
Add explicit concrete actions, e.g., 'Generates AWS Lambda function boilerplate with structured error handling, logging, and response formatting.'
Add a 'Use when...' clause with trigger terms, e.g., 'Use when the user asks to create or scaffold an AWS Lambda function, serverless handler, or needs Lambda error handling patterns.'
Include natural keyword variations such as 'AWS Lambda', 'serverless', 'Lambda handler', 'Lambda boilerplate' to improve trigger term coverage.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | The description is vague — 'proper Lambda function structure with error handling' names a domain (Lambda functions) but describes no concrete actions. It reads more like a topic label than a capability description. | 1 / 3 |
Completeness | The description weakly addresses 'what' (Lambda function structure) but completely lacks any 'when' clause or explicit trigger guidance. There is no 'Use when...' or equivalent. | 1 / 3 |
Trigger Term Quality | 'Lambda function' is a relevant keyword a user might say, and 'error handling' is somewhat natural. However, it misses common variations like 'AWS Lambda', 'serverless', 'handler', or file extensions like '.py'/'.js' that users might mention. | 2 / 3 |
Distinctiveness Conflict Risk | 'Lambda function' provides some specificity to AWS Lambda, but 'error handling' is extremely generic and could overlap with many coding or cloud skills. Without more precise scoping, conflict risk is moderate. | 2 / 3 |
Total | 6 / 12 Passed |
Implementation
14%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill suffers from significant quality issues: truncated code examples that cut off mid-function, a broken Sharp Edges table with placeholder text instead of actual content, excessive verbosity with dual-language examples, and no clear workflow or deployment steps. The content reads like an incomplete draft rather than a polished skill file.
Suggestions
Complete all truncated code examples - the Python Lambda handler, get.js handler, and Python SQS handler all cut off mid-function, making them unusable.
Fix the Sharp Edges table which contains 'Issue' placeholders instead of actual issues, and replace the heading-only solutions with actual actionable guidance.
Add a clear deployment workflow with validation steps (e.g., 'sam build -> sam validate -> sam deploy -> test endpoint'), as the skill currently has no sequence for going from code to running Lambda.
Split into separate files (e.g., LAMBDA_HANDLER.md, API_GATEWAY.md, SQS_PATTERN.md) and keep SKILL.md as a concise overview with links, rather than inlining all patterns in one large file.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The content is extremely verbose with multiple large code blocks, many of which are truncated/incomplete. It includes both Node.js and Python versions for each pattern, doubling the token cost. The anti-patterns section states obvious things Claude already knows (e.g., 'Large deployment packages cause slow cold starts'). The 'When to Use' section is a meaningless placeholder. | 1 / 3 |
Actionability | The code examples are mostly concrete and executable (DynamoDB client initialization, handler patterns, SAM templates), but several are truncated mid-function (Python handler cuts off at 'Parse i', get.js cuts off at 'const item =', Python SQS handler cuts off). This makes them incomplete and not copy-paste ready. | 2 / 3 |
Workflow Clarity | There is no clear workflow or sequence of steps. The content presents patterns as isolated code blocks without explaining how to set up, deploy, test, or validate a Lambda function. The Sharp Edges table is broken with 'Issue' placeholders instead of actual issues, and solutions are just headers with no content. | 1 / 3 |
Progressive Disclosure | The content is a monolithic wall of code blocks with no references to external files and no clear navigation structure. Multiple patterns (Lambda handler, API Gateway, SQS) are all crammed into one file with no signposting or links to detailed resources. The content would benefit greatly from splitting patterns into separate files. | 1 / 3 |
Total | 5 / 12 Passed |
Validation
90%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 10 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 10 / 11 Passed | |
d739c8b
Table of Contents
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.