pub fn init(
root: &Path,
name: Option<&str>,
repo: Option<&str>,
central: &Path,
) -> Result<Vec<String>>Expand description
Makes root a repository of project name (else the one its card names, else one named after
the folder), named repo in it (else as projects::repo_name picks): creates its .brain/ and card,
registers it in central (joining the project’s other repositories if it has some), creates the project’s
shared card if it’s new, and writes or refreshes the section in each agent file of root (creating
CLAUDE.md if there’s none). Returns what it did, one line each.
A repository of another project, still there, is moved to name as kb project move moves it: the links
between it and its old project’s repositories go, and so does that project’s card if it was the last.