CtrlK
BlogDocsLog inGet started
Tessl Logo

bfl-api

BFL FLUX API integration guide covering endpoints, async polling patterns, rate limiting, error handling, webhooks, and regional endpoints with Python and TypeScript code examples.

60

Quality

72%

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 ./.claude/skills/bfl-api/SKILL.md

The canonical home for this skill is bfl-api in calesthio/OpenMontage

SKILL.md
Quality
Evals
Security

Quality

Content

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

A highly actionable, well-structured body with executable examples and a clear request lifecycle, supported by a real, well-signaled one-level-deep reference bundle. The main costs are repetition (the URL-expiry warning stated four times, duplicated key-check) and inlined pricing/endpoint detail that overlaps references/endpoints.md.

Suggestions

State the 10-minute URL expiry warning once (e.g. in the Quick Start download step) and remove the other three repetitions; merge the duplicated API key check into the single API Key Setup section.

Trim the inlined FLUX.2/FLUX.1 model and pricing tables to a short summary and point to references/endpoints.md, which already documents complete endpoint detail.

Add an explicit error-recovery step to the request flow (e.g. what to do on status 'Error' or 429 responses, linking to references/error-handling.md and references/rate-limiting.md) to close the workflow's feedback loop.

DimensionReasoningScore

Conciseness

The body is mostly lean tables and commands, but the 'URLs expire in 10 minutes' warning is repeated four times (dedicated section, Key Behaviors, Basic Request Flow, Quick Start tip) and the API key check is duplicated (opening 'First: Check API Key' section plus 'API Key Setup' section). This is more than the minor trimming of the 4 anchor but well short of the verbose padding of 2, so 3.

3 / 5

Actionability

Fully executable copy-paste-ready cURL commands with real headers (x-key), parameters, and JSON response examples, covering the common cases: text-to-image, single and multi-reference image editing, polling, and download. This matches the 5 anchor's 'copy-paste ready code covering common cases'.

5 / 5

Workflow Clarity

The sequence is clear and well-ordered (verify key → POST to model endpoint → poll polling_url until status Ready/Error → download before URL expiry), with a validation precondition on the API key. It is not 5 because there is no explicit error-recovery loop (what to do on status 'Error' or 429), only a passing mention of the Error status; not 3 because checkpoints (status polling, key check, expiry warning) are present rather than absent.

4 / 5

Progressive Disclosure

References are one level deep, real (verified on disk), and clearly signaled with one-line descriptions in the References section plus inline pointers (api-key-setup.md, code-examples). It is not 5 because the inlined model/pricing tables overlap the content of references/endpoints.md ('Complete endpoint documentation'), and the cross-skill flux-best-practices path is not part of this bundle — good structure with minor organization gaps, matching the 4 anchor.

4 / 5

Total

16

/

20

Passed

Description

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

A specific, well-scoped description that names its domain and coverage areas concretely with low conflict risk, but it lacks any explicit 'when to use' trigger guidance and omits the most natural user-facing terms like image generation. Adding a 'Use when...' clause with those phrases would lift the two weakest dimensions.

Suggestions

Add a 'Use when...' clause, e.g. 'Use when integrating image generation or image editing via the BFL FLUX API, or when the user mentions BFL, FLUX, text-to-image, or image editing endpoints.'

Include natural user phrasings such as 'image generation', 'text-to-image', and 'image editing' as trigger terms alongside the current API-infrastructure terms.

Rephrase coverage areas with action verbs (e.g. 'Configure async polling, handle rate limits and errors, set up webhooks') to move specificity from topic-listing to concrete actions.

DimensionReasoningScore

Specificity

The description covers six concrete areas ("endpoints, async polling patterns, rate limiting, error handling, webhooks, and regional endpoints with Python and TypeScript code examples") plus named languages. It falls short of the 5 anchor because these are topic nouns rather than the concrete action verbs (e.g. 'Extracts text', 'fills forms') the top anchor exemplifies, and above 3 because coverage is broad and specific rather than 1-2 actions.

4 / 5

Completeness

The 'what' is clear and specific (BFL FLUX API integration guide with listed coverage areas), but there is no 'Use when...' clause or equivalent explicit trigger guidance, capping completeness at 3 per the judging guidelines. It is not a 2 because the 'what' half is concrete, not vague.

3 / 5

Trigger Term Quality

Natural terms include "BFL", "FLUX", "API", "polling", "rate limiting", "error handling", "webhooks" — good keyword coverage a user would plausibly say. Not a 5 because common natural phrases like "image generation", "text-to-image", or "image editing" are missing, which are the most likely user phrasings for this domain.

4 / 5

Distinctiveness Conflict Risk

"BFL FLUX API" is a clearly distinct vendor-specific niche with distinctive trigger terms (BFL, FLUX, polling_url, webhooks), so conflict risk with other skills is minimal — a clean match for the 5 anchor.

5 / 5

Total

16

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

relative_links

Relative link issues: 3 deeper-than-1-level

Warning

referenced_paths_exist

Referenced path issues: 6 deeper-than-1-level

Warning

Total

14

/

16

Passed

Repository
calesthio/OpenMontage
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.