Backend development guide for the Phoenix AI observability platform (Strawberry GraphQL, SQLAlchemy async, FastAPI). Use this skill when writing or modifying Python server code in the phoenix repo — adding mutations, types, migrations, or tests. Trigger on any backend task touching src/phoenix/server/, src/phoenix/db/, or tests/unit/server/.
66
82%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Quality
Discovery
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.
This is an excellent skill description that clearly defines its scope, technologies, and trigger conditions. It uses third person voice, provides concrete actions, and includes explicit path-based triggers that make it highly distinguishable. The combination of technology stack, repo-specific paths, and explicit 'Use when' / 'Trigger on' clauses makes this description both complete and precise.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: 'adding mutations, types, migrations, or tests' and names specific technologies (Strawberry GraphQL, SQLAlchemy async, FastAPI). Also references specific directory paths. | 3 / 3 |
Completeness | Clearly answers both 'what' (backend development guide for Phoenix AI observability platform with specific technologies) and 'when' (explicit 'Use this skill when...' and 'Trigger on...' clauses with specific conditions and directory paths). | 3 / 3 |
Trigger Term Quality | Includes natural keywords a developer would use: 'mutations', 'types', 'migrations', 'tests', 'Python server code', 'phoenix repo', and specific directory paths like 'src/phoenix/server/', 'src/phoenix/db/'. These are terms developers would naturally reference when working on backend tasks. | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive with specific repo name (phoenix), specific directory paths, and specific technology stack (Strawberry GraphQL, SQLAlchemy async, FastAPI). Very unlikely to conflict with other skills due to the narrow, well-defined scope. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
64%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a well-structured routing/index skill for Phoenix backend development that efficiently maps tasks to reference files and establishes critical project conventions (security rules, naming, docstrings). Its main weakness is that it delegates nearly all actionable implementation guidance to reference files that aren't provided in the bundle, making it hard to assess the complete skill's effectiveness. The inline content (commands, directory structure, hard rules) is concise and useful, but the skill functions more as a table of contents than a standalone guide.
Suggestions
Include at least one minimal executable example inline (e.g., a skeleton mutation or type definition) so the skill provides immediate actionable guidance even before consulting references.
Add a brief workflow sequence for the most common task (e.g., 'Adding a mutation: 1. Create mixin in mutations/ → 2. Register in __init__.py → 3. Run make graphql → 4. Verify schema → 5. Add test') with validation checkpoints.
Provide the referenced bundle files (graphql-patterns.md, test-patterns.md, database-patterns.md, llm-trace-tests.md) or note their absence — without them the skill is incomplete as a development guide.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The content is lean and well-organized. It assumes Claude's competence with Python, SQLAlchemy, Strawberry, and FastAPI without explaining what they are. The directory listing, command reference, and task routing table are all high-density, low-waste formats. The docstring and naming sections are slightly verbose but earn their place as project-specific conventions Claude wouldn't know. | 3 / 3 |
Actionability | The skill provides concrete commands (make dev-backend, uv run pytest, etc.) and a clear directory map, but delegates all actual implementation guidance to reference files (graphql-patterns.md, test-patterns.md, etc.) that are not provided in the bundle. The skill itself doesn't contain executable code examples for mutations, types, or tests — it's primarily a routing document. | 2 / 3 |
Workflow Clarity | The task routing table clearly directs to the right reference for each task type, and the 'Hard Rules' section highlights a critical security constraint. However, there are no explicit multi-step workflows with validation checkpoints in the body itself — no 'add a mutation' workflow, no 'create a migration' sequence with validation steps. The actual workflows are presumably in the referenced files which aren't available. | 2 / 3 |
Progressive Disclosure | The skill has good structure with a task routing table pointing to four reference files, which is a solid progressive disclosure pattern. However, no bundle files are provided, so we cannot verify these references exist or are well-structured. The references are one-level deep and clearly signaled, but the skill also inlines substantial content about naming conventions and docstrings that could arguably be in a separate coding-standards reference file. | 2 / 3 |
Total | 9 / 12 Passed |
Validation
72%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 8 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
metadata_version | 'metadata.version' is missing | Warning |
metadata_field | 'metadata' should map string keys to string values | Warning |
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 8 / 11 Passed | |
924117e
Table of Contents
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.