Skip to content

feat(cli)!: arrange the commands as groups of commands - #43

Merged
nichinichisou0609 merged 1 commit into
mainfrom
feat/cli-tree
Oct 14, 2026
Merged

nichinichisou0609 merged 1 commit into
mainfrom
feat/cli-tree

Conversation

@nichinichisou0609

Copy link
Copy Markdown
Collaborator

Every command is now nnnotes <group> <command>:

Group Commands
config init, set, unset, check, path
servers (one command)
catalog keys, browse, versions, import, fetch, diff
bundle pull
master version, download, decode
export assets, episode, story, live, live2d, spot, room, shader, audio, ui
apk settings, hca-key
store plan, run, verify
voices list, search, summary, get
site build -o SITE
music-data (one command)
  • Global options go before or after the command name; --store and --json are global options.
  • Every command prints a short summary, or with --json its report as JSON. Commands that write files take -o/--out.
  • --catalog-version pins the international resource version; --stored-catalog selects a catalog version of the store (export assets, store plan).
  • site build --site-region chooses the regions of a site; voices search --search-language limits the search; master download --fetch-workers; voices get --flac-level.
  • --workers of master decode and store verify default to the CPUs the process may use; --workers 0 runs without parallel workers.
  • docs/cli.md is generated from the parser (python -m nnnotes.cli.reference docs/cli.md); a test keeps it current, and every command and argument has help.

The previous command names are not accepted.

Every command is now `nnnotes <group> <command>`:

- config init|set|unset|check|path, servers
- catalog keys|browse|versions|import|fetch|diff, bundle pull
- master version|download|decode
- export assets|episode|story|live|live2d|spot|room|shader|audio|ui
- apk settings|hca-key
- store plan|run|verify
- voices list|search|summary|get
- site build -o SITE, music-data -o FILE

The global options are accepted before or after the command name,
and include --store and --json. Every command prints a short summary,
or with --json its report as JSON; notes and errors go to standard
error. Commands that write files take -o/--out.

Option names:

- --catalog-version pins the international resource version (the
  [catalog] version setting); --stored-catalog selects a catalog
  version of the store for export assets and store plan.
- site build serves the regions of --site-region; --region is the
  global [catalog] region.
- voices search limits the search to --search-language; voices list
  shows the text in the global --language.
- master download takes --fetch-workers; voices get takes
  --flac-level.
- --workers of master decode and store verify default to the CPUs
  the process may use; --workers 0 runs without parallel workers
  (one thread for music-data).

Each group is a module of nnnotes.cli. docs/cli.md lists every
command and argument; python -m nnnotes.cli.reference writes it from
the parser, and a test keeps it current.

BREAKING CHANGE: the command names and the options above changed;
the previous names are not accepted.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@nichinichisou0609
nichinichisou0609 merged commit 8fdfc51 into main Oct 14, 2026
6 checks passed
@nichinichisou0609
nichinichisou0609 deleted the feat/cli-tree branch October 14, 2026 06:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant