taste-langchain

Detects deprecated LangChain patterns in chain, agent, tool, and prompt files via grep rules.

1|1|Updated Jun 21, 2026
One-click install
npx skills add https://github.com/Navdeepgambhir9023/nav --skill taste-langchain-navdeepgambhir9023
Or copy as Structured Prompt for Agentâ–Ľ
Please help me install this Agent Skill.
Skill: taste-langchain
Source: https://github.com/Navdeepgambhir9023/nav/tree/main/skills/taste/langchain
Command: npx skills add https://github.com/Navdeepgambhir9023/nav --skill taste-langchain-navdeepgambhir9023

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? LangChain codebases accumulate deprecated patterns—legacy *-Chain classes, unbounded agents, sync HTTP in async chains, inline prompts, and hardcoded secrets—that slip through review and cause production issues. This skill catches those forbidden patterns at write time, before the file lands on disk. ## Core Features & Use Cases - Path-scoped activation: Loads only when edits touch **/chains/**, **/agents/**, **/tools/**, or **/prompts/**, staying silent otherwise. - Six grep-based boundary checks: Soft-warns on legacy LLMChain-style classes, int-typed temperature=0, AgentExecutor without max_iterations, sync requests calls in tools, inline ChatPromptTemplate.from_template strings, and secrets baked into chain configs. - Advisory, non-blocking: Returns OK or a soft warning with the matched rule and a concrete fix; it never blocks the write. - Use Case: While editing agents/support_agent.py, you add AgentExecutor.from_agent_and_tools(...) without an iteration cap—the skill immediately warns and suggests max_iterations=N plus a termination condition. ## Quick Start Ask the agent to review your LangChain chain or agent file for deprecated patterns and boundary violations before committing it.

Frequently Asked Questions about taste-langchain

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I catch deprecated LangChain patterns in my code?â–Ľ

Use grep-based boundary checks that flag legacy classes like LLMChain, ConversationChain, and RetrievalQA as they are written. Each match returns a soft warning with a concrete fix, such as rewriting to the LCEL pipe syntax `prompt | model | parser`.

What replaces LLMChain in modern LangChain?â–Ľ

LCEL (LangChain Expression Language) replaces pre-0.1 class-based chains with the pipe operator: `chain = prompt | model | parser`. LCEL provides streaming, async, and batching support that legacy chain classes lack.

Why is temperature=0 a problem in LangChain?â–Ľ

The integer literal `temperature=0` is a typing footgun: providers silently coerce it, but typed schemas like pydantic Settings or `Literal[0.0]` require the float form. Use `temperature=0.0` to satisfy typed configurations.

Does this LangChain checker block code from being written?â–Ľ

No, the hook is advisory only. It returns either OK or a soft warning naming the matched rule and suggested fix, but never blocks the write. Bypasses can be declared explicitly in the goal contract when a legacy pattern is genuinely required.

What LangChain issues are not covered by boundary checks?â–Ľ

The checks exclude general Python hygiene, LLM provider choice, vector store selection, LangServe/LangGraph deployment topology, and HITL checkpoint wiring. Those concerns live in the companion architecture pack or other taste skills.