CtrlK
BlogDocsLog inGet started
Tessl Logo

align-recipe-pyproject

Aligns a Python recipe's pyproject.toml with the repo's standards enforced by .github/workflows/python-validate-recipe.yml, plus one critical [build-system] presence check. Scope is pyproject.toml only — standalone ruff.toml / .ruff.toml files (also forbidden in recipes) are caught by the CI workflow instead, not by this skill. Runs in two modes: a read-only --dry-run that reports what needs alignment, and an apply mode that rewrites pyproject.toml (and optionally manifest.yaml) using comment-preserving TOML/YAML editors. Use when the user wants to "align the recipe's pyproject.toml", "fix pyproject to match the repo standard", "check what needs changing in a recipe's pyproject", or clean up a recipe before submitting a PR.

72

Quality

88%

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

SKILL.md
Quality
Evals
Security

Quality

Content

77%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

Highly actionable, well-sequenced content with executable commands, real bundle references, and clear validation/feedback loops. Its weakness is token efficiency and progressive disclosure: the Respond section is verbose and the body keeps a lot of status-specific procedural detail inline that could be split out.

Suggestions

Tighten the Respond section — consolidate the per-status Details guidance and the many closing-action cases; the repeated status-combination rules can be expressed more compactly without losing the dry-run-first / no-commit guardrails.

Move the long status-specific response-format rules (and the build-system template snippets) into a reference file or the script's --help, leaving SKILL.md as a leaner overview that points one level deep.

The build-system TOML template already appears once in the body; avoid restating packaging-internal rationale in the prose and let the script's notes carry those details.

DimensionReasoningScore

Conciseness

The body assumes Claude's intelligence (no 'what is a pyproject' padding) and stays task-relevant, but the Respond section is heavy — exhaustive per-status guidance, repeated closing-action bullets for every status combination, and verbose template handling that could be tightened, matching the 'mostly efficient but includes some unnecessary explanation or could be tightened' anchor rather than the lean-3 anchor.

2 / 3

Actionability

Provides fully executable copy-paste commands — exact 'uv run --no-project --with tomlkit --with ruamel.yaml --with packaging python .agents/skills/.../align_pyproject.py --recipe-dir ... --dry-run' invocations, concrete flags, a real referenced script (verified present in scripts/), and copy-paste-ready [build-system] TOML templates, hitting the 'fully executable code/commands; copy-paste ready' anchor.

3 / 3

Workflow Clarity

Clear sequenced workflow with explicit validation checkpoints: always start with --dry-run, filter to non-ok statuses, use exit codes (0/1) as the success signal, and feedback loops for error recovery (needs_input → ask → re-run, report_only → human resolves, mixed-status handling). For the file-rewriting/batch context, the dry-run-before-apply checkpoint satisfies the validation requirement.

3 / 3

Progressive Disclosure

The one bundle reference — scripts/align_pyproject.py — is real and one level deep (verified it exists), but the SKILL.md body itself is a ~233-line monolithic wall of procedural detail where much of the status-handling/response-format guidance could live in the script or a separate reference rather than inline, matching the 'content that should be separate is inline' anchor.

2 / 3

Total

10

/

12

Passed

Description

100%

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 that names concrete actions, lists natural trigger phrases, explicitly covers both what and when, and carves out a distinctive niche with explicit scope boundaries. Third-person voice is used throughout, so no voice penalty applies.

Suggestions

The description is fairly long and references CI-internal details (e.g. the workflow filename and the lockfile/interpreter-mismatch aside); trimming these would keep it leaner without losing trigger clarity.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — 'Aligns a Python recipe's pyproject.toml with the repo's standards', 'read-only --dry-run that reports what needs alignment', 'apply mode that rewrites pyproject.toml (and optionally manifest.yaml) using comment-preserving TOML/YAML editors', plus the build-system check — matching the 'lists multiple specific concrete actions' anchor.

3 / 3

Completeness

Explicitly answers both what it does (aligns pyproject.toml to repo standards, two modes) and when to use it via the 'Use when the user wants to...' clause with explicit triggers, satisfying the 'clearly answers both what AND when' anchor.

3 / 3

Trigger Term Quality

Quotes natural user phrases verbatim — 'align the recipe's pyproject.toml', 'fix pyproject to match the repo standard', 'check what needs changing in a recipe's pyproject', and 'clean up a recipe before submitting a PR' — covering the variations a user would actually say.

3 / 3

Distinctiveness Conflict Risk

Has a clear, narrowly scoped niche (recipe pyproject.toml alignment), distinct triggers, and an explicit scope boundary noting standalone ruff.toml/.ruff.toml files are handled by CI 'not by this skill', making conflict with other skills unlikely.

3 / 3

Total

12

/

12

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.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
google/adk-samples
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.