Skip to content

Releases: bug-ops/zeph

v0.11.4

21 Feb 04:20
0d484c0

Choose a tag to compare

What's Changed

  • feat: external skill management with install, remove, verify, and trust CLI by @bug-ops in #684
  • feat: support arbitrary vault keys for skill API authentication by @bug-ops in #685
  • feat(zeph-skills): align SKILL.md parser with agentskills.io spec by @bug-ops in #690
  • feat(zeph-skills): validate skill file references and sanitize untrusted body content by @bug-ops in #691
  • refactor(zeph-skills): rename requires-secrets to x-requires-secrets vendor extension by @bug-ops in #693
  • refactor(zeph-skills): lazy resource loading per progressive disclosure spec by @bug-ops in #692
  • feat(zeph-core): add spinner status indicators for long-running operations by @bug-ops in #701
  • Add crates.io publishing metadata to all workspace crates by @bug-ops in #702
  • release: v0.11.4 by @bug-ops in #703
  • fix: move migrations into zeph-memory for crates.io publishing by @bug-ops in #704

Full Changelog: v0.11.3...v0.11.4

v0.11.3

20 Feb 14:08
51113a9

Choose a tag to compare

What's Changed

  • feat(tools): harden shell command detection against bypass vectors by @bug-ops in #668
  • perf(core): optimize agent hot path across 9 subsystems by @bug-ops in #669
  • feat(mcp): security hardening — command allowlist and env var validation by @bug-ops in #670
  • refactor(llm): clean up provider layer — fix leak, deduplicate, optimize by @bug-ops in #671
  • feat(security): mitigate SSRF and information leakage by @bug-ops in #672
  • refactor(memory): extract generic EmbeddingRegistry by @bug-ops in #673
  • refactor(http): consolidate HTTP client creation with default_client() by @bug-ops in #674
  • refactor(core): decompose agent module into focused submodules by @bug-ops in #675
  • refactor: replace anyhow with typed errors in library crates by @bug-ops in #676
  • refactor: box Image variant and erase ToolExecutor generic from Agent by @bug-ops in #677
  • feat: TUI remote connection to daemon via A2A protocol by @bug-ops in #679
  • test: improve coverage for security-critical and core modules by @bug-ops in #680
  • release: v0.11.3 by @bug-ops in #681

Full Changelog: v0.11.2...v0.11.3

v0.11.2

19 Feb 21:57
c6a4980

Choose a tag to compare

What's Changed

  • docs: restructure documentation around user journey by @bug-ops in #609
  • fix(memory): add wait(true) to Qdrant upsert and delete operations by @bug-ops in #611
  • feat(build): expand full feature set and enable for release builds by @bug-ops in #610
  • feat(config): per-sub-provider base_url/embedding_model in orchestrator by @bug-ops in #612
  • fix(vault): use default vault dir for age key/path fallback by @bug-ops in #613
  • fix(tui): prevent event reader thread termination on mouse events by @bug-ops in #614
  • refactor(channels): replace rustyline with crossterm for CLI input by @bug-ops in #615
  • feat(stt): add base_url and language support for local whisper servers by @bug-ops in #616
  • release: v0.11.2 by @bug-ops in #617

Full Changelog: v0.11.1...v0.11.2

v0.11.1

19 Feb 16:27
84edc6d

Choose a tag to compare

What's Changed

  • fix(cli): restore --vault, --vault-key, --vault-path flags after clap migration by @bug-ops in #589
  • feat(tui): add command palette with read-only agent management commands by @bug-ops in #599
  • feat(cli): add orchestrator provider to init wizard by @bug-ops in #601
  • feat(vault): implement vault CLI subcommands and fix init wizard flow by @bug-ops in #602
  • feat(tui): add @-triggered fuzzy file picker in input by @bug-ops in #603
  • feat(tui): make markdown links clickable via OSC 8 hyperlinks by @bug-ops in #606
  • feat(scheduler): add auto-update check via GitHub Releases API by @bug-ops in #605
  • feat(cli): add persistent input history with rustyline by @bug-ops in #607
  • release: v0.11.1 by @bug-ops in #608

Full Changelog: v0.11.0...v0.11.1

v0.11.0

19 Feb 01:35
c613515

Choose a tag to compare

