CtrlK
BlogDocsLog inGet started
Tessl Logo

google-workspace

Gmail, Calendar, Drive, Docs, Sheets via gws CLI or Python.

54

Quality

62%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./skills/productivity/google-workspace/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

88%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is an exemplary operational skill: fully executable commands for every service, a JSON output contract, a validation-checkpointed setup flow with genuine error-recovery loops, and clearly signaled one-level-deep references that all exist. Its only weaknesses are a modest amount of inlined CLI reference that could live in a separate file and a few trimmable passages in the setup dialogue. Both issues are minor and do not impede execution.

DimensionReasoningScore

Conciseness

The 320-line body is dense command reference with essentially no concept explanation — no OAuth tutorials, no library comparisons, no padded prose. Minor trims are possible (the two --from quoting examples, some redundancy between Notes and earlier steps), fitting 'Efficient; minor instances of over-explanation that could be trimmed' rather than the fully lean anchor 5.

4 / 5

Actionability

Every section is copy-paste executable with exact commands ($GSETUP --client-secret ..., $GAPI gmail search "is:unread" --max 10, $GAPI drive share FILE_ID --email ... --role writer --notify) plus a per-command JSON output contract. This matches 'Fully executable; copy-paste ready code or commands; specific examples cover the common cases.'

5 / 5

Workflow Clarity

Setup is sequenced Steps 0-5 with an explicit validation checkpoint (--check printing AUTHENTICATED), error-recovery feedback loops (403 access_denied → test-user fix; expired code → fresh_auth_url retry; a seven-row troubleshooting table), and destructive-operation safeguards (Rule 1 confirmation requirement, trash preferred over --permanent). Matches the top anchor including feedback loops and checklists.

5 / 5

Progressive Disclosure

Both reference files exist, are one level deep, and are clearly signaled with load conditions ('Load it when the user asks for a morning brief...'), and scripts are cataloged with roles. However, roughly 140 lines of CLI usage and output-format reference are inlined in SKILL.md where a references/cli-reference.md split would fit, matching 'Good structure; most content appropriately placed; minor organization gaps' rather than the fully split anchor 5.

4 / 5

Total

18

/

20

Passed

Description

36%Weight 40%Scale 1-5

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 a terse domain catalog: it names the Google Workspace products and the execution mechanism but states zero capabilities and gives no guidance on when to use the skill. It will surface on product-name queries but cannot disambiguate itself from the related himalaya email skill or tell Claude when it is the right choice. Concrete actions plus an explicit 'Use when...' clause would lift it substantially at minimal token cost.

Suggestions

Add 3-5 concrete actions to the description, e.g. 'Search, read, send, and reply to Gmail; create and list Calendar events; upload, download, share, and trash Drive files; create and append to Docs; read and write Sheets.'

Append an explicit trigger clause, e.g. 'Use when the user mentions Gmail, email, Google Calendar, meetings or appointments, Drive files or folders, Google Sheets, or Google Docs.'

Disambiguate from the related himalaya skill in the description itself, e.g. 'Use this instead of himalaya when the user needs Calendar, Drive, Sheets, or Docs in addition to email.'

DimensionReasoningScore

Specificity

The description names the domains ("Gmail, Calendar, Drive, Docs, Sheets") and the mechanism ("via gws CLI or Python") but contains no actions at all — no search, send, create, share, or any other verb. It matches the anchor 'Names the domain but actions are minimal or generic' rather than a 1 because the product names are concrete, but it cannot reach 3 without at least 1-2 stated actions.

2 / 5

Completeness

There is no 'when should this be used' guidance in any form, and the 'what' is only a domain list with no capabilities described. This matches the anchor 'Has a vague what and no when'; a 3 would require a clear 'what' with concrete actions even if the 'when' were missing.

2 / 5

Trigger Term Quality

The five product names are natural terms users would say, but common variations and synonyms are missing — 'email', 'spreadsheet(s)', 'meetings', 'appointments', 'contacts' — and there are no usage phrases at all. This fits 'Some relevant keywords but missing common variations or synonyms' rather than 4, where only a few terms would be absent.

3 / 5

Distinctiveness Conflict Risk

The product list is somewhat specific, but bare 'Gmail' and 'Calendar' overlap directly with the related himalaya email skill (declared in frontmatter related_skills), and no differentiating trigger phrases exist. 'Somewhat specific but could still overlap with similar skills' is the best fit; not 4 given the explicit overlap with a closely related email skill.

3 / 5

Total

10

/

20

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 — 13 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

metadata_field

'metadata' should map string keys to string values

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

13

/

16

Passed

Repository
NousResearch/hermes-agent
Reviewed

Table of Contents

Is this your skill?

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.