Gmail: Watch for new emails and stream them as NDJSON.
64
56%
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/gws-gmail-watch/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 is concise and identifies a clear, distinctive niche (Gmail email watching with NDJSON streaming), which helps avoid conflicts with other skills. However, it lacks an explicit 'Use when...' clause, uses technical jargon (NDJSON) that users wouldn't naturally say, and could benefit from more natural trigger terms related to email monitoring.
Suggestions
Add an explicit 'Use when...' clause, e.g., 'Use when the user wants to monitor a Gmail inbox, watch for incoming emails, or stream email data.'
Include more natural trigger terms users would say, such as 'inbox', 'email notifications', 'monitor emails', 'incoming mail', alongside the technical 'NDJSON' term.
Briefly expand on what 'stream as NDJSON' means in practical terms, e.g., 'outputs each email as a newline-delimited JSON record for processing.'
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (Gmail) and two specific actions (watch for new emails, stream as NDJSON), but the scope is narrow and doesn't list multiple concrete capabilities beyond these two. | 2 / 3 |
Completeness | Describes what it does (watch for new emails and stream as NDJSON) but has no explicit 'Use when...' clause or equivalent trigger guidance, which per the rubric caps completeness at 2, and the 'when' is entirely missing, not just implied, bringing it to 1. | 1 / 3 |
Trigger Term Quality | Includes 'Gmail', 'new emails', and 'NDJSON' as keywords. However, it misses common user variations like 'inbox', 'email notifications', 'email monitoring', 'email stream', or 'watch inbox'. 'NDJSON' is fairly technical jargon most users wouldn't naturally say. | 2 / 3 |
Distinctiveness Conflict Risk | The combination of 'Gmail', 'watch for new emails', and 'NDJSON streaming' creates a very specific niche that is unlikely to conflict with other skills. The domain and output format are highly distinctive. | 3 / 3 |
Total | 8 / 12 Passed |
Implementation
72%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a well-structured CLI reference skill that is concise and well-organized with good progressive disclosure to related skills. Its main weaknesses are the lack of expected output examples (what does the NDJSON stream look like?) and missing workflow guidance for the setup path, particularly around when to use --project vs --subscription and how to handle common errors.
Suggestions
Add an example of the expected NDJSON output format so Claude knows what the streamed data looks like and can help users parse it.
Add a brief workflow section clarifying the two paths: fresh setup (--project creates resources) vs. existing setup (--subscription reuses resources), with a note on what to check if things fail.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The content is lean and efficient. Every section serves a purpose — flags table, examples, tips — with no unnecessary explanation of what Gmail or Pub/Sub is. Assumes Claude's competence throughout. | 3 / 3 |
Actionability | Provides concrete CLI examples and a clear flags table, but the skill is essentially a reference for a CLI tool rather than providing executable code or step-by-step guidance on what happens under the hood. The examples are copy-paste ready commands, but there's no indication of expected output format (NDJSON structure) or how to handle the streamed data. | 2 / 3 |
Workflow Clarity | The workflow for using the command is implicit rather than explicit. There's no clear sequence for the setup flow (e.g., when you need --project vs --subscription, what happens first). The tips mention watch expiration and cleanup but there's no validation checkpoint or error recovery guidance for common failure modes like auth issues or Pub/Sub permission problems. | 2 / 3 |
Progressive Disclosure | Excellent use of progressive disclosure — references the shared skill for auth/global flags via prerequisite, links to related skills in 'See Also', and keeps this file focused solely on the +watch subcommand. One level deep, clearly signaled. | 3 / 3 |
Total | 10 / 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 | |
a3768d0
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.