What's Changed

  • fix(ci): replace oraclelinux base image with debian bookworm-slim by @bug-ops in #532
  • feat(tui): clickable hyperlinks via OSC 8 by @bug-ops in #530
  • feat(tui): add keybinding help popup on ? in normal mode by @bug-ops in #533
  • docs(docker): add Trivy vulnerability scanning section by @bug-ops in #536
  • fix(core): strip schema metadata and fix doom loop detection for native tool calls by @bug-ops in #534
  • feat: add cancel/abort for in-flight LLM requests and tool executions by @bug-ops in #538
  • feat(tui): edit queued messages before LLM processing by @bug-ops in #535
  • chore: consolidate Docker files into docker/ directory by @bug-ops in #539
  • refactor(tools): typed deserialization for tool call params by @bug-ops in #540
  • feat(llm): add structured output with chat_typed and Extractor by @bug-ops in #541
  • feat(memory): extract VectorStore trait abstraction by @bug-ops in #554
  • feat(tui): add comprehensive test automation infrastructure by @bug-ops in #555
  • feat(tui): word-jump and line-jump cursor navigation by @bug-ops in #557
  • feat(core): add pipeline module with Step trait, builder, and combinators by @bug-ops in #556
  • feat(core): structured intent classification via Extractor by @bug-ops in #559
  • feat(memory): document loaders, text splitter, and ingestion pipeline by @bug-ops in #558
  • feat(llm): audio input support with SpeechToText trait and Whisper backend by @bug-ops in #561
  • feat: add interactive configuration wizard and clap CLI by @bug-ops in #560
  • feat(channels): Telegram voice message support and STT bootstrap wiring by @bug-ops in #562
  • feat(channels): Slack audio file upload handling by @bug-ops in #564
  • feat: add installation script and CI release improvements by @bug-ops in #565
  • feat: integrate structured output into core workflows by @bug-ops in #563
  • feat(llm): local Whisper backend via candle for offline STT by @bug-ops in #566
  • feat(core): STT env overrides and audio documentation finalization by @bug-ops in #568
  • fix(tui): resolve UI freezes during streaming and tool execution by @bug-ops in #570
  • feat(llm): vision (image input) support across all providers by @bug-ops in #569
  • release: v0.11.0 by @bug-ops in #571

Full Changelog: v0.10.0...v0.11.0

v0.10.0

18 Feb 02:49
29f804f

Choose a tag to compare

What's Changed

  • feat: architecture improvements, performance optimizations, security hardening (M24) by @bug-ops in #417
  • refactor: remove P generic from Agent, SemanticMemory, CodeRetriever (M24) by @bug-ops in #423
  • feat: skill trust levels and quarantine system (M25) by @bug-ops in #424
  • refactor: extract bootstrap/AppBuilder from main.rs (M24) by @bug-ops in #425
  • fix: resolve tui feature gate compilation errors by @bug-ops in #435
  • feat: smart tool output filtering for token savings (M26) by @bug-ops in #437
  • refactor: remove 8 lightweight feature gates, make always-on (M26) by @bug-ops in #438
  • feat: token savings tracking and metrics (M26) by @bug-ops in #445
  • fix: periodic tick for TUI metrics refresh by @bug-ops in #453
  • feat: output filter architecture improvements (M26.1) by @bug-ops in #452
  • feat: display filter metrics in TUI dashboard by @bug-ops in #454
  • feat: per-tool inline filter stats in CLI chat by @bug-ops in #473
  • TUI: syntax-highlighted diff view for write/edit tool output by @bug-ops in #455
  • fix: propagate filter_stats to TUI metrics in native tool path by @bug-ops in #480
  • feat: compact/detailed tool output toggle in TUI chat by @bug-ops in #479
  • fix: handle compound shell commands in output filter matchers by @bug-ops in #481
  • fix: propagate token metrics in native tool_use path by @bug-ops in #482
  • fix: show inline filter stats based on char savings, not line count by @bug-ops in #483
  • fix: recognize native tool_result format in TUI history loader by @bug-ops in #484
  • feat: parallel execution of native tool_use calls by @bug-ops in #486
  • fix: send tool output and diff atomically in native tool_use path by @bug-ops in #498
  • feat(tui): add config option to hide message source labels by @bug-ops in #505
  • feat(skills): add GitHub CLI skill by @bug-ops in #507
  • fix: display diff for native tool_use file edits in TUI by @bug-ops in #508
  • fix: skip duplicate send_tool_output for shell-streamed tools by @bug-ops in #516
  • fix(tui): clear status spinner after warmup completes by @bug-ops in #517
  • release: v0.10.0 by @bug-ops in #519

Full Changelog: v0.9.9...v0.10.0

v0.9.9

17 Feb 00:15
0b8825f

Choose a tag to compare

