Skip to content
This repository was archived by the owner on Mar 30, 2026. It is now read-only.

Releases: supernovae-st/supernovae-cli

v0.17.0

11 Mar 11:11

Choose a tag to compare

v0.15.5

09 Mar 21:55

Choose a tag to compare

Full Changelog: v0.15.4...v0.15.5

v0.15.4 - crates.io publish fix

09 Mar 20:54

Choose a tag to compare

Fix

This is a patch release to fix the crates.io publishing that failed for v0.15.3.

All keyring UX improvements from v0.15.3 are now properly available via cargo install spn-cli.

Changes

  • Bump spn-client to 0.3.3 with RefreshSecret/WatcherStatus IPC types
  • Bump spn-cli to 0.15.4

Upgrade

# Cargo
cargo install spn-cli --force

# Homebrew
brew upgrade spn

# Docker
docker pull ghcr.io/supernovae-st/spn:0.15.4

See v0.15.3 release notes for the full list of new features.

Full Changelog: v0.15.3...v0.15.4

v0.15.3 - Keyring UX Revolution

09 Mar 20:43

Choose a tag to compare

spn v0.15.3 - Keyring UX Revolution

TL;DR

Zero-blocking daemon startup - No more waiting for keychain popups before you can use spn.

# Before: daemon blocked until all keychain popups acknowledged (13+ popups!)
spn daemon start  # ... wait ... wait ... wait ...

# After: instant availability with lazy loading
spn daemon start --skip-preload --lazy  # Ready in <100ms

What's New

Daemon Startup Modes

Flag Behavior
--skip-preload Skip loading secrets at startup (socket available immediately)
--lazy Load secrets on-demand (no keychain access until needed)
Both flags Zero-blocking startup, secrets loaded on first request

Progress Output

Now you can see exactly what's happening during preload:

[1/13] Loaded: anthropic
[2/13] Loaded: openai
[3/13] Not found: mistral
...
Preload complete: 3 loaded, 10 not found, 0 errors

Auto-Refresh After spn provider set

When you store a new API key, the daemon cache is automatically updated:

spn provider set anthropic  # Daemon cache refreshed automatically
# No need to restart daemon or manually invalidate cache

New IPC: RefreshSecret

For tool integrations, the new RefreshSecret message allows external tools to trigger cache refresh:

let mut client = SpnClient::connect().await?;
let refreshed = client.refresh_secret("anthropic").await?;

Breaking Changes

None - all changes are additive and backward compatible.

Upgrade Path

# Option 1: Homebrew
brew upgrade spn

# Option 2: Cargo
cargo install spn-cli --force

# Option 3: Docker
docker pull ghcr.io/supernovae-st/spn:0.15.3

Full Changelog

Added

  • --skip-preload flag for immediate daemon availability
  • --lazy flag for on-demand secret loading
  • Progress output during secret preload
  • RefreshSecret IPC message for cache invalidation

Changed

  • GetSecret handler uses get_or_load() for lazy loading
  • Auto-refresh daemon cache after spn provider set

Fixed

  • Use &Path instead of &PathBuf in validate_workflow_path

Full Changelog: 0.15.2...0.15.3

Full Changelog: v0.15.2...v0.15.3

v0.15.2

08 Mar 18:05
b122862

Choose a tag to compare

Fixed

  • docker: Bundle CA certificates with webpki-roots

What's Changed

  • chore: release by @github-actions[bot] in #13

Full Changelog: v0.15.1...v0.15.2

v0.15.1

08 Mar 17:04
00516c0

Choose a tag to compare

Added

  • cli: Add lazy install prompt to spn nv command
  • cli: Add lazy install prompt to spn nk command
  • cli: Add ecosystem status to setup wizard
  • cli: Add ecosystem tool detection module
  • cli: Add --from-openapi flag to mcp wrap command
  • mcp: Add wrap wizard for REST-to-MCP tool generation
  • cli: Add unified backup system
  • spn-mcp: Add OpenAPI 3.0 parser module

Changed

  • Apply cargo fmt

Documentation

  • Fix env vars, versions, and add Code of Conduct
  • Complete v0.15.0 release preparation

Fixed

  • deps: Replace atty with std::io::IsTerminal
  • security: Harden backup system against multiple vulnerabilities
  • test: Avoid clippy approx_constant warning

Security

  • mcp: Remove unnecessary borrow in hint_line call

Security

  • mcp: Add payload size and parameter type validation

What's Changed

  • chore: release by @github-actions[bot] in #12

Full Changelog: v0.15.0...v0.15.1

v0.15.0

08 Mar 13:36

Choose a tag to compare

╔═══════════════════════════════════════════════════════════════════════════════╗
║ 🚀 SPN v0.15.0 — THE AGENTIC AI TOOLKIT ║
╠═══════════════════════════════════════════════════════════════════════════════╣
║ ║
║ 🤖 Agents │ 📋 Jobs │ 🧠 Memory │ 🔮 Autonomy │ 🛠️ spn-mcp ║
║ ║
╚═══════════════════════════════════════════════════════════════════════════════╝

✨ Highlights

Feature Status Impact
🤖 Agent Delegation ✅ New Multi-agent task delegation system
📋 Job Scheduler ✅ New Background workflow execution
🧠 Cross-Session Memory ✅ New Persistent context across sessions
🔮 Autonomy Orchestration ✅ New Self-directed task execution
🛠️ spn-mcp Crate ✅ New Dynamic REST-to-MCP wrapper
🖥️ Windows CI ✅ New Full Windows support in CI

