CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

oma-backend

Implement server APIs, authentication, and application data access. Schema modeling and query tuning use oma-db.

50

Quality

63%

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 ./.agents/skills/oma-backend/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

56%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-structured orchestration guide with a clear staged workflow, explicit validation stage, and error-recovery guidance, but it carries padding (DRY/SOLID/KISS explanations, duplicated architecture statements) and delegates all executable detail to resource files that are not present in the bundle. Tightening the generic software-principles sections and ensuring the referenced files actually ship would raise both conciseness and actionability.

Suggestions

Remove or compress the DRY/SOLID/KISS explanations and the duplicated architecture pattern (Architecture Pattern section vs. Core Rule 1) — Claude already knows these principles; keep only the stack-specific layering rules.

Ship the referenced resource files (execution-protocol.md, checklist.md, orm-reference.md, error-playbook.md) in the bundle or remove the dangling references, since progressive disclosure currently points at files that don't exist.

Make the VERIFY stage executable by inlining at least one concrete default verification command pattern instead of only deferring to 'the project's discovered verification commands' and absent stack.yaml verify entries.

DimensionReasoningScore

Conciseness

The body is mostly directive lists and tables, but it pads with explanations of concepts Claude already knows — the Guardrails section defines DRY ("Business logic in Service, data access logic in Repository"), SOLID ("Classes and functions should have one responsibility"), and "KISS: Keep it simple and clear" — and the router→service→repository→models pattern is stated twice (Architecture Pattern and Core Rule 1), while the Scheduling meta-section restates scope several times. Anchor 3 rather than 2 because the bulk is imperative guidance, not tutorial prose.

3 / 5

Actionability

There is concrete policy ("JWT + Argon2id for auth", "Parameterized queries only", explicit layer responsibilities, named Serena tools like `find_file` and `search_for_pattern`), but no code and no runnable commands — verification is deferred to "the project's discovered verification commands" and to resource files absent from the bundle, so key execution details are missing. This sits at anchor 3 ('some concrete guidance but incomplete') rather than 4.

3 / 5

Workflow Clarity

The PREPARE→ACQUIRE→ACT→VERIFY→FINALIZE scene sequence is clear, with a dedicated VERIFY stage ("Run relevant lint, type, test, migration, and checklist commands"), an explicit feedback loop ("If verification fails, fix root cause before handoff"), and a pre-handoff checklist reference. It falls short of anchor 5 because the validation steps are not executable — no actual commands are given and the referenced checklist file is not in the bundle.

4 / 5

Progressive Disclosure

References are clearly signaled and one level deep (References section, Dependencies, Stack-Specific Reference), but scored against the actual bundle: no referenced file exists — `resources/execution-protocol.md`, `resources/checklist.md`, `resources/orm-reference.md`, `resources/error-playbook.md`, `../_shared/core/*.md`, and `stack/stack.yaml` are all dangling. Good signaling over a broken structure lands at anchor 3.

3 / 5

Total

13

/

20

Passed

Description

53%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 states a clear, appropriately-scoped backend niche with an explicit boundary against oma-db, but it omits any "when to use" trigger guidance and only lists broad domain areas rather than concrete capabilities. Adding a "Use when..." clause with natural trigger terms (backend, endpoint, REST, migration, background job) would lift both completeness and trigger-term quality.

Suggestions

Add a 'Use when...' clause with natural trigger phrases, e.g. 'Use when the user asks for backend work: APIs, endpoints, REST/GraphQL, auth, migrations, repositories, services, or background jobs' (terms already listed in the body's intent-signature section).

Replace the broad 'application data access' with the concrete capabilities the skill actually covers, such as database integration, transactions, and background jobs.

Consider one or two trigger words for the auth niche specifically (e.g. 'login flow', 'JWT') since authentication is a headline capability.

DimensionReasoningScore

Specificity

"Implement server APIs, authentication, and application data access" names three areas, but they read as domain labels rather than concrete operations — the skill's actual scope (migrations, background jobs, business logic, repositories) is absent. This matches anchor 3 ('1-2 concrete actions, not comprehensive') better than anchor 4, whose examples list finer-grained actions like 'fills forms, converts pages to images'.

3 / 5

Completeness

The "what" is clear ("Implement server APIs, authentication, and application data access") but the "when" is entirely absent — there is no "Use when..." clause or equivalent trigger guidance, which caps completeness at 3 per the judging guidelines. Not anchor 2 because the "what" is specific, not vague.

3 / 5

Trigger Term Quality

"server APIs", "authentication", and "application data access" are natural terms users would say, but common trigger phrasings — "backend", "endpoint", "REST", "GraphQL", "migration", "database" — are missing even though the body's intent-signature section lists them. Some relevant keywords with missing variations, matching anchor 3.

3 / 5

Distinctiveness Conflict Risk

The boundary sentence "Schema modeling and query tuning use oma-db" explicitly separates the closest sibling skill, giving a clear backend niche. It falls short of anchor 5 because "application data access" itself brushes against oma-db territory and no other distinct trigger phrases are given to fully disambiguate.

4 / 5

Total

13

/

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

first-fluke/oh-my-agent

Path

.agents/skills/oma-backend/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.