CtrlK
BlogDocsLog inGet started
Tessl Logo

tabnine

Tabnine integration. Manage data, records, and automate workflows. Use when the user wants to interact with Tabnine data.

53

Quality

60%

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

Fix and improve this skill with Tessl

tessl review fix ./skills/tabnine/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

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

The body is highly actionable, with executable Membrane CLI commands and a well-sequenced connection workflow including state-based checkpoints. Its main weaknesses are an unnecessary introductory paragraph restating what Tabnine is and an empty 'Tabnine Overview' filler section that hurts conciseness and structure.

Suggestions

Delete or condense the opening paragraph defining Tabnine and the phrase about 'focusing on integration logic rather than auth plumbing' — Claude already knows what Tabnine is.

Remove or fill the empty 'Tabnine Overview' bullet list (Model / Tabnine Client) so the section earns its place or is cut entirely.

Consider moving the proxy-request flag table and the detailed clientAction field reference into a separate reference file to improve progressive disclosure and token efficiency.

DimensionReasoningScore

Conciseness

The opening paragraph explaining that 'Tabnine is an AI-powered code completion tool that helps developers write code faster...' restates what Claude already knows, and phrases like 'so you can focus on the integration logic rather than auth plumbing' pad the text, but the bulk is efficient command documentation, fitting the 'mostly efficient but includes some unnecessary explanation' anchor.

3 / 5

Actionability

Concrete, copy-paste-ready commands are provided throughout (npm install, membrane login, membrane connection ensure, membrane action run) plus a full flag table for proxy requests, with only minor placeholder gaps like CONNECTION_ID and <actionId>, matching level 4 rather than the fully-covered level 5.

4 / 5

Workflow Clarity

The connect-to-Tabnine flow is explicitly sequenced (install, authenticate, connection ensure, poll until READY, search actions, run) with explicit state checks (READY, BUILDING, CLIENT_ACTION_REQUIRED, CONFIGURATION_ERROR) and a retry-after-action feedback loop, fitting the 'clear sequence with most checkpoints present' anchor; it is not level 5 because validation is state-polling rather than an explicit validate-and-recover checklist.

4 / 5

Progressive Disclosure

No bundle files exist (references/scripts/assets absent) and all content lives in one ~150-line file with reasonable section headers, but the 'Tabnine Overview' section is an empty filler bullet list and content that could be split (e.g., the proxy flag table) is inlined, fitting level 3 rather than the well-organized level 4.

3 / 5

Total

14

/

20

Passed

Description

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

The description correctly pairs a what/when structure in third-person voice and leverages the distinct 'Tabnine' trigger, but its action list is generic ('manage data, records, automate workflows') rather than concrete. Tightening the actions to specific Tabnine capabilities would lift specificity and distinctiveness.

Suggestions

Replace the generic 'Manage data, records, and automate workflows' with concrete Tabnine actions (e.g., 'manage code completion models, fetch and update records, trigger automated workflows').

Broaden the 'when' clause with natural trigger phrases users say, such as 'Use when the user wants to manage Tabnine code completion, fetch Tabnine records, or run Tabnine workflows.'

DimensionReasoningScore

Specificity

Names the domain (Tabnine) but the actions 'Manage data, records, and automate workflows' are generic and not concrete, matching the 'names the domain but actions are minimal or generic' anchor rather than the level-3 anchor which requires concrete actions.

2 / 5

Completeness

Both a 'what' (manage data, records, automate workflows) and an explicit 'when' (Use when the user wants to interact with Tabnine data) are present, but the 'when' could be more specific, matching the level-4 anchor; it is not level 5 because the trigger phrasing is narrow and not level 3 because the 'when' is explicit rather than weakly implied.

4 / 5

Trigger Term Quality

'Use when the user wants to interact with Tabnine data' includes the natural product keyword 'Tabnine' plus 'data', but misses common variations or synonyms, fitting the 'some relevant keywords but missing common variations' anchor.

3 / 5

Distinctiveness Conflict Risk

'Tabnine integration' targets a specific product niche with distinct triggers and minimal conflict risk, though the generic 'manage data, records, automate workflows' actions leave minor overlap with other data skills, fitting level 4 rather than the fully-distinct level 5.

4 / 5

Total

13

/

20

Passed

Validation

93%

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

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository
membranedev/application-skills
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.