CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

engineer-rule

Guide for creating persistent AI rules — coding standards, project conventions, file-specific patterns. Use when users want to create a rule, set up conventions, or ask where rules go. Works across IDEs (Cursor, Claude Code, OpenCode).

60

Quality

76%

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 ./plugins/flowai-devtools/skills/engineer-rule/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 correct, executable per-IDE rule formats and a sensible three-phase workflow ending in validation, but it is bloated: an entire examples section duplicates the existing references/examples.md, the control-primitives table extends well beyond rule creation, and one limitation is repeated three times. Fixing the duplication would improve both conciseness and progressive disclosure.

Suggestions

Replace the inline 'Example Rules' section (~117 lines) with pointers to references/examples.md, e.g. '**Full examples by category**: See [examples.md](references/examples.md)', removing the duplication.

Trim the 'Control Primitives Map by IDE' table to the Persistent/Conditional Instructions rows (or move the full map to references/) since commands, hooks, MCP, and context-ignoring are outside this skill's purpose.

State the Claude Code Read-only trigger limitation once and reference scripts/init_rule.ts in Phase 2 if it scaffolds rule files, so both bundle files are discoverable.

DimensionReasoningScore

Conciseness

The body is 345 lines with clear padding: the 'Example Rules' section (~117 lines, '### Error Handling (TypeScript) — Cursor' through 'Project Architecture (Always Apply) — Claude Code') duplicates content already in references/examples.md, the 'Control Primitives Map by IDE' table includes rows for Custom Commands, Event Hooks, MCP Integration, and Context Ignoring that are peripheral to rule creation, and the Claude Code Read-only trigger limitation is stated three times (the rule-specific paths table, the 'Rule Format by IDE' section, and the 'Limitations' note). This is 'noticeably verbose; several unnecessary explanations or padded sections' — it is above level 1 because it never explains concepts Claude already knows (no 'what is a rule file' tutorial prose).

2 / 5

Actionability

Guidance is fully executable throughout: exact frontmatter templates per IDE with field tables, concrete paths (`.cursor/rules/<rule-name>/RULE.md`, `.claude/rules/*.md`), an explicit validation command (`deno run -A scripts/validate_rule.ts <path/to/rule-file-or-directory>` — a real bundle file), and copy-paste-ready rule examples covering the common cases (conditional/always-apply, Cursor/Claude Code/OpenCode). This matches the level-5 anchor; nothing is pseudocode or vague.

5 / 5

Workflow Clarity

The three-phase process (Discovery → Implementation → Verification) is clearly sequenced with explicit detection fallbacks ('If multiple detected or none -> ask the user') and a verification phase containing a concrete validation command plus a 6-item checklist. It falls short of level 5 because the error-recovery loop is implicit — it never says what to do when validation fails (fix which issues, re-run until passing), only 'Run validation' with a checklist.

4 / 5

Progressive Disclosure

Structure exists (well-organized sections, one script correctly referenced with a working path), but references/examples.md is never mentioned or linked anywhere in the body while ~117 lines of its content are inlined as a duplicate 'Example Rules' section, and scripts/init_rule.ts (256 lines) is never referenced. This fits 'some structure but could be better organized; references present but not clearly signaled; content that should be separate is inline' — above level 2 because section headers are clear and one bundle file is properly wired in, not buried.

3 / 5

Total

14

/

20

Passed

Description

78%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 well-formed description with an explicit 'Use when...' clause covering multiple natural triggers and a clear statement of what the skill does across three named IDEs. Its main weakness is thin action coverage — it names only 'creating' — and a few missing common synonyms (standards, guidelines, specific rule file names).

Suggestions

Add one or two more concrete action verbs, e.g. 'Creates, places, and validates persistent AI rules' to lift specificity.

Include widely-used trigger terms like 'standards', 'guidelines', or 'CLAUDE.md' / 'cursor rules' so users phrasing the need via those file names also match.

DimensionReasoningScore

Specificity

The description names the domain ('creating persistent AI rules') and enumerates the rule types ('coding standards, project conventions, file-specific patterns'), but only lists one action verb (creating) — capabilities like validating rules or placing them per-IDE are not stated. This matches the anchor 'names domain and 1-2 concrete actions, but not comprehensive' rather than the level-4 anchor, which requires several specific actions.

3 / 5

Completeness

It explicitly answers both questions: what ('Guide for creating persistent AI rules — coding standards, project conventions, file-specific patterns') and when ('Use when users want to create a rule, set up conventions, or ask where rules go'). Both are concrete with explicit trigger phrases, matching the level-5 anchor exactly; it is not level 4 because the 'when' clause is already explicit and specific.

5 / 5

Trigger Term Quality

Natural phrases users would say are present: 'create a rule', 'set up conventions', 'ask where rules go', plus tool names (Cursor, Claude Code, OpenCode). A few common variations are missing — e.g. 'standards', 'guidelines', 'CLAUDE.md', 'cursor rules', '.cursorrules' — so it fits 'good keyword coverage; a few natural terms missing' rather than the comprehensive level-5 anchor.

4 / 5

Distinctiveness Conflict Risk

The niche (persistent AI agent rules) is fairly distinct with triggers like 'create a rule' and 'where rules go', but 'set up conventions' and the broad IDE list create minor overlap risk with documentation-standards or linting/config skills. This fits 'mostly distinct; minor overlap risk' rather than level 5's 'clear niche with minimal conflict risk'.

4 / 5

Total

16

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

korchasa/flowai-plugins

Path

plugins/flowai-devtools/skills/engineer-rule/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.