What's Changed

  • build(deps): bump actions/upload-pages-artifact from 3 to 4 in the github-actions group by @dependabot[bot] in #361
  • build(deps): bump futures-core from 0.3.31 to 0.3.32 in the rust-minor-patch group by @dependabot[bot] in #362
  • feat: autonomy levels and channel allowlisting by @bug-ops in #384
  • feat: hybrid memory search with FTS5 + vector merge by @bug-ops in #385
  • feat: CompatibleProvider and RouterProvider for LLM flexibility by @bug-ops in #386
  • feat: OpenTelemetry export and CostTracker (M21) by @bug-ops in #387
  • feat: HTTP gateway, daemon supervisor, cron scheduler (M22) by @bug-ops in #388
  • feat: Discord and Slack channel adapters (M23) by @bug-ops in #389
  • release: prepare v0.9.9 by @bug-ops in #390

Full Changelog: v0.9.8...v0.9.9

v0.9.8

16 Feb 03:28
17603cc

Choose a tag to compare

What's Changed

  • fix: add catch-all Allow rule to legacy permission policy by @bug-ops in #334
  • feat: native tool_use for Claude and OpenAI providers by @bug-ops in #335
  • M21: Token optimization -- prompt caching, local summarization, context pruning by @bug-ops in #341
  • fix: replace underline with highlight color for TUI headings by @bug-ops in #342
  • fix: implement execute_tool_call for WebScrapeExecutor by @bug-ops in #343
  • feat: syntax highlighting for TUI code blocks via tree-sitter by @bug-ops in #353
  • OpenAI prompt caching: parse and report cached token usage by @bug-ops in #352
  • refactor: consolidate SQLite migrations into root directory by @bug-ops in #354
  • feat: graceful shutdown on Ctrl-C with MCP cleanup by @bug-ops in #359
  • release: v0.9.8 by @bug-ops in #360

Full Changelog: v0.9.7...v0.9.8

v0.9.7

15 Feb 16:00
aa8bfb8

Choose a tag to compare

What's Changed

  • bump rmcp 0.15, toml 1.0, uuid 1.21 by @bug-ops in #296
  • refactor: generic recv_optional helper by @bug-ops in #301
  • refactor: remove TuiError, use ChannelError directly by @bug-ops in #302
  • refactor: delegate_provider! macro for AnyProvider dispatch by @bug-ops in #303
  • refactor: extract QdrantOps shared helper by @bug-ops in #304
  • clean up deny.toml license warnings by @bug-ops in #312
  • expand secret redaction patterns for Google and GitLab tokens by @bug-ops in #320
  • implement TTL-based eviction for A2A rate limiter by @bug-ops in #321
  • remove sqlx MySQL support to eliminate RSA transitive vulnerability by @bug-ops in #324
  • add SSRF protection and security documentation for MCP client by @bug-ops in #323
  • add canonical path validation to skill loader by @bug-ops in #322
  • detect relative path traversal in shell sandbox by @bug-ops in #325
  • perf: replace tokio full features with explicit list by @bug-ops in #326
  • perf: concurrent skill embedding with buffer_unordered by @bug-ops in #327
  • perf: replace chars().count() / 4 with len() / 3 in token estimation by @bug-ops in #328
  • perf: pre-allocate string in compact_context by @bug-ops in #329
  • perf: parallelize context preparation with try_join! by @bug-ops in #331
  • perf: add criterion benchmarks for hot paths by @bug-ops in #330
  • release: v0.9.7 by @bug-ops in #333

Full Changelog: v0.9.6...v0.9.7

v0.9.6

15 Feb 01:47
c9b1bca

Choose a tag to compare

What's Changed

  • refactor(tools): schemars-based tool registry, invocation hints by @bug-ops in #267
  • refactor(core): decompose agent.rs into module directory by @bug-ops in #276
  • refactor: migrate library crates from anyhow to thiserror by @bug-ops in #277
  • refactor: deduplicate Qdrant helper, decompose config/sqlite/orchestrator by @bug-ops in #278
  • refactor: move CliChannel, add newtype IDs, restrict visibility by @bug-ops in #279
  • refactor: re-export hygiene, remove unused dep by @bug-ops in #281
  • refactor: EmbedFuture dedup, granular tokio, MessageKind enum by @bug-ops in #291
  • refactor: Channel typed errors, agent streaming/persistence extraction by @bug-ops in #292
  • refactor: remove anyhow from channels, group agent fields, gate qdrant by @bug-ops in #294
  • refactor: replace anyhow with typed AgentError in agent module by @bug-ops in #295

Full Changelog: v0.9.5...v0.9.6