kindlm
v0.2.0
Published
YAML validation, completions, and hover docs for KindLM config files
Readme
KindLM — VS Code Extension
First-class editor support for KindLM config files (kindlm.yaml / kindlm.yml).
Features
YAML Validation
Real-time diagnostics as you type:
- Flags missing required fields (
kindlm,project,suite,providers,models,prompts,tests) - Validates
provideris a known value (openai,anthropic,gemini,mistral,cohere,ollama,http) - Validates
temperatureis in range 0–2 - Validates
minScoreandmaxScoreare in range 0.0–1.0 - Catches unknown keys with helpful messages
Autocomplete
Context-aware completions inside kindlm.yaml:
- Top-level fields:
kindlm,project,suite,providers,models,prompts,tests,gates,defaults expectsub-keys:output,toolCalls,judge,guardrails,baseline,latency,costexpect.toolCalls[]fields:tool,argsMatch,shouldNotCall,argsSchema,orderexpect.judge[]fields:criteria,minScore,model,rubricexpect.guardrailsfields:pii,keywords,deny,allow- Model names:
gpt-4o,claude-sonnet-4-5-20250929,gemini-2.0-flash, and more - Provider names:
openai,anthropic,gemini,mistral,cohere,ollama,http
Hover Documentation
Hover over any KindLM field to get inline documentation with expected values and examples.
JSON Schema
Full JSON Schema for kindlm.yaml is bundled. If you have the YAML extension installed, you get schema-based completions and validation automatically.
Snippets
Starter snippets to scaffold new config files and test blocks:
kindlm-init— full config file skeleton (kindlm v1)kindlm-test— single test casekindlm-model— model configuration entrykindlm-prompt— named prompt templatekindlm-expect-tool—toolCallsassertionkindlm-expect-judge—judgeassertion with minScorekindlm-expect-pii— PII guardrailkindlm-expect-keywords— keyword guardrailkindlm-expect-output— output content assertionkindlm-expect-drift— baseline drift assertion
Quick Start
- Install the extension from the VS Code Marketplace
- Open a project with a
kindlm.yamlfile (or create one withkindlm init) - The extension activates automatically when a
kindlm.yamlorkindlm.ymlis present
Example Config
kindlm: 1
project: my-agent
suite:
name: refund-agent
description: Behavioral tests for the refund agent
providers:
openai:
apiKeyEnv: OPENAI_API_KEY
models:
- id: gpt-4o
provider: openai
model: gpt-4o
params:
temperature: 0
maxTokens: 1024
prompts:
refund:
system: You are a helpful refund agent. Be empathetic and professional.
user: "{{message}}"
tests:
- name: happy-path-refund
prompt: refund
vars:
message: "I want to return order #12345"
expect:
toolCalls:
- tool: lookup_order
argsMatch:
order_id: "12345"
guardrails:
pii:
enabled: true
judge:
- criteria: Response is empathetic and professional
minScore: 0.8
gates:
passRateMin: 0.95Requirements
- VS Code 1.85.0 or newer
- A
kindlm.yamlfile in your workspace (created bykindlm init)
For YAML schema-based completions, install the YAML extension by Red Hat.
Links
License
MIT
