CtrlK
BlogDocsLog inGet started
Tessl Logo

configuration-registrations

Configure local user signup, domain/MX rules, terms, confirmation, dropbox storage, and messaging. Use for registration versus account activation; OAuth client registration is separate.

63

Quality

79%

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 ./.codex/skills/configuration-registrations/SKILL.md
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.

The body is a dense, expert-level configuration reference: a complete example block, an exhaustive supported-line inventory, parser quirks, honest testing-scope notes, and a concrete local-validation recipe. It is held back from top marks on every dimension by minor issues: slight repetition in Workflow Notes, fixture/test names without runnable commands, and no explicit fix-and-retry loop.

Suggestions

Consolidate the repeated expired/lost-registration statements in Workflow Notes into one place to trim tokens (conciseness).

Add the exact commands to run the cited fixtures/tests (e.g. the go test invocations for TestCaddyPasswordArgon2E2E/public-registration and the caddy adapt command) so validation is copy-paste executable (actionability, workflow_clarity).

If the file grows further, move the domain-rule matching semantics and lifecycle edge cases into a reference file linked from a short "Details" section (progressive_disclosure).

DimensionReasoningScore

Conciseness

The body is dense with non-obvious, repo-specific facts ("repeated admin-email lines overwrite rather than append", "Pending registrations are held in the registry's in-memory cache. Reload or restart discards them") with no padding and no explanation of concepts Claude already knows. Not 5 because there is minor redundancy — the expired-registration point appears twice ("the user must register again" and "An expired or lost pending registration must be started again") and some boundary qualifications in Workflow Notes could be tightened.

4 / 5

Actionability

It supplies a complete copy-paste Caddyfile block, an exhaustive supported-lines list, concrete fixture paths, and a runnable local-validation recipe ("point email provider at a file messaging provider whose root_dir is a disposable path under this checkout's tmp/", "Inspect the confirmation link and passcode in its .eml output"). Not 5 because the cited tests ("TestCaddyPasswordArgon2E2E/public-registration") are named without the commands to run them, and approval/transfer guidance is deliberately negative rather than executable.

4 / 5

Workflow Clarity

The user journey is clearly sequenced (reach form → submit → confirmation email → handler consumes pending registration → dropbox commit → admin notification) and the validation loop has checkpoints ("Inspect the confirmation link and passcode in its .eml output"; the fixture "verifies configuration shape and defaults"). Not 5 because there is no explicit fix-and-retry feedback loop for a failed adaptation or validation run.

4 / 5

Progressive Disclosure

Well-organized sections (Purpose, Shape, Required and Defaulted Fields, Supported Lines, Workflow Notes, Fixtures) with clearly signaled one-level cross-skill references ("Coordinate the email provider value with configuration-messaging", "Coordinate identity store names with configuration-identity-stores") and real fixture paths. No bundle files exist, so this is a single-file skill; not 5 because at ~150 lines the domain-rule matching semantics and lifecycle edge cases could eventually move to a reference file if the skill grows.

4 / 5

Total

16

/

20

Passed

Description

75%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 names a precise niche, states capabilities concretely, and draws explicit boundaries against OAuth client registration and account activation. It sits solidly at the "good with minor gaps" level on every dimension: the trigger phrasing is disambiguation-shaped rather than natural, and coverage uses one verb over a list instead of distinct actions.

Suggestions

Rewrite the trigger clause as natural user phrasing, e.g. "Use when the user wants to configure user signup or new-user registration in a Caddyfile" — this would lift both trigger_term_quality and completeness.

Give each capability its own concrete action verb (e.g. "Set up local user signup, restrict registrable email domains, require terms acceptance, store pending accounts in a dropbox") instead of one "Configure" governing a noun list.

Scope the generic token "messaging" (e.g. "registration notification via email or file messaging providers") to reduce overlap with the configuration-messaging skill.

DimensionReasoningScore

Specificity

Quotes six concrete capability areas — "local user signup", "domain/MX rules", "terms", "confirmation", "dropbox storage", "messaging" — matching the "lists several specific actions; minor gaps in coverage" anchor. Not 5 because a single verb ("Configure") governs the whole list rather than multiple distinct concrete actions, and each capability is named but not elaborated.

4 / 5

Completeness

Both parts are explicitly present: a clear "what" ("Configure local user signup, domain/MX rules, terms, confirmation, dropbox storage, and messaging") and an explicit "Use for..." clause. Not 5 because the "when" is phrased as a contrast ("registration versus account activation") instead of concrete trigger scenarios; not 3 because the when-clause is explicit, not merely implied.

4 / 5

Trigger Term Quality

"signup", "registration", "account activation", "confirmation", and "domain/MX" are terms a user would plausibly say, giving good coverage. Not 5 because common natural variations ("new users", "user onboarding", "account creation") are missing, and the trigger clause "Use for registration versus account activation" is disambiguation-shaped rather than a phrase a user would naturally say.

4 / 5

Distinctiveness Conflict Risk

The description explicitly fences off the main conflicts — "OAuth client registration is separate" and "registration versus account activation" — giving it a mostly-distinct niche. Not 5 because generic tokens like "messaging" and "terms" still overlap with sibling configuration skills, leaving minor overlap risk.

4 / 5

Total

16

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

referenced_paths_exist

Referenced path issues: 3 missing, 3 deeper-than-1-level

Warning

Total

15

/

16

Passed

Repository
greenpau/caddy-security
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.