AWS DynamoDB single-table design, GSI patterns, SDK v3 TypeScript/Python
51
41%
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-dynamodb/SKILL.mdQuality
Discovery
40%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
The description identifies a clear and distinctive niche (DynamoDB single-table design) with some useful trigger terms, but it reads more like a tag list than a proper skill description. It lacks concrete actions (verbs describing what the skill does) and completely omits any 'Use when...' guidance, significantly hurting its completeness and usefulness for skill selection.
Suggestions
Add a 'Use when...' clause, e.g., 'Use when the user asks about DynamoDB table design, access patterns, NoSQL data modeling, or writing DynamoDB queries.'
Convert the topic list into concrete actions, e.g., 'Designs DynamoDB single-table schemas, defines GSI/LSI access patterns, and generates SDK v3 TypeScript/Python code for CRUD operations.'
Include additional natural trigger terms like 'NoSQL', 'partition key', 'sort key', 'access patterns', 'DDB', and 'AWS database' to improve keyword coverage.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (DynamoDB) and some concepts (single-table design, GSI patterns, SDK v3), but these are more like topic labels than concrete actions. It doesn't list specific actions like 'create tables', 'design access patterns', or 'write queries'. | 2 / 3 |
Completeness | Only addresses 'what' at a high level (DynamoDB topics) and completely lacks any 'when' clause or explicit trigger guidance. Per the rubric, a missing 'Use when...' clause caps completeness at 2, and the 'what' is also weak, so this scores a 1. | 1 / 3 |
Trigger Term Quality | Includes relevant keywords like 'DynamoDB', 'single-table design', 'GSI', 'SDK v3', 'TypeScript', 'Python' that users might mention, but misses common variations like 'NoSQL', 'partition key', 'sort key', 'access patterns', 'DDB', or 'AWS database'. | 2 / 3 |
Distinctiveness Conflict Risk | DynamoDB single-table design with GSI patterns is a very specific niche that is unlikely to conflict with other skills. The combination of DynamoDB + single-table design + SDK v3 creates a clear, distinct identity. | 3 / 3 |
Total | 8 / 12 Passed |
Implementation
42%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The skill excels at actionability with comprehensive, executable code examples covering the full DynamoDB SDK surface area in both TypeScript and Python. However, it is far too verbose for a skill file—it reads more like a tutorial or documentation page than a concise skill reference. The monolithic structure contradicts its own header suggesting modular loading, and it lacks retry/validation workflows for batch and destructive operations.
Suggestions
Split content into separate files as the header suggests: base.md for core concepts and schema design, typescript.md for TS SDK v3 code, python.md for boto3 code, and keep SKILL.md as a concise overview with navigation links.
Remove explanatory content Claude already knows (what DynamoDB is, what partition keys are, 'Why Single Table?' rationale) and reduce the key concepts table to just the schema design patterns and anti-patterns.
Add UnprocessedItems retry logic to batch operations and include validation steps (e.g., checking response metadata, verifying item existence after writes) to improve workflow safety.
Condense the CLI reference and local development sections significantly—these are standard AWS documentation that Claude can reference without full reproduction.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is extremely verbose at ~400+ lines, including extensive explanations of concepts Claude already knows (what DynamoDB is, what partition keys are, basic CRUD patterns). The key concepts table, 'Why Single Table?' section, and many inline comments explain fundamentals that don't need restating. Much of this could be condensed to 1/3 the size. | 1 / 3 |
Actionability | The skill provides fully executable, copy-paste ready code for both TypeScript SDK v3 and Python boto3, including client setup, type definitions, all CRUD operations, batch operations, transactions, and CLI commands. Code examples are complete with imports and proper error handling via condition expressions. | 3 / 3 |
Workflow Clarity | The skill covers individual operations well but lacks explicit workflow sequencing for multi-step processes. Batch operations don't handle UnprocessedItems (retry logic for partial failures), and there's no validation/verification guidance after writes or table creation. The local development section lists steps but without validation checkpoints. | 2 / 3 |
Progressive Disclosure | The file is a monolithic wall of text with everything inline—TypeScript setup, Python setup, CRUD, batch ops, transactions, GSI patterns, local dev, CLI reference all in one file. The header mentions 'Load with: base.md + [typescript.md | python.md]' suggesting content should be split, but it's all here. No references to separate files for detailed content. | 1 / 3 |
Total | 7 / 12 Passed |
Validation
81%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 9 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
skill_md_line_count | SKILL.md is long (671 lines); consider splitting into references/ and linking | Warning |
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 9 / 11 Passed | |
d4ddb03
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.