Skip to content
Skills for AI agents are here

Run AI workflows locally. Or deploy them anywhere.

Install kdeps, run `kdeps`, get an AI agent - no API key needed with Ollama or llamafile. Build your workflow in YAML. Deploy as Docker, Kubernetes, or a single binary when you're ready. Proud member of the NVIDIA Inception program.

$ kdeps

kdeps v2.x.x  |  Local agent mode
Model: llama3.2 (Ollama)  |  Type /help for commands

> write a Go function that parses a CSV file

Sure. Here's an idiomatic Go CSV parser...

func ParseCSV(r io.Reader) ([][]string, error) {
    reader := csv.NewReader(r)
    return reader.ReadAll()
}

> /model claude-opus-4-8
Switched to claude-opus-4-8 (Anthropic)

>
$export KDEPS_API_AUTH_TOKEN=dev-token
$kdeps run workflow.yaml
Listening on :16395
 
$curl -s -X POST localhost:16395/summarize \
-H "Authorization: Bearer $KDEPS_API_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com"}'
 
{"success": true, "data": {"response": "Example.com is used for illustrative examples in documentation."}}

getting started

How it works

Three steps from idea to running AI API.

01

Write YAML

Declare resources -- chat, HTTP, Python, SQL, shell. Wire them with requires:. No glue code.

02

Run kdeps

kdeps run workflow.yaml starts the API server. kdeps serve starts the autonomous agent loop.

03

Call the API

POST to your route, get back structured JSON. Export as Docker, Kubernetes, ISO, or a single binary.

platform agnostic

Works with any LLM backend

Switch backends in config. No code changes, no lock-in.

LLM Backends
Ollamalocal
OpenAIcloud
Anthropiccloud
Groqcloud
LM Studiolocal
Deploy Targets
Dockerdocker image
Kuberneteshelm chart
Binarysingle file
ISObootable image
WebServerhttp server

run modes

Three ways to run

Workflows, agents, and agencies — all from the same YAML.

workflow

Deterministic pipelines

Resources run in DAG order defined by requires:. Every request takes the same path. Predictable, auditable, ships to production.

RequestvalidatellmapiResponse
$ kdeps run workflow.yaml
Learn more ->
agent

Local AI agent

Run kdeps for an instant AI REPL - fully offline with llamafile or Ollama, no API key needed. Load workflows as tools: the LLM decides what to call and when.

PromptLLMToolsResponse decidesresultanswer
$ kdeps
Learn more ->
agency

Multi-agent orchestration

One agent calls another via the agent: resource type. Compose agents like functions — each runs independently, results flow back.

CallerSummariserTranslatorResponse agent:result
$ kdeps run agency.yaml
Learn more ->

why kdeps

YAML replaces glue code

No Python scripts, no wiring, no boilerplate.

Traditional approachkdeps
Python script + Flask + OpenAI SDK + retry logicOne workflow.yaml file
Manual dependency wiringrequires: in YAML
Write error handling by handonError: block (continue / retry / fail)
Write Dockerfile + CI pipeline for deploymentkdeps bundle build --tag then docker push
Glue code between servicesResources pass data via output()
Manual polling loop for botsinput.sources: [bot] in workflow config
Chaining agents by handagent: resource — one agent calls another declaratively

registry

Components, workflows, and agencies

Install pre-built packages from the registry. Publish your own.

components

Components

Reusable capability extensions. Install with one command, invoke with component: and typed inputs.

scrapersearchbrowserembeddingttsemail
$ kdeps registry install scraper
workflows

Workflows

Complete DAG pipelines packaged as .kdeps archives. Drop them into an agency or run them standalone.

summarizerclassifiertranslatorinvoice-extractor
$ kdeps run summarizer-1.0.0.kdeps
agencies

Agencies

Multi-agent orchestration bundles packaged as .kagency archives. One entry point, many agents.

cv-matcherresearch-pipelinecontent-agency
$ kdeps run cv-matcher-1.0.0.kagency

Released under the Apache 2.0 License.