semvec/pypi-packages huggingface dataset:
octobatch-tui 0.0.1
Batch LLM orchestration tool (placeholder - full release coming soon)
License: MIT
Requires Python: >=3.10

# octobatch-tui
Batch LLM orchestration tool.

**This is a placeholder package.** The full release is coming soon.

See the [GitHub repository](https://github.com/andrewstellman/octobatch) for the development version.
octobatch-cli 0.0.1
Batch LLM orchestration tool (placeholder - full release coming soon)
License: MIT
Requires Python: >=3.10

# octobatch-cli
Batch LLM orchestration tool.

**This is a placeholder package.** The full release is coming soon.

See the [GitHub repository](https://github.com/andrewstellman/octobatch) for the development version.
octobatch-core 0.0.1
Batch LLM orchestration tool (placeholder - full release coming soon)
License: MIT
Requires Python: >=3.10

# octobatch-core
Batch LLM orchestration tool.

**This is a placeholder package.** The full release is coming soon.

See the [GitHub repository](https://github.com/andrewstellman/octobatch) for the development version.
handex 0.1.1
Hand tracking system for robot teleoperation using MediaPipe
License: MIT
Requires Python: >=3.8
Keywords: hand-tracking, teleoperation, robotics, mediapipe, computer-vision

# Hand Tracking Teleop

Real-time hand tracking for robot teleoperation using MediaPipe.

## Features

- 21 hand landmarks per hand at 30fps
- Calibrated metric-space normalization
- Multiple visualization modes (2D, 3D, Rerun)
- Finger articulation tracking with curl detection
- Temporal smoothing for stable tracking

## Installation

```bash
pip install handex
```

With visualization support:

```bash
pip install handex[vis]
```

## Quick Start

### CLI

```bash
handex                # 2D view (default)
handex -m 3d          # 3D visualization
handex -m rerun       # Rerun viewer
handex-calibrate      # Run calibration
```

### Python API

```python
from hand_tracking import HandDetector
import cv2

detector = HandDetector()
cap = cv2.VideoCapture(0)

while True:
    ret, frame = cap.read()
    if not ret:
        break

    hands = detector.detect_hands(frame)
    for hand in hands:
        # Pixel coordinates
        pixels = hand.landmarks           # (21, 3) in pixels
        # 3D metric coordinates
        meters = hand.landmarks_3d        # (21, 3) in meters
        print(f"{hand.handedness}: wrist at {meters[0]}")
```

## Controls

- **q**: Quit (2D view)
- **Mouse drag**: Rotate 3D view
- **Scroll**: Zoom
- **Right-click drag**: Pan

## License

Apache 2.0