CtrlK
BlogDocsLog inGet started
Tessl Logo

coding-standards

适用于TypeScript、JavaScript、React和Node.js开发的通用编码标准、最佳实践和模式。

44

Quality

47%

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 ./docs/zh-CN/skills/coding-standards/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

50%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 well-organized standards reference with consistently concrete PASS/FAIL code examples that encode genuinely useful project conventions, but it is monolithic and padded with generic programming principles (KISS/DRY/YAGNI, basic readability advice) that Claude already knows. Splitting topic areas into reference files and cutting the generic sections would raise both conciseness and progressive disclosure. No multi-step workflow or validation is needed for a reference skill, but an explicit 'how to apply these during a review' sequence would help.

Suggestions

Delete or compress the '代码质量原则' section (KISS/DRY/YAGNI/readability bullets) — this is knowledge Claude already has; keep only conventions that differ from defaults, as done well in the immutability section.

Split the body into one-level-deep reference files (e.g. references/react.md, references/api-design.md, references/testing.md) and have SKILL.md keep only the core naming/immutability/error-handling rules with clear pointers like 'React 组件与 Hooks 规范: 见 [react.md](references/react.md)'.

Fill in the stub examples (getMarket's '// Implementation', the useDebounce hook's missing React imports) or trim them to one-line signatures so every example is executable as written.

DimensionReasoningScore

Conciseness

The opening sections restate basic programming concepts Claude already knows — 'KISS (保持简单,傻瓜)', 'DRY (不要重复自己)', 'YAGNI', '可读性优先' with bullets like '代码被阅读的次数远多于被编写的次数' — which is exactly the padded explanation the rubric penalizes. The project-specific conventions (immutability rules, ApiResponse shape, supabase/zod patterns) are valuable, but several full sections teach generic wisdom rather than project standards, matching anchor 2 ('noticeably verbose; several unnecessary explanations or padded sections') rather than anchor 3's 'some unnecessary explanation'.

2 / 5

Actionability

PASS/FAIL code pairs are concrete, largely executable, and cover the common cases (naming, spread-operator immutability, try/catch fetch, Promise.all, typed React components, zod validation, AAA test structure). It stops short of anchor 5 because several examples are stubs — 'function getMarket(id: string): Promise<Market> { // Implementation }' and the useDebounce example that uses useState/useEffect without imports — so not everything is copy-paste ready.

4 / 5

Workflow Clarity

This is a standards reference rather than a multi-step process, and it defines activation triggers in '何时激活', but it prescribes no workflow at all — no order to check rules when writing or reviewing code, and no validation/verification checkpoints anywhere. It fits anchor 3 ('sequence present but checkpoints missing or implicit' — here the sequence is at best implicit) and does not reach anchor 4, which requires most checkpoints to be explicit.

3 / 5

Progressive Disclosure

The body has clear, well-organized headers, but it is a ~540-line monolith with no references/ files, no external links, and no navigation pointers; distinct topic areas (React best practices, API design standards, testing standards, file organization) that clearly belong in separate reference files are all inlined. This matches anchor 3 ('content that should be separate is inline') rather than anchor 2, since the in-file structure and section organization are good.

3 / 5

Total

12

/

20

Passed

Description

45%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 identifies the tech stack clearly but says nothing concrete about what the skill does or when it should be used. It reads as a topic label ('general coding standards for TS/JS/React/Node') rather than a capability-and-trigger statement, which limits its discoverability and creates overlap risk with any other coding-convention skill. Adding explicit actions and a 'Use when...' clause would substantially improve it.

Suggestions

Replace the generic phrase '通用编码标准、最佳实践和模式' with 2-3 concrete actions, e.g. 'Applies PASS/FAIL code examples for naming, immutability, error handling, and React patterns (适用于命名、不可变性、错误处理与React模式的PASS/FAIL示例)'.

Add an explicit trigger clause, e.g. 'Use when writing or reviewing TypeScript/JavaScript/React code, setting up lint or formatting rules, or onboarding contributors to project conventions'.

Drop the '通用' (general/universal) qualifier and state the stack-specific scope up front to reduce conflict risk with generic style-guide skills.

DimensionReasoningScore

Specificity

The description names the domain ("TypeScript、JavaScript、React和Node.js开发") but the capabilities are purely generic noun phrases ("通用编码标准、最佳实践和模式" — general coding standards, best practices and patterns) with no concrete actions such as 'enforce naming conventions' or 'review code quality'. It matches anchor 2 ('names the domain but actions are minimal or generic'), not anchor 3, which requires at least 1-2 concrete actions to be named.

2 / 5

Completeness

The 'what' is stated (coding standards and patterns for the named stack) but only at a generic level, and the 'when' is entirely absent — there is no 'Use when...' clause or equivalent trigger guidance, which per the judging guidelines caps completeness at 3. It does not reach anchor 4 because 'when to use' is not even weakly implied in the description.

3 / 5

Trigger Term Quality

"TypeScript、JavaScript、React、Node.js" are natural terms users would say, giving some relevant keywords, but the description misses the common task-level phrases that would actually trigger this skill (e.g. 'code review', 'refactoring', 'naming conventions', 'linting/formatting rules'). This fits anchor 3 ('some relevant keywords but missing common variations or synonyms'), not anchor 4, which expects good coverage including the natural task vocabulary.

3 / 5

Distinctiveness Conflict Risk

Naming the specific tech stack gives it some distinctiveness, but the qualifier "通用" (general/universal) coding standards creates broad overlap risk with any linting, style-guide, or code-quality skill covering the same stack. This sits at anchor 3 ('somewhat specific but could still overlap with similar skills'), below anchor 4 which requires mostly distinct triggers.

3 / 5

Total

11

/

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

skill_md_line_count

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

Warning

frontmatter_unknown_keys

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

Warning

Total

14

/

16

Passed

Repository
affaan-m/ECC
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.