Selects how functions are invoked — synchronous calls that return results, fire-and-forget void dispatches, or durable enqueue through named queues with retries. Use when deciding between blocking RPC calls, background job dispatch, async workers, or reliable message delivery with acknowledgement.
83
78%
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/iii-trigger-actions/SKILL.mdQuality
Discovery
100%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a strong skill description that clearly articulates three specific invocation patterns and provides explicit trigger guidance with natural developer terminology. It covers both the 'what' and 'when' effectively, and its focused domain makes it highly distinguishable from other skills.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete invocation patterns: synchronous calls that return results, fire-and-forget void dispatches, and durable enqueue through named queues with retries. These are distinct, well-defined actions. | 3 / 3 |
Completeness | Clearly answers both 'what' (selects how functions are invoked across three patterns) and 'when' (explicit 'Use when deciding between blocking RPC calls, background job dispatch, async workers, or reliable message delivery with acknowledgement'). | 3 / 3 |
Trigger Term Quality | Includes strong natural keywords users would say: 'blocking RPC calls', 'background job dispatch', 'async workers', 'reliable message delivery', 'acknowledgement', 'retries', 'named queues', 'synchronous', 'fire-and-forget'. Good coverage of terms developers naturally use when discussing invocation patterns. | 3 / 3 |
Distinctiveness Conflict Risk | Targets a very specific niche — function invocation strategy selection — with distinct triggers like 'RPC calls', 'fire-and-forget', 'durable enqueue', and 'named queues with retries'. Unlikely to conflict with other skills due to the precise domain focus. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
57%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The skill is well-structured with good progressive disclosure and clear cross-references to related skills and reference implementations. Its main weaknesses are moderate redundancy (concepts repeated across sections, boilerplate boundary sections) and the lack of complete executable examples inline — the actionable code is deferred to external files. Adding validation/error-handling guidance would strengthen the workflow clarity.
Suggestions
Remove the 'Architecture' section as it restates Key Concepts, and consolidate the 'When to Use' and 'Boundaries' boilerplate into a single brief note or remove entirely.
Include at least one complete, executable code block inline (e.g., a full function showing all three trigger modes) rather than relying entirely on external reference files.
Add error handling guidance: what to do on sync timeout, how to use messageReceiptId to verify enqueue success, and how void failures surface (or don't).
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The content has some redundancy — the 'Architecture' section restates what's already clear from 'Key Concepts', the 'When to Use' and 'Boundaries' sections are boilerplate that Claude doesn't need, and the decision guide is repeated across Key Concepts and Adapting This Pattern. However, the core content is reasonably focused. | 2 / 3 |
Actionability | The Common Patterns section provides concrete code snippets and CLI commands, but they are inline fragments rather than complete executable examples. The actual executable code is deferred to external reference files, so the skill itself doesn't contain copy-paste-ready working code blocks. | 2 / 3 |
Workflow Clarity | The decision guide (need result → sync, must complete → enqueue, optional → void) provides clear selection logic, and the 'Combine modes' adaptation hints at multi-step usage. However, there are no explicit validation checkpoints or error handling steps — e.g., what happens when sync times out, or how to verify enqueue succeeded via the receipt ID. | 2 / 3 |
Progressive Disclosure | The skill provides a clear overview with well-signaled one-level-deep references to implementation files in JS, Python, and Rust, plus cross-references to related skills (iii-engine-config, iii-dead-letter-queues, iii-functions-and-triggers) in the Pattern Boundaries section. Navigation is straightforward. | 3 / 3 |
Total | 9 / 12 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 — 11 / 11 Passed
Validation for skill structure
No warnings or errors.
8921efa
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.