Read event data from a Google Sheets spreadsheet and create Google Calendar entries for each row.
67
60%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Advisory
Suggest reviewing before use
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/recipe-create-events-from-sheet/SKILL.mdQuality
Discovery
67%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 clearly communicates a specific integration task between Google Sheets and Google Calendar with concrete actions. Its main weakness is the absence of an explicit 'Use when...' clause, which would help Claude know exactly when to select this skill. Adding trigger terms and usage conditions would significantly improve its effectiveness in a multi-skill selection scenario.
Suggestions
Add a 'Use when...' clause such as 'Use when the user wants to import events from a spreadsheet into Google Calendar, bulk-create calendar entries, or sync sheet data to a calendar.'
Include additional natural trigger terms users might say, such as 'import events', 'bulk calendar entries', 'schedule from spreadsheet', or 'sync Google Sheets to Calendar'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists two specific concrete actions: reading event data from a Google Sheets spreadsheet and creating Google Calendar entries for each row. These are clear, actionable capabilities. | 3 / 3 |
Completeness | Clearly answers 'what does this do' (reads event data from Sheets and creates Calendar entries), but lacks an explicit 'Use when...' clause or trigger guidance, which caps this at 2 per the rubric guidelines. | 2 / 3 |
Trigger Term Quality | Includes natural keywords like 'Google Sheets', 'spreadsheet', 'Google Calendar', and 'event data', but misses common variations users might say such as 'import events', 'schedule from sheet', 'bulk calendar entries', or 'sync calendar'. | 2 / 3 |
Distinctiveness Conflict Risk | The combination of Google Sheets as input and Google Calendar as output creates a very specific niche. This is unlikely to conflict with a general Sheets skill or a general Calendar skill due to the cross-service integration focus. | 3 / 3 |
Total | 10 / 12 Passed |
Implementation
52%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill is concise and provides concrete CLI commands, but falls short on workflow clarity for what is fundamentally a batch operation. The iteration step ('for each row') is hand-waved without showing how to map spreadsheet data to calendar event parameters, and there are no validation or error-handling steps for a potentially destructive batch creation process.
Suggestions
Show how to iterate over rows from the sheet read output and map column values to calendar event parameters (e.g., summary from column A, start from column B, etc.)
Add validation/verification steps: check row data completeness before creating events, verify event creation succeeded, and provide guidance for handling failures mid-batch
Include an example of the expected sheet data format (column headers and sample rows) so the mapping between sheet columns and calendar event fields is explicit
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is lean and efficient. It states the prerequisite, describes the task in one sentence, and provides two concrete commands without unnecessary explanation. | 3 / 3 |
Actionability | The commands are concrete and copy-paste ready, but the 'for each row' step is described abstractly without showing how to iterate over the rows returned from step 1 or how to map row data to command arguments. The example uses hardcoded values rather than showing how to parameterize from sheet data. | 2 / 3 |
Workflow Clarity | This is a batch operation (creating events for each row) with no validation, no error handling, and no feedback loop. There's no guidance on what to do if a row has missing data, if an event creation fails, or how to verify events were created correctly. Missing validation in batch operations caps this at 2, and the lack of any iteration logic or error recovery drops it to 1. | 1 / 3 |
Progressive Disclosure | The prerequisite skills are referenced clearly, and the content is appropriately brief for a recipe-style skill. However, it could benefit from linking to the prerequisite skill docs for argument details and doesn't signal where to find more information about available options. | 2 / 3 |
Total | 8 / 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 |
|---|---|---|
metadata_field | 'metadata' should map string keys to string values | Warning |
Total | 10 / 11 Passed | |
c7c6646
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.