ADP Workforce Now 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 ADP Workforce Now. Routes through Apideck with serviceId "adp-workforce-now".
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/adp-workforce-now/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 (ADP Workforce Now via Apideck), lists concrete data entities it handles, and includes an explicit 'Use when' clause with natural trigger terms. The mention of serviceId and cross-connector compatibility adds useful context for disambiguation from similar HRIS connector skills.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: 'read or sync employees, departments, payrolls, and time-off records' and specifies the integration mechanism (Apideck's HRIS unified API, serviceId). Also mentions cross-connector compatibility. | 3 / 3 |
Completeness | Clearly answers both 'what' (ADP Workforce Now integration via Apideck HRIS unified API for reading/syncing employees, departments, payrolls, time-off) and 'when' (explicit 'Use when the user wants to read or sync employees, departments, payrolls, and time-off records in ADP Workforce Now'). | 3 / 3 |
Trigger Term Quality | Includes strong natural keywords users would say: 'ADP Workforce Now', 'employees', 'departments', 'payrolls', 'time-off records', 'Apideck', 'HRIS', 'sync'. These cover the domain well and match how users would phrase requests about ADP integration. | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive — specifies 'ADP Workforce Now' as the target system, 'Apideck' as the routing layer, and the specific serviceId 'adp-workforce-now'. This clearly distinguishes it from other HRIS connectors or general HR skills, and the note about switching serviceId clarifies its relationship to sibling skills. | 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 reasonable actionability with executable code examples, but suffers from significant verbosity — marketing language, repeated concepts, and explanations of things Claude already knows (OAuth flows, what unified APIs are). The workflow for handling unsupported operations could be made more explicit with clear decision points and validation steps.
Suggestions
Cut the 'Portable across 58 HRIS connectors' section entirely — the intro already states portability, and the sibling connectors section reinforces it. This saves ~15 lines of redundant marketing copy.
Remove explanations Claude already knows: OAuth flow details, what Vault does, why unified APIs are advantageous. Reduce Authentication to just: 'OAuth 2.0 managed by Apideck Vault. Setup guide: [link]'.
Add an explicit numbered workflow: 1. Verify coverage → 2. If supported, call unified API → 3. If UnsupportedOperationError, use Proxy API → 4. Validate response. This would improve workflow clarity significantly.
Trim 'When to use this skill' to 2 lines max — Claude can infer activation conditions from the skill description and content.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Significant verbosity throughout. The 'Portable across 58 HRIS connectors' section repeats the portability concept already stated in the intro. Marketing-style language ('compounding advantage'), explanations of OAuth flows Claude already knows, and redundant mentions of serviceId and connector count inflate token usage substantially. The 'When to use this skill' section explains things Claude can infer. | 1 / 3 |
Actionability | The TypeScript example is executable and copy-paste ready, and the curl commands for coverage verification and proxy are concrete. However, much of the content is informational rather than instructional — it describes what Apideck does rather than giving step-by-step guidance for common tasks like syncing employees, handling pagination, or processing payroll data. | 2 / 3 |
Workflow Clarity | There's an implicit workflow: verify 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 for when operations fail. | 2 / 3 |
Progressive Disclosure | Excellent use of progressive disclosure with clear one-level-deep references to SDK skills, best practices, connector coverage, OpenAPI specs, and external documentation. The 'See also' section is well-organized and references are clearly signaled throughout the document. | 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.