CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

approvals

What to do when a tool call is paused for the user's approval or declined (sending, inviting, deleting, posting, merging), and when you are resumed after one.

Quality

88%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

93%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.

An exemplary lean skill body: every instruction is concrete, the pause/resume/decline branching is explicit, and the single-file structure is appropriately organized for its size. The only minor gap is the absence of any error-recovery guidance for a failed re-call after approval.

DimensionReasoningScore

Conciseness

The 23-line body is lean and assumes Claude's competence: every line is a rule ('Stop immediately. Do not retry or work around the gate via another tool, CLI, curl, or API'), with zero padding or explanation of concepts Claude already knows. This matches the 5 anchor ('every token earns its place') and is clearly above the 4 anchor's 'minor instances of over-explanation'.

5 / 5

Actionability

The guidance is fully concrete and executable for an instruction-only skill: 'call the exact same tool with the exact same arguments once', 'End your turn with one sentence stating what is waiting for approval', 'Prefer a draft (Gmail draft, Markdown file)'. Every branch prescribes an exact action with no vague direction, matching the 5 anchor per the code-vs-instruction scoring note.

5 / 5

Workflow Clarity

The sequence is clear and checkpoints are present: prepare everything so the gated call comes last, then explicit branches for paused ('stop immediately', end turn) and resumed (approved → re-call once with identical args; declined → do not perform). It sits below the 5 anchor because there is no error-recovery feedback (e.g., what to do if the approved re-call fails or how to confirm the action landed) — a minor validation gap consistent with the 4 anchor.

4 / 5

Progressive Disclosure

The skill is under 50 lines, needs no external references (none exist in the bundle), and is organized into well-labeled sections ('When a call is paused', 'When resumed', 'Guidelines') that make navigation trivial. Per the simple-skill scoring note, this matches the 5 anchor for a short, well-organized single-file skill.

5 / 5

Total

19

/

20

Passed

Description

78%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.

A strong description with explicit, concrete trigger guidance covering pause, decline, and resume paths plus the specific gated actions. Its only weakness is that the 'what' side is stated indirectly ('What to do when...') rather than naming the prescribed behaviors.

DimensionReasoningScore

Specificity

The description names concrete situations and gated action categories ('paused for the user's approval or declined (sending, inviting, deleting, posting, merging)', 'resumed after one') rather than vague language. It falls short of the 5 anchor because it states scenarios and states to handle rather than comprehensively enumerating the specific behaviors it instructs.

4 / 5

Completeness

Both halves are explicitly present: the 'when' is highly concrete ('when a tool call is paused for the user's approval or declined... and when you are resumed'), satisfying the 'Use when...' equivalent requirement. The 'what' ('What to do when...') is explicit but slightly indirect — it promises guidance for those events without naming the actions it prescribes — so it sits between the 4 and 5 anchors rather than clearly at 5.

4 / 5

Trigger Term Quality

Natural trigger phrases are present and specific — 'paused for the user's approval', 'declined', 'resumed', plus the concrete gated actions 'sending, inviting, deleting, posting, merging'. A few natural synonyms users/systems would emit are missing (e.g., 'permission', 'denied', 'confirmed'), keeping it below the comprehensive 5 anchor.

4 / 5

Distinctiveness Conflict Risk

It occupies a clear niche — handling approval gates and resumption for outward-facing/destructive tool calls — with distinct trigger phrases that would not plausibly fire for another skill. This matches the 5 anchor ('clear niche with distinct triggers; minimal conflict risk') and is clearly above the 4 anchor's 'minor overlap risk with closely related skills'.

5 / 5

Total

17

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

google/adk-samples

Path

core/python/adk-voice-agent/sandbox/skills/approvals/SKILL.md

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.