Added

  • daemon: Wire JobScheduler to IPC handler and enhance Nika setup
  • ux: Add TransformingSpinner to model commands
  • model: Add pull_with_progress method to ModelManager
  • protocol: Add ModelProgress type for streaming updates
  • spn-mcp: Add rate limiting and MCP Resources support
  • spn-mcp: Add test infrastructure and security hardening
  • daemon: Add autonomy orchestration system (Phase 13)
  • daemon: Add proactive suggestion system (Phase 12)
  • daemon: Add agent delegation system (Phase 11)
  • daemon: Add reasoning trace capture system (Phase 10)
  • daemon: Add cross-session memory system (Phase 9)
  • suggest: Enhance smart wizard with interactive mode (Phase 8)
  • jobs: Add jobs CLI commands (Phase 7)
  • daemon: Add job scheduler for background workflows
  • daemon: Add MCP server over stdio
  • suggest: Add context-aware suggestion wizard
  • tui: Add spn explore interactive TUI
  • spn: Integrate spn-mcp into main CLI
  • spn-mcp: Add dynamic REST-to-MCP wrapper crate
  • mcp: Add spn mcp logs command for viewing server logs
  • completion: Add install/uninstall/status subcommands
  • model: Add spn model run command for LLM inference
  • status: Add unified status dashboard with ASCII rendering

Changed

  • ci: Add Windows to test matrix
  • release: Add spn-mcp to release-plz.toml
  • docs: Update all version references to v0.15.0

Documentation

  • plan: Complete master plan v0.15-v0.18
  • adr: Add ecosystem architecture ADRs (001-003)
  • plan: Add spn v0.15-v0.18 evolution roadmap

Fixed

  • setup: Correct Windsurf settings.json path detection
  • daemon: Add missing autonomy type exports
  • spn-mcp: Critical error handling and security hardening
  • spn: Remove phantom explore/tui module references

🏗️ Architecture

┌─────────────────────────────────────────────────────────────────────────────────┐
│  6-CRATE WORKSPACE (v0.15.0)                                                    │
├─────────────────────────────────────────────────────────────────────────────────┤
│                                                                                 │
│  spn-core (0.1.1)     Core types, providers, validation                        │
│  spn-keyring (0.1.3)  OS keychain integration                                  │
│  spn-ollama (0.1.4)   Ollama model backend                                     │
│  spn-client (0.3.0)   Daemon SDK for external tools                            │
│  spn-mcp (0.1.0)      Dynamic REST-to-MCP wrapper ← NEW                        │
│  spn-cli (0.15.0)     Main CLI binary                                          │
│                                                                                 │
└─────────────────────────────────────────────────────────────────────────────────┘

What's Changed

  • chore: release by @github-actions[bot] in #11

Full Changelog: v0.14.2...v0.15.0

v0.14.2

07 Mar 16:02
9493e37

Choose a tag to compare

Added

  • ux: Add human-readable formatters and enhanced help

Changed

  • Fix formatting

What's Changed

  • chore(spn-cli): release v0.14.2 by @github-actions[bot] in #9

Full Changelog: v0.14.1...v0.14.2

v0.14.1

07 Mar 14:09
ef57e2d

Choose a tag to compare

What's Changed

  • chore(spn-cli): release v0.14.1 by @github-actions[bot] in #8

Full Changelog: v0.14.0...v0.14.1

v0.14.0

07 Mar 12:56

Choose a tag to compare

Added

  • ux: Migrate to semantic design system
  • cli: V0.14.0 "The Delight Release" - UX improvements
  • cli: Complete Phase 3-5 improvements
  • cli: Complete Phase 2 UX improvements
  • ux: Add comprehensive UX module and improve CLI experience

Changed

  • Cargo fmt
  • Apply cargo fmt

Fixed

  • lint: Resolve clippy warnings for io_other_error and uninlined_format_args
  • ux: Complete migration of remaining 4 files
  • cli: Resolve 3 bugs found in e2e testing
  • lint: Resolve all clippy warnings in integration tests

Added

  • 🦙 spn-ollama: Added chat_stream() method to ModelBackend trait for streaming chat completions
  • 🦙 spn-ollama: Added BoxedTokenCallback type for trait object compatibility
  • 🦙 spn-ollama: Added DynModelBackend::chat_stream() for runtime polymorphism with streaming
  • ⏱️ spn-ollama: Added ClientConfig with configurable timeouts (connect, request, model)
  • 🔄 spn-ollama: Added retry logic infrastructure (with_retry(), is_retryable())

Fixed

  • 🔧 CLI: Replaced all exit(1) calls with proper SpnError::CommandFailed in provider.rs (11 calls)
  • 🔧 CLI: Replaced all exit(1) calls with proper SpnError::CommandFailed in mcp.rs (4 calls)
  • 🔧 CLI: Replaced all exit(1) calls with proper SpnError::CommandFailed in skill.rs (3 calls)
  • 🔧 CLI: Replaced all exit(1) calls with proper SpnError::CommandFailed in model.rs (previous commit)
  • 🔧 CLI: Fixed if_same_then_else clippy warning in publish.rs

Technical

  • Error handling now returns Result<(), SpnError> consistently across all CLI commands
  • Improved error messages with proper context and suggestions

What's Changed

  • chore: release by @github-actions[bot] in #5

New Contributors

  • @github-actions[bot] made their first contribution in #5

Full Changelog: v0.1.3...v0.14.0