kdeps builds git-native AI appliances: your AI agent is YAML in your repository, built once and run where you need it.
- Workflows - deterministic YAML pipelines served as an HTTP API, bot or file processor.
- Agent -
kdepsopens an AI REPL with tools and memory, on a local model or an LLM server you run. - Deploy on your infrastructure - the same YAML ships as a Docker image, Kubernetes manifests, a bootable ISO or one binary.
brew install kdeps/tap/kdeps # macOS or Linux
curl -LsSf https://raw.githubusercontent.com/kdeps/kdeps/main/install.sh | sh # or the install scriptirm https://raw.githubusercontent.com/kdeps/kdeps/main/install.ps1 | iex # Windows PowerShellOther options: installation guide.
Save as workflow.yaml:
apiVersion: kdeps.io/v1
kind: Workflow
metadata:
name: my-agent
version: "1.0.0"
targetActionId: response # the resource whose output is returned
settings:
apiServer:
portNum: 16395
routes:
- path: /api/v1/chat
methods: [POST]
resources:
- actionId: llm
name: Ask the AI
validations:
check:
- get('q') != '' # reject the request before any model call
error:
code: 400
message: "'q' is required"
chat:
model: llama3.2:1b # local model, no API key
prompt: "{{ get('q') }}"
timeout: 60s
- actionId: response
name: Return the answer
requires: [llm] # runs after llm
apiResponse:
success: true
response:
answer: get('llm').message.contentRun it and ask a question:
export KDEPS_API_AUTH_TOKEN=dev-token # local testing only
kdeps run workflow.yaml
curl -s -X POST http://localhost:16395/api/v1/chat \
-H "Authorization: Bearer $KDEPS_API_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-d '{"q": "Explain entropy in one sentence."}'Resources run in dependency order, independent ones in parallel, on the same scheduler as agent mode: the model's wording varies, the path does not. kdeps test . runs a workflow's tests: in-process, with no port bound.
More: workflow docs, examples, agencies (several agents as one system).
kdeps # REPL with built-in tools (files, shell, search, memory)
kdeps ./my-agent/ --model llama3.2 # also load that project's workflows as toolsThe model picks which tools to call. File tools ask before touching a path outside the working directory, except ~/.kdeps and /tmp.
More: agent docs, desktop app.
kdeps bundle build . # Docker image
kdeps export k8s # Kubernetes manifests
kdeps export iso # bootable ISO
kdeps bundle prepackage # standalone binaryPoint agents at an LLM server you host, so prompts and data stay on your network:
# ~/.kdeps/config.yaml
llm:
backend: openai
base_url: http://192.168.1.50:8000/v1 # your OpenAI-compatible server
models:
- llama3.2kdeps llm wizard builds that server. More: deploy, LLM server, security.
Read CONTRIBUTING.md. Licensed under Apache 2.0.