diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7e9bf99..6665363 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,8 +16,6 @@ jobs: - name: Install dependencies run: | python -m pip install --upgrade pip - pip install -r requirements.txt - pip install -r requirements-dev.txt pip install -e . - name: Lint run: ruff check . diff --git a/README.md b/README.md index cbb3a43..f2039b2 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,9 @@ ANGEL (Automated Navigator for Gathering and Executing Local tools) is a cross-p ```bash python -m venv .venv source .venv/bin/activate # Windows: .\.venv\Scripts\Activate.ps1 -pip install -r requirements.txt + +pip install --prefer-binary -r requirements.txt + pip install -e . angel init angel web @@ -22,11 +24,7 @@ angel web Configuration is stored in `~/.config/angel/config.toml` (Linux/macOS) or `%APPDATA%\angel\config.toml` (Windows). Use `angel config` to manage settings. ## Development -```bash -pip install -r requirements-dev.txt -pre-commit install -pytest -``` + ## License MIT diff --git a/angel_cli/cli.py b/angel_cli/cli.py index 9ff9e22..cbaf46f 100644 --- a/angel_cli/cli.py +++ b/angel_cli/cli.py @@ -2,12 +2,6 @@ from __future__ import annotations import click -from rich.console import Console - -from angel_cli.commands import auth, config, maintenance, repos, tools - -console = Console() - @click.group(help="ANGEL CLI - manage tools and repositories.") @click.option("--config-path", type=click.Path(), help="Custom config path.") diff --git a/angel_cli/commands/auth.py b/angel_cli/commands/auth.py index 56092c9..e05170d 100644 --- a/angel_cli/commands/auth.py +++ b/angel_cli/commands/auth.py @@ -1,8 +1,6 @@ """Authentication commands.""" import click -from rich.console import Console -console = Console() @click.group(name="auth", help="Authentication commands.") @@ -13,16 +11,16 @@ def group() -> None: @group.command("login") def login() -> None: """Login to the local instance.""" - console.print("[green]Login flow not yet implemented.[/green]") + @group.command("logout") def logout() -> None: """Logout from the local instance.""" - console.print("[green]Logout flow not yet implemented.[/green]") + @group.command("change-password") def change_password() -> None: """Change the current user's password.""" - console.print("[yellow]Password change not yet implemented.[/yellow]") + diff --git a/angel_cli/commands/config.py b/angel_cli/commands/config.py index 4f66c82..697790a 100644 --- a/angel_cli/commands/config.py +++ b/angel_cli/commands/config.py @@ -1,8 +1,6 @@ """Configuration commands.""" import click -from rich.console import Console -console = Console() @click.group(name="config", help="Configuration management.") @@ -13,4 +11,5 @@ def group() -> None: @group.command("show") def show_config() -> None: """Show current configuration.""" - console.print("[green]Config display not yet implemented.[/green]") + + diff --git a/angel_cli/commands/maintenance.py b/angel_cli/commands/maintenance.py index 8ae1303..a397a7a 100644 --- a/angel_cli/commands/maintenance.py +++ b/angel_cli/commands/maintenance.py @@ -1,8 +1,6 @@ """Maintenance commands.""" import click -from rich.console import Console -console = Console() @click.group(name="maintenance", help="Maintenance tasks.") @@ -13,4 +11,4 @@ def group() -> None: @group.command("doctor") def doctor() -> None: """Run a health check.""" - console.print("[green]All checks passed (stub).[/green]") + diff --git a/angel_cli/commands/repos.py b/angel_cli/commands/repos.py index d625c7a..123ee17 100644 --- a/angel_cli/commands/repos.py +++ b/angel_cli/commands/repos.py @@ -1,8 +1,6 @@ """Repository commands.""" import click -from rich.console import Console -console = Console() @click.group(name="repos", help="Manage repositories.") @@ -13,4 +11,4 @@ def group() -> None: @group.command("list") def list_repos() -> None: """List tracked repositories.""" - console.print("[green]No repositories available (stub).[/green]") + diff --git a/angel_cli/commands/tools.py b/angel_cli/commands/tools.py index 0a1931d..f31933a 100644 --- a/angel_cli/commands/tools.py +++ b/angel_cli/commands/tools.py @@ -1,8 +1,6 @@ """Tool management commands.""" import click -from rich.console import Console -console = Console() @click.group(name="tools", help="Manage tools.") @@ -13,11 +11,11 @@ def group() -> None: @group.command("list") def list_tools() -> None: """List stored tools.""" - console.print("[green]No tools available (stub).[/green]") + @group.command("add") @click.argument("path", required=False) def add_tool(path: str | None) -> None: """Add a tool from a file path.""" - console.print(f"[green]Add tool stub: {path}[/green]") + diff --git a/pyproject.toml b/pyproject.toml index b32b673..1b8c300 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -19,7 +19,7 @@ classifiers = [ ] dependencies = [ "click>=8.1.7", - "rich>=13.7.0", + "fastapi>=0.110.0", "uvicorn>=0.27.1", "jinja2>=3.1.3", diff --git a/requirements.txt b/requirements.txt index 52e9ced..45cc30b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,4 @@ click>=8.1.7 -rich>=13.7.0 fastapi>=0.110.0 uvicorn>=0.27.1 jinja2>=3.1.3 diff --git a/scripts/dev_setup.sh b/scripts/dev_setup.sh index 7bcf6ff..784829d 100755 --- a/scripts/dev_setup.sh +++ b/scripts/dev_setup.sh @@ -2,6 +2,4 @@ set -euo pipefail python -m venv .venv source .venv/bin/activate -pip install --upgrade pip -pip install -r requirements.txt -r requirements-dev.txt pip install -e . diff --git a/setup-angel.ps1 b/setup-angel.ps1 index 12eb72f..4807375 100644 --- a/setup-angel.ps1 +++ b/setup-angel.ps1 @@ -68,10 +68,7 @@ try { throw "Virtual environment not created." } - & $venvPython -m pip install --upgrade pip - & $venvPython -m pip install -r requirements.txt - if ($DevMode) { - & $venvPython -m pip install -r requirements-dev.txt + } & $venvPython -m pip install -e . diff --git a/setup-angel.sh b/setup-angel.sh index 45f57a8..00620aa 100755 --- a/setup-angel.sh +++ b/setup-angel.sh @@ -18,8 +18,7 @@ fi python -m venv .venv source .venv/bin/activate -pip install --upgrade pip -pip install -r requirements.txt + pip install -e . if ! git remote | grep -q origin; then