pub mod git_signing;
pub mod mcp;
pub mod nb;
pub mod paths;
#[derive(Clone)]
pub struct Config {
pub notebook: Option<String>,
pub commit_signing_disabled: bool,
pub create_notebook: bool,
pub allow_top_level_notes: bool,
pub show_paths: bool,
}
impl Default for Config {
fn default() -> Self {
Self {
notebook: None,
commit_signing_disabled: false,
create_notebook: true,
allow_top_level_notes: false,
show_paths: false,
}
}
}
impl Config {
pub fn to_nb_api_config(&self) -> nb_api::Config {
let notebook = self
.notebook
.clone()
.or_else(|| std::env::var("NB_MCP_NOTEBOOK").ok());
nb_api::Config {
notebook,
create_notebook: self.create_notebook,
allow_top_level_notes: self.allow_top_level_notes,
disable_git_signing: self.commit_signing_disabled,
}
}
}