From 507ff2906a1101328aac33a64571a5b4a62264cc Mon Sep 17 00:00:00 2001 From: Levi Neuwirth Date: Mon, 13 Apr 2026 16:36:10 -0400 Subject: [PATCH] cli --- pyproject.toml | 5 +- src/neuropose/cli.py | 265 +++++++++++++++++++++++++++++++++++++++++ tests/unit/test_cli.py | 207 ++++++++++++++++++++++++++++++++ 3 files changed, 474 insertions(+), 3 deletions(-) create mode 100644 src/neuropose/cli.py create mode 100644 tests/unit/test_cli.py diff --git a/pyproject.toml b/pyproject.toml index adbddec..eed8119 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -66,9 +66,8 @@ Homepage = "https://git.levineuwirth.org/neuwirth/neuropose" Repository = "https://git.levineuwirth.org/neuwirth/neuropose" Issues = "https://git.levineuwirth.org/neuwirth/neuropose/issues" -# CLI entry point will be wired up in commit 7 once src/neuropose/cli.py lands. -# [project.scripts] -# neuropose = "neuropose.cli:app" +[project.scripts] +neuropose = "neuropose.cli:run" # --------------------------------------------------------------------------- # Dependency groups (PEP 735). Install a group with `uv sync --group dev` or diff --git a/src/neuropose/cli.py b/src/neuropose/cli.py new file mode 100644 index 0000000..6ff6fab --- /dev/null +++ b/src/neuropose/cli.py @@ -0,0 +1,265 @@ +"""NeuroPose command-line interface. + +Three subcommands: + +- ``neuropose watch`` — run the :class:`~neuropose.interfacer.Interfacer` + daemon against the configured input directory. +- ``neuropose process