Metadata-Version: 2.4
Name: isage-cli
Version: 0.2.3.3
Summary: SAGE Command Line Interface - Unified CLI for SAGE platform
Author-email: IntelliStream Team <shuhao_zhang@hust.edu.cn>
License: MIT
Project-URL: Homepage, https://github.com/intellistream/SAGE
Project-URL: Documentation, https://intellistream.github.io/SAGE
Project-URL: Repository, https://github.com/intellistream/SAGE
Project-URL: Issues, https://github.com/intellistream/SAGE/issues
Keywords: sage,cli,command-line,streaming,ai
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: typer<1.0.0,>=0.15.0
Requires-Dist: rich<14.0.0,>=13.0.0
Requires-Dist: pyyaml>=6.0
Requires-Dist: python-dotenv<2.0.0,>=1.1.0
Requires-Dist: requests<3.0.0,>=2.32.0
Requires-Dist: httpx<1.0.0,>=0.28.0
Requires-Dist: colorama>=0.4.6
Requires-Dist: tabulate<1.0.0,>=0.9.0
Provides-Extra: dev
Requires-Dist: pytest>=7.4.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
Requires-Dist: ruff==0.14.6; extra == "dev"
Requires-Dist: mypy>=1.7.0; extra == "dev"
Provides-Extra: all

# SAGE CLI

> **Unified Command Line Interface for SAGE Platform**

SAGE CLI (`sage-cli`) is the unified command-line interface for the SAGE (Streaming-Augmented
Generative Execution) platform. It provides a comprehensive set of commands for managing clusters,
deploying applications, and developing with SAGE.

## 🧭 Governance / 团队协作制度

- `docs/governance/TEAM.md`
- `docs/governance/MAINTAINERS.md`
- `docs/governance/DEVELOPER_GUIDE.md`
- `docs/governance/PR_CHECKLIST.md`
- `docs/governance/SELF_HOSTED_RUNNER.md`
- `docs/governance/TODO.md`

## 🚀 Installation

```bash
# From source
cd packages/sage-cli
pip install -e .

# Or install from PyPI (when published)
pip install sage-cli
```

## 📋 Command Structure

SAGE CLI organizes commands into two main categories:

### Platform Commands

Manage SAGE infrastructure and system components:

- `sage cluster` - Ray cluster management
- `sage head` - Head node management
- `sage worker` - Worker node management
- `sage job` - Job management
- `sage jobmanager` - JobManager service
- `sage config` - Configuration management
- `sage doctor` - System diagnostics
- `sage version` - Version information
- `sage extensions` - C++ extension management

### Application Commands

Application-level functionality:

- `sage llm` - LLM service management
- `sage chat` - Interactive chat interface
- `sage embedding` - Embedding service management
- `sage pipeline` - Pipeline builder
- `sage studio` - Visual pipeline editor

### Development Commands

**Note:** Development commands are provided by the `sage-tools` package separately via the
`sage-dev` command.

To use development tools:

```bash
# Install sage-tools (if not already installed)
pip install sage-tools

# Use sage-dev command
sage-dev quality check
sage-dev project test
sage-dev maintain doctor
```

Development command groups include:

- `sage-dev quality` - Code quality checks
- `sage-dev project` - Project management
- `sage-dev maintain` - Maintenance tools
- `sage-dev package` - Package management
- `sage-dev resource` - Resource management
- `sage-dev github` - GitHub utilities

## 🔧 Quick Start

```bash
# Check system status
sage doctor

# Start a cluster
sage cluster start

# View cluster status
sage cluster status

# Get help
sage --help
sage <command> --help
```

### Development Tools

For development commands, install `sage-tools`:

```bash
pip install sage-tools

# Run development checks
sage-dev quality check

# Run tests
sage-dev project test
```

## 📚 Documentation

For detailed documentation, see:

- [SAGE Documentation](https://intellistream.github.io/SAGE)
- [CLI Package Plan](../../docs/dev-notes/architecture/SAGE_CLI_PACKAGE_PLAN.md)

## 🏗️ Architecture

SAGE CLI is part of the L5 (Interface Layer) in the SAGE architecture:

```
L1: sage-common          (Foundation)
L2: sage-platform        (Platform Core)
L3: sage-kernel, sage-libs
L4: sage-middleware
L5: sage-cli, sage-tools
    ├── sage-cli: Production CLI via `sage` command
    └── sage-tools: Development tools via `sage-dev` command
```

**Independent Repositories:**

- sage-benchmark: Benchmark suites
- sage-examples: Applications and tutorials
- sage-studio: Visual interface
- sageLLM: LLM inference engine

**Command Separation:**

- **sage** (from sage-cli): User-facing production commands

  - Platform: cluster, head, worker, job, jobmanager, config, doctor, version, extensions
  - Apps: llm, chat, embedding, pipeline

- **sage-dev** (from sage-tools): Developer-only commands

  - quality, project, maintain, package, resource, github

Both packages are independent and can be installed separately.

## 🤝 Contributing

Contributions are welcome! Please see [CONTRIBUTING.md](../../CONTRIBUTING.md) for guidelines.

## 📄 License

Apache License 2.0 - see [LICENSE](../../LICENSE) for details.

## 🔗 Related Packages

- `sage-tools` - Development tools and `sage-dev` commands
- `sage-platform` - SAGE platform core
- `sage-apps` - SAGE applications
- `sage-studio` - Visual pipeline editor
