CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

aif-ci

Generate CI/CD pipeline (GitHub Actions / GitLab CI) with linting, static analysis, tests, security. Use when user says "ci", "setup ci", "github actions", "gitlab ci", "pipeline".

Quality

77%

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/aif-ci/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 a dense, actionable playbook with excellent detection tables and a well-sequenced workflow, but it is undermined by duplicated skill-context policy text and by references to template files missing from the bundle. Tightening the redundant sections and fixing or removing the dead template paths would raise both conciseness and navigability.

Suggestions

Remove the duplicated skill-context instructions (the 'Shared project skill-context' section vs. Step 0's 'How to apply skill-context rules') — state the precedence and enforcement policy once and reference it from the other location.

Fix the dead bundle references: either add the templates/<platform>/<language>.yml files referenced in Step 3/4 or replace the template-selection tables with inline skeleton workflows; also correct 'skills/ci/references/BEST-PRACTICES.md' to the actual 'references/BEST-PRACTICES.md' path.

Move time-sensitive action-version pins (actions/setup-node@v4, astral-sh/setup-uv@v5, etc.) into a reference table so they can be updated in one place, and add an executable YAML validation step (e.g., yamllint or actionlint) to the pre-write quality checks.

DimensionReasoningScore

Conciseness

The skill-context precedence policy is stated twice (the "Shared project skill-context" intro and again in Step 0's "How to apply skill-context rules"), and time-sensitive action-version pins (actions/setup-node@v4, astral-sh/setup-uv@v5, shivammathur/setup-php@v2) sit inline rather than in a reference file. Mostly efficient decision tables, but noticeable duplication that could be tightened — anchor 3, not the minor-trim-only anchor 4.

3 / 5

Actionability

Highly concrete: exact Glob/Grep patterns, per-lockfile install commands, a copy-paste YAML header pattern, per-job decision tables, and a pre-write checklist. It falls short of anchor 5 because full workflow generation is delegated to template files ("Read the selected template", "Use the templates in templates/github/") that are not present in the bundle.

4 / 5

Workflow Clarity

A clear Step 0–7 sequence with explicit mode-determination paths, a "Quality Checks (Before Writing)" checklist, and a fix-before-present feedback loop for skill-context violations. Minor validation gap — there is no executable check of the generated YAML (e.g., yamllint/actionlint) — so it matches anchor 4 rather than the explicit-executable-validation anchor 5.

4 / 5

Progressive Disclosure

The five references/*.md files exist, are one level deep, and are clearly signaled at point of need ("→ read references/TOOL-COMMANDS.md"), but Step 3/4 reference templates/<platform>/<language>.yml for twelve template files that do not exist in the bundle, and BEST-PRACTICES.md is addressed via an inconsistent "skills/ci/references/" path. Broken navigation for a core step places this between anchors 3 and 4 — good signaling undermined by dead paths.

3 / 5

Total

14

/

20

Passed

Description

83%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 strong description: concrete capability statement paired with an explicit, natural trigger list in third-person voice. Its only weaknesses are the unmentioned enhance/audit capabilities and slightly thin synonym coverage in the trigger terms.

DimensionReasoningScore

Specificity

"Generate CI/CD pipeline (GitHub Actions / GitLab CI) with linting, static analysis, tests, security" lists several concrete deliverables across two named platforms, but omits the skill's enhance/audit modes entirely — a minor coverage gap that fits anchor 4 rather than the comprehensive anchor 5.

4 / 5

Completeness

Both questions are answered explicitly: the what ("Generate CI/CD pipeline ... with linting, static analysis, tests, security") and the when ("Use when user says 'ci', 'setup ci', 'github actions', 'gitlab ci', 'pipeline'") with concrete trigger phrases, directly matching anchor 5. It is not anchor 4 because the 'when' clause is fully explicit with quoted trigger phrases, not merely present.

5 / 5

Trigger Term Quality

Triggers "ci", "setup ci", "github actions", "gitlab ci", "pipeline" are natural phrases a user would say, but common variations like "continuous integration", "workflow", "cd", and file extensions (.gitlab-ci.yml, .github/workflows) are missing — good coverage with a few natural terms absent, matching anchor 4.

4 / 5

Distinctiveness Conflict Risk

Platform-specific triggers ("github actions", "gitlab ci") carve a clear niche, but the broad triggers "ci" and "pipeline" create minor overlap risk with closely related devops skills (e.g., build automation, dockerize) — mostly distinct, matching anchor 4 rather than the minimal-conflict anchor 5.

4 / 5

Total

17

/

20

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 — 13 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (525 lines); consider splitting into references/ and linking

Warning

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

frontmatter_unknown_keys

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

Warning

Total

13

/

16

Passed

Repository

lee-to/ai-factory

Path

skills/aif-ci/SKILL.md

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.