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 [path] 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
Kubernetesmanifests
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.

scrapersearchbrowserembeddingbotreply
$ 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.