CtrlK
BlogDocsLog inGet started
Tessl Logo

llm-app-patterns

Production-ready patterns for building LLM applications, inspired by [Dify](https://github.com/langgenius/dify) and industry best practices.

32

Quality

28%

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 ./skills/llm-app-patterns/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

32%Scale 1-5

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

This skill is an extensive reference document covering LLM application patterns, but it reads more like a textbook chapter than an actionable skill for Claude. It explains concepts Claude already knows (RAG, ReAct, function calling), provides illustrative but non-executable code, lacks validation/verification steps for complex workflows, and packs far too much content into a single file. The breadth is impressive but the depth and actionability suffer as a result.

Suggestions

Split into separate files (e.g., RAG.md, AGENTS.md, LLMOPS.md, PRODUCTION.md) with SKILL.md serving as a concise overview and decision matrix pointing to each sub-file.

Remove explanations of well-known concepts (what RAG is, what ReAct is, what metrics are) and focus on project-specific conventions, preferred libraries, and concrete configuration values.

Add validation checkpoints to workflows, e.g., 'After embedding documents, verify retrieval quality by running test queries' or 'After setting up caching, confirm cache hits with a test prompt at temperature=0'.

Make code examples more executable by including concrete imports, specifying actual library APIs (e.g., using real LangChain or LlamaIndex calls), or clearly marking them as architectural templates that need adaptation.

DimensionReasoningScore

Conciseness

Extensively verbose at ~500+ lines covering RAG, agents, prompt engineering, LLMOps, and production patterns. Much of this is general knowledge Claude already possesses (what RAG is, how ReAct works, what metrics to track, basic caching/retry patterns). The dictionary-style data structures listing vector DB options and embedding models are reference material that adds bulk without teaching Claude anything new.

2 / 5

Actionability

Code examples are present throughout but are largely illustrative pseudocode-style patterns rather than executable code. Functions reference undefined objects (llm, vector_db, bm25_search, embed) without imports or concrete implementations. The code shows architectural patterns but couldn't be copy-pasted and run. Some examples like the RateLimiter and caching are closer to executable but still depend on undefined dependencies.

3 / 5

Workflow Clarity

While the skill covers complex multi-step processes (RAG pipelines, agent loops, prompt chains), there are no validation checkpoints, error recovery steps, or verification procedures. The RAG pipeline diagram shows a sequence but lacks any 'validate your embeddings' or 'verify retrieval quality' steps. Agent architectures show iteration loops but no guidance on what to do when things fail beyond a simple max_iterations check. For operations this complex, the absence of validation is a significant gap.

2 / 5

Progressive Disclosure

This is a monolithic ~500+ line file covering at least 5 major topics (RAG, Agents, Prompt IDE, LLMOps, Production Patterns), each of which could be its own file. There are no references to bundle files for detailed content. The external resources section links to third-party docs but doesn't organize the skill's own content across files. The content would benefit enormously from splitting into separate files with a concise overview in SKILL.md.

2 / 5

Total

9

/

20

Passed

Description

25%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.

This description is too vague and abstract to serve as an effective skill selector. It names a broad domain ('LLM applications') without specifying concrete actions, lacks any 'Use when...' trigger guidance, and includes a marketing-style reference to Dify that doesn't help Claude determine when to select this skill. The description reads more like a tagline than a functional skill description.

Suggestions

Add concrete actions the skill performs, e.g., 'Implements RAG pipelines, prompt chaining, agent workflows, and structured output parsing for LLM applications'.

Add an explicit 'Use when...' clause with natural trigger terms, e.g., 'Use when the user asks about building AI apps, LLM pipelines, chatbots, agent architectures, or mentions Dify-style workflows'.

Replace the marketing-style 'inspired by' phrasing with specific capabilities or patterns covered, such as 'conversation memory management, tool use orchestration, retrieval-augmented generation'.

DimensionReasoningScore

Specificity

Names the domain ('LLM applications') and mentions 'production-ready patterns' but provides no concrete actions like 'build pipelines', 'create agents', or 'implement RAG'. The phrase 'patterns for building' is generic and doesn't describe what the skill actually does.

2 / 5

Completeness

Has a vague 'what' (production-ready patterns for LLM applications) but no 'when' clause at all. There is no explicit trigger guidance or 'Use when...' statement, which per the rubric should cap completeness at 3, and the 'what' is too vague to reach even that level.

2 / 5

Trigger Term Quality

Contains 'LLM applications' and 'Dify' as keywords, but misses natural user phrases like 'AI app', 'chatbot', 'agent', 'prompt chaining', 'workflow', 'RAG', or other terms users would naturally say when needing this skill.

2 / 5

Distinctiveness Conflict Risk

'LLM applications' is extremely broad and could overlap with any skill related to AI, coding, prompt engineering, or application development. The Dify reference adds slight specificity but not enough to clearly distinguish this from other AI/coding skills.

2 / 5

Total

8

/

20

Passed

Validation

81%

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

Validation9 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

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

Warning

frontmatter_unknown_keys

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

Warning

Total

9

/

11

Passed

Repository
administrakt0r/AI-Agents-Safe-Coding-Skills
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.