# notdouble.toml — the nd CLI, published on the hub it talks to.
name = "nd"
kind = "app"
version = "0.8.12"
description = "the notdouble CLI: push/pull vibecoded projects, self-updating"
llm_description = "`nd` is the client for notdoublehub (https://notdouble.com). It packs a project directory into a tar.gz with a searchable metadata manifest (notdouble.toml: description, llm_description, keywords, code_keywords, vibe log, machine specs) and pushes/pulls it to/from the hub. Commands: init, validate, upload, download, search, info, review, reviews, update-nd, llmhelp. `nd update-nd` replaces the binary itself with the newest one published on the hub (prebuilt at bin/nd-<os>-<arch> in this bundle). Designed to be driven by llm agents: `nd llmhelp` prints a compact agent guide; --json flags on search/info/reviews."
keywords = ["cli", "upload", "download", "llm", "agent", "package-manager", "notdouble", "self-update"]
code_keywords = ["rust", "clap", "reqwest", "tar", "gzip", "rustls"]
languages = ["rust"]
author = "notdouble"
license = "MIT"
homepage = "https://notdouble.com"
entry_points = ["nd-cli/src/main.rs", "nd-cli/src/commands.rs", "nd-cli/src/guide.rs", "nd-core/src/manifest.rs"]
# bootstrap: fetch the bundle, take bin/nd-<os>-<arch>; after that: nd update-nd
install = "nd update-nd"
run = "nd llmhelp"
nd_ref = "3Vjbq3tT/nd"
[vibe]
model = "glm-5.3-flash"
prompt_summary = "vibecoded notdoublehub + nd on ubuntu with opencode"