Simployer One integration via Apideck's HRIS unified API — same methods work across every connector in HRIS, switch by changing `serviceId`. Use when the user wants to read or sync employees, departments, payrolls, and time-off records in Simployer One. Routes through Apideck with serviceId "alexishr".
75
71%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./connectors/alexishr/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 identifies the specific integration (Simployer One via Apideck HRIS), lists concrete data entities it handles, and includes an explicit 'Use when' clause with natural trigger terms. The mention of the serviceId 'alexishr' and the architectural note about unified API methods adds useful context for skill selection. Minor note: the serviceId 'alexishr' being different from the product name 'Simployer One' could be slightly confusing but actually helps with matching if users reference either name.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: 'read or sync employees, departments, payrolls, and time-off records' and mentions the unified API pattern with serviceId switching. These are concrete, actionable capabilities. | 3 / 3 |
Completeness | Clearly answers both what ('read or sync employees, departments, payrolls, and time-off records via Apideck HRIS unified API') and when ('Use when the user wants to read or sync employees, departments, payrolls, and time-off records in Simployer One') with an explicit 'Use when' clause. | 3 / 3 |
Trigger Term Quality | Includes strong natural keywords users would say: 'Simployer One', 'employees', 'departments', 'payrolls', 'time-off records', 'HRIS', 'Apideck', and the specific serviceId 'alexishr'. Good coverage of domain-specific terms a user would naturally mention. | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive due to the specific product name 'Simployer One', the Apideck integration context, and the specific serviceId 'alexishr'. This is unlikely to conflict with other skills unless there are multiple Apideck HRIS connector skills, in which case the serviceId and product name clearly differentiate it. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
42%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The skill has strong progressive disclosure and decent actionability with executable examples, but suffers from significant verbosity — marketing language, repeated portability messaging, and explanations of concepts Claude already understands inflate the token count. The workflow for handling unsupported operations could be more explicitly sequenced with validation checkpoints.
Suggestions
Remove marketing/promotional language ('compounding advantage', 'no rewrite, no new SDK') and the repeated portability pitch — state it once concisely in the intro.
Cut the 'When to use this skill' section entirely — Claude can infer activation context from the skill description and content.
Consolidate the coverage check and proxy fallback into an explicit numbered workflow: 1) verify coverage → 2) if supported, use unified API → 3) if UnsupportedOperationError, use proxy API with specific error handling.
Trim the authentication section to just the auth type, serviceId, and a link to the setup guide — Claude doesn't need Vault mechanics explained.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Significant verbosity throughout. The 'Portable across 58 HRIS connectors' section repeats the portability pitch already stated in the intro. The 'When to use this skill' section explains obvious things. Marketing language like 'compounding advantage' wastes tokens. The authentication section over-explains Vault concepts Claude already knows. Much of this content is promotional rather than instructional. | 1 / 3 |
Actionability | The TypeScript example is executable and copy-paste ready, and the curl commands for coverage verification and proxy API are concrete. However, the skill mostly delegates to other skills for actual method surfaces, parameters, pagination, and filtering — making it more of a pointer document than a fully actionable guide. The proxy API example has a placeholder rather than a real endpoint. | 2 / 3 |
Workflow Clarity | There's an implicit workflow: check coverage → use unified API → fall back to proxy if unsupported. However, this is never presented as an explicit sequence with validation checkpoints. The coverage verification step is mentioned but not integrated into a clear decision flow with error handling or feedback loops. | 2 / 3 |
Progressive Disclosure | Excellent progressive disclosure with a clear overview and well-signaled one-level-deep references to SDK skills, best practices, connector coverage, OpenAPI specs, and official docs. Navigation is easy with clearly labeled links throughout. | 3 / 3 |
Total | 8 / 12 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 — 9 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
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 | 9 / 11 Passed | |
9e04d86
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.