AFAS Software integration. Manage data, records, and automate workflows. Use when the user wants to interact with AFAS Software data.
63
54%
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/afas-software/SKILL.mdQuality
Discovery
67%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 benefits from naming a specific product (AFAS Software) and includes an explicit 'Use when' clause, which are strengths. However, the actions described are vague and generic — 'manage data, records, and automate workflows' could apply to almost any integration tool. Adding AFAS-specific capabilities and terminology would significantly improve both specificity and trigger term quality.
Suggestions
Replace generic actions with AFAS-specific capabilities, e.g., 'Query data via GetConnectors, update records via UpdateConnectors, manage employees, invoices, and financial entries in AFAS Profit.'
Add AFAS-specific trigger terms users would naturally use, such as 'AFAS Profit', 'GetConnector', 'UpdateConnector', 'AFAS API', or 'AFAS Online'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (AFAS Software) and some general actions ('manage data, records, and automate workflows'), but these actions are broad and not concrete — it doesn't specify what kinds of data, records, or workflows (e.g., 'create invoices, update employee records, sync financial data'). | 2 / 3 |
Completeness | The description answers both 'what' (manage data, records, automate workflows) and 'when' ('Use when the user wants to interact with AFAS Software data'), with an explicit trigger clause. Both parts are present, though the 'what' could be more detailed. | 3 / 3 |
Trigger Term Quality | 'AFAS Software' is a strong specific trigger term that users would naturally say, but the remaining terms ('data', 'records', 'workflows') are very generic and don't include natural variations or specific AFAS-related terms users might mention (e.g., 'AFAS Profit', 'AFAS connectors', 'GetConnector', 'UpdateConnector'). | 2 / 3 |
Distinctiveness Conflict Risk | 'AFAS Software' is a distinctive product name that reduces conflict risk significantly, but the generic terms 'manage data, records, and automate workflows' could overlap with other integration or data management skills. The AFAS branding helps but the action terms are not distinctive. | 2 / 3 |
Total | 9 / 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 provides good, actionable CLI commands for interacting with AFAS Software via Membrane, but is severely undermined by an enormous inline list of 100+ actions that wastes tokens and adds minimal value beyond what `action list --intent` already provides. The workflow is reasonably clear but lacks explicit validation steps, and the content would benefit greatly from splitting the action catalog into a separate reference file.
Suggestions
Remove or drastically reduce the 100+ action list in the overview section — the `membrane action list --intent` command already provides discovery, making the inline catalog redundant and wasteful.
Extract any remaining action reference into a separate file (e.g., ACTIONS_REFERENCE.md) and link to it from the main skill with a one-line summary.
Add explicit validation/verification steps after key operations (e.g., verify connection succeeded after `membrane connect`, check output after `action run`).
Add a concise end-to-end example workflow showing a complete task from connection to action execution with expected output.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The massive list of 100+ actions with repetitive 'Use this to list/get all available X' descriptions is extremely verbose and adds almost no value. Claude can infer CRUD patterns from a few examples. The overview section alone wastes significant tokens on information that could be discovered via the `action list` command. | 1 / 3 |
Actionability | The skill provides concrete, copy-paste-ready CLI commands for every step: installation, authentication, connecting, searching actions, creating actions, running actions with parameters. The commands include specific flags like --json, --wait, and --timeout with clear explanations. | 3 / 3 |
Workflow Clarity | The workflow for creating and polling actions includes a clear sequence with state checking (BUILDING → READY/error), but the overall skill lacks a clear end-to-end workflow sequence. Authentication has a headless flow with steps, but there's no validation checkpoint after connecting or running actions to verify success. | 2 / 3 |
Progressive Disclosure | The content is a monolithic wall of text with the enormous action list inline rather than in a separate reference file. The overview section should be extracted to a reference document, keeping only a brief summary in the main skill file. No references to external supplementary files are provided. | 1 / 3 |
Total | 7 / 12 Passed |
Validation
90%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 10 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 10 / 11 Passed | |
56d7336
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.