diff --git a/CLAUDE.md b/CLAUDE.md index 46e62f08..514b552f 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -56,12 +56,13 @@ uv run jabs-cli --help # Unified CLI utilities # Standalone CLI scripts uv run jabs-init /path/to/project # Initialize a JABS project -uv run jabs-features /path/to/project # Generate features (batch, no GUI) uv run jabs-classify --classifier model.pkl /path/to/pose.h5 # Batch classification uv run jabs-stats /path/to/project # View project statistics # jabs-cli subcommands (preferred for new utilities) +uv run jabs-cli compute-features # Generate features for a pose file (batch, no GUI) uv run jabs-cli export-training # Export training data from a project +uv run jabs-cli merge # Merge one JABS project into another uv run jabs-cli rename-behavior # Rename a behavior across a project uv run jabs-cli prune # Remove videos from a project ``` diff --git a/docs/development/development.md b/docs/development/development.md index 8984a782..3dea9673 100644 --- a/docs/development/development.md +++ b/docs/development/development.md @@ -938,8 +938,8 @@ jabs # Initialize a JABS project jabs-init /path/to/project -# Generate features for an HDF5 file without requring a JABS project (for batch processing) -jabs-features /path/to/project +# Generate features for a pose file without requiring a JABS project (for batch processing) +jabs-cli compute-features --pose-file /path/to/pose_file.h5 --feature-dir /path/to/features # Run batch classification jabs-classify --classifier my_classifier.pkl /path/to/pose_file.h5 @@ -958,8 +958,10 @@ jabs-cli --help `jabs-cli` is a unified command-line interface that consolidates smaller JABS utilities under a single entry point. Instead of having many separate standalone scripts, `jabs-cli` uses Click's group/command pattern to organize related functionality. **Current commands:** +- `jabs-cli compute-features` - Compute and cache features for a single pose file - `jabs-cli convert-parquet` - Convert a parquet pose file to JABS HDF5 pose format - `jabs-cli export-training` - Export training data from a project +- `jabs-cli merge` - Merge one JABS project into another - `jabs-cli rename-behavior` - Rename a behavior across a project - `jabs-cli prune` - Remove videos from a project based on criteria @@ -1001,9 +1003,10 @@ See existing commands in `cli.py` for complete examples. Some standalone scripts may be deprecated in favor of expanding `jabs-cli`. Candidates (non-exhaustive) for consolidation include: - `jabs-init` → `jabs-cli init-project` -- `jabs-project-merge` → `jabs-cli merge` -This consolidation would provide a more cohesive user experience and easier maintenance. However, backward compatibility will be maintained during any transition period. +The former `jabs-project-merge` script has already been consolidated as `jabs-cli merge`; the standalone entry point was removed. + +This consolidation would provide a more cohesive user experience and easier maintenance. **When to create a standalone script:** diff --git a/docs/user-guide/cli-tools.md b/docs/user-guide/cli-tools.md index 6957a640..b0b84e2b 100644 --- a/docs/user-guide/cli-tools.md +++ b/docs/user-guide/cli-tools.md @@ -80,32 +80,19 @@ optionally override the classifier specified in the training file: ## jabs-features -JABS includes a script called `jabs-features`, which can be used to generate a feature file for a single video from the command line. +**Deprecated.** `jabs-features` has been replaced by [`jabs-cli compute-features`](#jabs-cli-compute-features). The command still works, but it prints a deprecation warning, translates its arguments, and runs `jabs-cli compute-features` for you. Update existing pipelines to call the new command directly. -```text -usage: jabs-features [-h] --pose-file POSE_FILE --pose-version POSE_VERSION - --feature-dir FEATURE_DIR [--use-cm-distances] - [--window-size WINDOW_SIZE] [--fps FPS] - [--use-pose-hash] - -options: - -h, --help show this help message and exit - --pose-file POSE_FILE - pose file to compute features for - --pose-version POSE_VERSION - pose version to calculate features - --feature-dir FEATURE_DIR - directory to write output features - --use-cm-distances use cm distance units instead of pixel - --window-size WINDOW_SIZE - window size for features (default none) - --fps FPS frames per second to use for feature calculation - --use-pose-hash Include the pose file hash as a subdirectory level in the feature cache - path (e.g. /