NAME
knarr - Langertha LLM Proxy with Langfuse Tracing
VERSION
version 1.001
SYNOPSIS
knarr <command> [options]
knarr start # Start with ./knarr.yaml
knarr start --from-env # Auto-detect config from ENV
knarr start --from-env -p 8080 -p 11434 # ENV config, explicit ports
knarr start -c production.yaml -p 9090 # Custom config and port
knarr init > knarr.yaml # Generate config from environment
knarr init -e .env -e .env.local # Scan .env files
knarr models # List configured models
knarr models --format json # JSON output
knarr check # Validate config file
DESCRIPTION
knarr is the command-line interface for Langertha::Knarr, an LLM proxy that accepts requests in OpenAI, Anthropic, or Ollama format, routes them to any Langertha backend engine, and traces everything via Langfuse.
See Langertha::Knarr for full documentation including Docker usage, config file format, routing behaviour, and environment variable reference.
COMMANDS
- start — Start the proxy server (with config file or
--from-env) - init — Scan environment and .env files for API keys, print generated YAML config
- models — List all configured and auto-discovered models
- check — Validate the config file and report configuration status
GLOBAL OPTIONS
- -c, --config path
-
Config file path. Defaults to
./knarr.yaml. - -v, --verbose
-
Enable verbose logging to stderr. Also enabled by
KNARR_DEBUG=1.
START OPTIONS
- --from-env
-
Build config from environment variables when no config file is found. This is how the Docker image starts.
- -p, --port port
-
Port to listen on. Repeatable (e.g.
-p 8080 -p 11434). Defaults to 8080 and 11434. - -H, --host host
-
Host to bind to. Defaults to
0.0.0.0. - -w, --workers n
-
Number of worker processes. Defaults to
1. - -n, --trace-name name
-
Langfuse trace name. Overrides
KNARR_TRACE_NAMEand the config file.
INIT OPTIONS
- -e, --env-file path
-
Additional .env file to scan. Repeatable.
.envand.env.localin the current directory are scanned automatically. - -l, --listen addr
-
Listen address to include in generated config. Repeatable. Defaults to
127.0.0.1:8080and127.0.0.1:11434. - -o, --output path
-
Write generated config to a file instead of stdout.
MODELS OPTIONS
SUPPORT
Issues
Please report bugs and feature requests on GitHub at https://github.com/Getty/langertha-knarr/issues.
IRC
Join #langertha on irc.perl.org or message Getty directly.
CONTRIBUTING
Contributions are welcome! Please fork the repository and submit a pull request.
AUTHOR
Torsten Raudssus <torsten@raudssus.de> https://raudssus.de/
COPYRIGHT AND LICENSE
This software is copyright (c) 2026 by Torsten Raudssus.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.