Releases: aviadshiber/langfuse-cli
Releases · aviadshiber/langfuse-cli
v0.1.4
What's Changed
New features
--from/--todatetime filters for observations —lf observations list --from 2026-01-01 --to 2026-01-31now works, matching traces/scores/sessions
Documentation
- Observations command documented in README with flag table and examples
- Troubleshooting section — timeouts, datetime format, auth errors, cursor pagination
- Shell completions — bash/zsh/fish setup instructions via Typer built-in mechanism
- Short flag
-sfor--session-idin traces documented in README
Stats
- 323 tests passing, 99.42% coverage
v0.1.3
What's Changed
Code cleanup & refactoring
- Command boilerplate extraction —
command_context()context manager replaces 7 copies of_get_client()across all 16 commands - Error messages with context — Errors now include operation name (e.g. "listing traces: API error 500")
- SDK lazy init hardening — ImportError and generic Exception caught with helpful messages
- Dead code removed — Deleted unused
render_side_by_side()from diff formatter
Developer experience
- Flag consistency — Added
-tfor--trace-idin scores,-sfor--session-idin traces - CI format check — Added
ruff format --checkto test workflow
Stats
- 23 files changed, net -255 lines
- 321 tests passing, 99.41% coverage
v0.1.2
What's New
New Command: lf observations list
Browse observations (generations, spans, events) with filters:
--trace-id/-t— filter by trace ID--type— filter by type (GENERATION, SPAN, EVENT)--name/-n— filter by observation name--limit/-l— max results (default 50)
Test Coverage
- Client test coverage: 86% → 100%
- Total coverage: 96% → 99%
- 29 new tests added (320 total)
Install / Upgrade
brew upgrade aviadshiber/tap/langfuse-cli
# or
pip install --upgrade langfuse-cliv0.1.1
What's Changed
Fixes
- Homebrew formula: Fixed dependency resolution —
brew install aviadshiber/tap/langfuse-clinow installs correctly with all dependencies - CI: Fixed ANSI escape codes in test assertions, mypy strict mode errors, and test compatibility (pytest-mock → unittest.mock)
- User-Agent: Now uses dynamic version string instead of hardcoded value
Improvements
- Docs: Added PyPI/CI badges, Homebrew install instructions, and real repository URLs to README
- CI Actions: Bumped actions/checkout v6, actions/setup-python v6, astral-sh/setup-uv v7, actions/stale v10
- Build: Bumped hatchling to 1.28
Full Changelog: v0.1.0...v0.1.1
v0.1.0
langfuse-cli v0.1.0
First release of lf — an observability-first CLI for the Langfuse LLM platform, following gh-ux patterns.
Features
- 6 command groups:
traces,prompts,scores,datasets,experiments,sessions - Smart output: rich tables in terminal, TSV when piped,
--json/--jq/--fieldsfor scripting - Config profiles:
~/.config/langfuse/config.tomlwith system keyring secret storage - Prompt tools:
compile(variable interpolation),diff(version comparison) - Trace visualization:
treecommand for hierarchical trace view - Score analytics:
summarycommand with aggregated statistics
Installation
# With uv (recommended)
uv tool install langfuse-cli
# With pip
pip install langfuse-cli
# With Homebrew
brew install aviadshiber/tap/langfuse-cliQuick Start
export LANGFUSE_PUBLIC_KEY="pk-lf-..."
export LANGFUSE_SECRET_KEY="sk-lf-..."
lf traces list --limit 5 --from 2025-01-01
lf prompts list
lf --json scores summaryFull Changelog: https://github.com/aviadshiber/langfuse-cli/commits/v0.1.0