vs_cli/lib.rs
1//! `vs` — the vibesurfer CLI.
2//!
3//! The binary at `src/main.rs` is the CLI front-end; this library
4//! holds the reusable pieces (client, active-session, spawn, command
5//! dispatch) so integration tests can construct flows without forking
6//! the binary.
7
8#![cfg_attr(
9 not(any(target_os = "macos", target_os = "windows")),
10 forbid(unsafe_code)
11)]
12#![cfg_attr(any(target_os = "macos", target_os = "windows"), allow(unsafe_code))]
13
14pub mod active_session;
15pub mod client;
16pub mod commands;
17pub mod mcp;
18pub mod paths;
19pub mod serve;
20pub mod skill_install;
21pub mod spawn;
22
23pub use client::{Client, Response};
24
25/// Returns the crate version (matches the workspace version).
26#[must_use]
27pub fn version() -> &'static str {
28 env!("CARGO_PKG_VERSION")
29}