agent-engine-cli 0.1.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,49 @@
1
+ name: Publish to PyPI
2
+
3
+ on:
4
+ release:
5
+ types: [published]
6
+
7
+ jobs:
8
+ build:
9
+ name: Build distribution
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - uses: actions/checkout@v4
13
+
14
+ - name: Set up Python
15
+ uses: actions/setup-python@v5
16
+ with:
17
+ python-version: "3.12"
18
+
19
+ - name: Install build tools
20
+ run: python -m pip install --upgrade pip build
21
+
22
+ - name: Build package
23
+ run: python -m build
24
+
25
+ - name: Upload distribution artifacts
26
+ uses: actions/upload-artifact@v4
27
+ with:
28
+ name: python-package-distributions
29
+ path: dist/
30
+
31
+ publish-to-pypi:
32
+ name: Publish to PyPI
33
+ needs: build
34
+ runs-on: ubuntu-latest
35
+ environment:
36
+ name: pypi
37
+ url: https://pypi.org/p/agent-engine-cli
38
+ permissions:
39
+ id-token: write # Required for trusted publishing
40
+
41
+ steps:
42
+ - name: Download distribution artifacts
43
+ uses: actions/download-artifact@v4
44
+ with:
45
+ name: python-package-distributions
46
+ path: dist/
47
+
48
+ - name: Publish to PyPI
49
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,57 @@
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+
6
+ # C extensions
7
+ *.so
8
+
9
+ # Distribution / packaging
10
+ .Python
11
+ build/
12
+ develop-eggs/
13
+ dist/
14
+ downloads/
15
+ eggs/
16
+ .eggs/
17
+ lib/
18
+ lib64/
19
+ parts/
20
+ sdist/
21
+ var/
22
+ wheels/
23
+ share/python-wheels/
24
+ *.egg-info/
25
+ .installed.cfg
26
+ *.egg
27
+ MANIFEST
28
+
29
+ # PyInstaller
30
+ *.manifest
31
+ *.spec
32
+
33
+ # Installer logs
34
+ pip-log.txt
35
+ pip-delete-this-directory.txt
36
+
37
+ # Unit test / coverage reports
38
+ htmlcov/
39
+ .tox/
40
+ .nox/
41
+ .coverage
42
+ .coverage.*
43
+ .cache
44
+ nosetests.xml
45
+ coverage.xml
46
+ *.cover
47
+ *.py,cover
48
+ .hypothesis/
49
+ .pytest_cache/
50
+ cover/
51
+
52
+ # Environments
53
+ .env
54
+ .venv
55
+ env/
56
+ venv/
57
+ ENV/
@@ -0,0 +1,33 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [0.1.1] - 2026-01-19
9
+
10
+ ### Added
11
+
12
+ - `ae sessions list` - List active sessions for an agent
13
+ - `ae sandboxes list` - List active sandboxes
14
+ - `ae memories list` - List agent memories
15
+ - Support for automatic project detection from Application Default Credentials (ADC)
16
+
17
+ ### Changed
18
+
19
+ - Improved PyPI package metadata
20
+
21
+ ## [0.1.0] - 2025-01-19
22
+
23
+ ### Added
24
+
25
+ - Initial release of Agent Engine CLI (`ae`)
26
+ - `ae list` - List all agents in a Google Cloud project
27
+ - `ae get` - Get details for a specific agent
28
+ - `ae create` - Create a new agent with configurable identity type
29
+ - `ae delete` - Delete an agent with optional force flag
30
+ - `ae chat` - Interactive chat session with an agent (streaming support)
31
+ - `ae version` - Display CLI version
32
+ - Rich terminal output with tables and panels
33
+ - Support for Google Cloud authentication via ADC
@@ -0,0 +1,107 @@
1
+ # Agent Engine Chat Client
2
+
3
+ Interactive command-line client for chatting with your deployed agent on Vertex AI Agent Engine.
4
+
5
+ ## Features
6
+
7
+ - Clean turn-based conversation interface
8
+ - Color-coded user and agent responses
9
+ - Automatic session management and memory persistence
10
+ - Streaming responses from the remote agent
11
+ - Session saved to memory on exit
12
+
13
+ ## Quick Start
14
+
15
+ ```bash
16
+ ae chat AGENT_ID -p PROJECT_ID -l us-central1
17
+ ```
18
+
19
+ ## Command-Line Options
20
+
21
+ ```bash
22
+ ae chat --help
23
+
24
+ Usage: ae chat [OPTIONS] AGENT_ID
25
+
26
+ Start an interactive chat session with an agent.
27
+
28
+ Arguments:
29
+ AGENT_ID Agent ID or full resource name [required]
30
+
31
+ Options:
32
+ -p, --project TEXT Google Cloud project ID [required]
33
+ -l, --location TEXT Google Cloud region [required]
34
+ -u, --user TEXT User ID for the chat session [default: cli-user]
35
+ -d, --debug Enable verbose HTTP debug logging
36
+ --help Show this message and exit.
37
+ ```
38
+
39
+ ## Usage Examples
40
+
41
+ ```bash
42
+ # Basic chat session
43
+ ae chat 172357243746910208 -p my-project -l us-central1
44
+
45
+ # With custom user ID
46
+ ae chat 172357243746910208 -p my-project -l us-central1 --user john@example.com
47
+
48
+ # With debug logging to see HTTP requests/responses
49
+ ae chat 172357243746910208 -p my-project -l us-central1 --debug
50
+ ```
51
+
52
+ ## Interactive Session
53
+
54
+ 1. **Start the client:**
55
+ ```bash
56
+ ae chat AGENT_ID -p PROJECT_ID -l LOCATION
57
+ ```
58
+
59
+ 2. **Chat with your agent:**
60
+ - Type your message and press Enter
61
+ - Agent responses stream in real-time
62
+ - Tools used by the agent are displayed
63
+
64
+ 3. **Exit gracefully:**
65
+ - Type `quit` or `exit`
66
+ - Or press `Ctrl+C`
67
+
68
+ ## Example Session
69
+
70
+ ```
71
+ Ready. User: cli-user, Session: abc123...
72
+
73
+ Type your message and press Enter. Type 'quit' or 'exit' to end.
74
+
75
+ You: Hello! How are you?
76
+
77
+ Agent: Hello! I'm doing well, thank you for asking. How can I help you today?
78
+
79
+ You: What can you do?
80
+
81
+ Tools: [search_documents] [get_user_info]
82
+
83
+ Agent: I can help you with several things including searching documents,
84
+ retrieving user information, and answering questions. What would you like to do?
85
+
86
+ You: quit
87
+ Chat session ended.
88
+ ```
89
+
90
+ ## How It Works
91
+
92
+ 1. Connects to your deployed Agent Engine on Vertex AI
93
+ 2. Creates a new session (or resumes existing one)
94
+ 3. Sends your messages to the remote agent
95
+ 4. Streams responses back in real-time
96
+ 5. Saves conversation to memory bank on exit
97
+
98
+ ## Troubleshooting
99
+
100
+ **Error: "Error in chat session: ..."**
101
+ - Check your GCP credentials: `gcloud auth application-default login`
102
+ - Verify agent is deployed: `ae list -p PROJECT_ID -l LOCATION`
103
+ - Ensure the agent ID is correct
104
+
105
+ **No response from agent:**
106
+ - Check your network connection
107
+ - Verify agent is running: `ae get AGENT_ID -p PROJECT_ID -l LOCATION`
@@ -0,0 +1,29 @@
1
+ # CLAUDE.md
2
+
3
+ This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
4
+
5
+ ## Project Overview
6
+
7
+ Agent Engine CLI (`ae`) is a command-line interface for managing Agent Engine. Built with Python using Typer for CLI framework and Rich for terminal output.
8
+
9
+ ## Development Commands
10
+
11
+ ```bash
12
+ # Install dependencies and project in development mode
13
+ uv sync
14
+
15
+ # Run the CLI
16
+ uv run ae --help
17
+
18
+ # Run all tests
19
+ uv run pytest
20
+
21
+ # Run a specific test
22
+ uv run pytest tests/test_main.py::test_version
23
+ ```
24
+
25
+ ## Architecture
26
+
27
+ - **Entry point**: `src/agent_engine_cli/main.py` - Contains the Typer app instance and all CLI commands
28
+ - **CLI binary**: Installed as `ae` via `[project.scripts]` in pyproject.toml
29
+ - **Testing**: Uses Typer's `CliRunner` for CLI command testing
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Mirko Montanari
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,96 @@
1
+ Metadata-Version: 2.4
2
+ Name: agent-engine-cli
3
+ Version: 0.1.1
4
+ Summary: Command-line interface for managing Google Cloud Vertex AI Agent Engine deployments
5
+ Project-URL: Homepage, https://github.com/mmontan/agent-engine-cli
6
+ Project-URL: Bug Tracker, https://github.com/mmontan/agent-engine-cli/issues
7
+ Author-email: Agent Engine Team <info@agentengine.ai>
8
+ License-Expression: MIT
9
+ License-File: LICENSE
10
+ Keywords: agent,agent-engine,agents,ai,automation,cli,gcp,google-cloud,llm,vertex,vertex-ai
11
+ Classifier: Development Status :: 4 - Beta
12
+ Classifier: Environment :: Console
13
+ Classifier: Intended Audience :: Developers
14
+ Classifier: License :: OSI Approved :: MIT License
15
+ Classifier: Operating System :: OS Independent
16
+ Classifier: Programming Language :: Python :: 3
17
+ Classifier: Programming Language :: Python :: 3.9
18
+ Classifier: Programming Language :: Python :: 3.10
19
+ Classifier: Programming Language :: Python :: 3.11
20
+ Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
22
+ Classifier: Topic :: Utilities
23
+ Requires-Python: >=3.9
24
+ Requires-Dist: google-cloud-aiplatform>=1.133.0
25
+ Requires-Dist: requests>=2.31.0
26
+ Requires-Dist: typer>=0.9.0
27
+ Description-Content-Type: text/markdown
28
+
29
+ # Agent Engine CLI
30
+
31
+ A command-line interface to manage Agent Engine.
32
+
33
+ ## Installation with uv
34
+
35
+ This project is set up to work seamlessly with `uv`.
36
+
37
+ 1. **Install uv** (if you haven't already):
38
+ ```bash
39
+ curl -LsSf https://astral.sh/uv/install.sh | sh
40
+ ```
41
+
42
+ 2. **Create a virtual environment and install dependencies**:
43
+ ```bash
44
+ uv venv
45
+ source .venv/bin/activate
46
+ uv pip install -e .
47
+ ```
48
+
49
+ 3. **Run the CLI**:
50
+ ```bash
51
+ ae --help
52
+ ```
53
+
54
+ ## Running Without Installation
55
+
56
+ You can run the CLI directly without installing it:
57
+
58
+ ```bash
59
+ # Using uv (recommended)
60
+ uv run python -m agent_engine_cli.main --help
61
+
62
+ # Or with plain Python (after installing dependencies)
63
+ python -m agent_engine_cli.main --help
64
+ ```
65
+
66
+ Example commands:
67
+ ```bash
68
+ uv run python -m agent_engine_cli.main list -p PROJECT_ID -l us-central1
69
+ uv run python -m agent_engine_cli.main get AGENT_ID -p PROJECT_ID -l us-central1
70
+ ```
71
+
72
+ ## Chat with an Agent
73
+
74
+ Start an interactive chat session with a deployed agent:
75
+
76
+ ```bash
77
+ # Basic usage
78
+ ae chat AGENT_ID -p PROJECT_ID -l us-central1
79
+
80
+ # With custom user ID
81
+ ae chat AGENT_ID -p PROJECT_ID -l us-central1 --user my-user-id
82
+
83
+ # With debug logging enabled
84
+ ae chat AGENT_ID -p PROJECT_ID -l us-central1 --debug
85
+ ```
86
+
87
+ ## Development
88
+
89
+ To run tests:
90
+
91
+ ```bash
92
+ uv pip install -e ".[dev]" # or just use the dev-dependencies if using a uv-managed lockfile workflow
93
+ # If using pure uv sync:
94
+ uv sync
95
+ uv run pytest
96
+ ```
@@ -0,0 +1,68 @@
1
+ # Agent Engine CLI
2
+
3
+ A command-line interface to manage Agent Engine.
4
+
5
+ ## Installation with uv
6
+
7
+ This project is set up to work seamlessly with `uv`.
8
+
9
+ 1. **Install uv** (if you haven't already):
10
+ ```bash
11
+ curl -LsSf https://astral.sh/uv/install.sh | sh
12
+ ```
13
+
14
+ 2. **Create a virtual environment and install dependencies**:
15
+ ```bash
16
+ uv venv
17
+ source .venv/bin/activate
18
+ uv pip install -e .
19
+ ```
20
+
21
+ 3. **Run the CLI**:
22
+ ```bash
23
+ ae --help
24
+ ```
25
+
26
+ ## Running Without Installation
27
+
28
+ You can run the CLI directly without installing it:
29
+
30
+ ```bash
31
+ # Using uv (recommended)
32
+ uv run python -m agent_engine_cli.main --help
33
+
34
+ # Or with plain Python (after installing dependencies)
35
+ python -m agent_engine_cli.main --help
36
+ ```
37
+
38
+ Example commands:
39
+ ```bash
40
+ uv run python -m agent_engine_cli.main list -p PROJECT_ID -l us-central1
41
+ uv run python -m agent_engine_cli.main get AGENT_ID -p PROJECT_ID -l us-central1
42
+ ```
43
+
44
+ ## Chat with an Agent
45
+
46
+ Start an interactive chat session with a deployed agent:
47
+
48
+ ```bash
49
+ # Basic usage
50
+ ae chat AGENT_ID -p PROJECT_ID -l us-central1
51
+
52
+ # With custom user ID
53
+ ae chat AGENT_ID -p PROJECT_ID -l us-central1 --user my-user-id
54
+
55
+ # With debug logging enabled
56
+ ae chat AGENT_ID -p PROJECT_ID -l us-central1 --debug
57
+ ```
58
+
59
+ ## Development
60
+
61
+ To run tests:
62
+
63
+ ```bash
64
+ uv pip install -e ".[dev]" # or just use the dev-dependencies if using a uv-managed lockfile workflow
65
+ # If using pure uv sync:
66
+ uv sync
67
+ uv run pytest
68
+ ```
@@ -0,0 +1,51 @@
1
+ [build-system]
2
+ requires = ["hatchling"]
3
+ build-backend = "hatchling.build"
4
+
5
+ [project]
6
+ name = "agent-engine-cli"
7
+ version = "0.1.1"
8
+ description = "Command-line interface for managing Google Cloud Vertex AI Agent Engine deployments"
9
+ readme = "README.md"
10
+ requires-python = ">=3.9"
11
+ license = "MIT"
12
+ authors = [
13
+ {name = "Agent Engine Team", email = "info@agentengine.ai"}
14
+ ]
15
+ keywords = ["agent", "ai", "cli", "google-cloud", "agent-engine", "gcp", "vertex-ai", "llm", "agents", "automation", "vertex"]
16
+ classifiers = [
17
+ "Development Status :: 4 - Beta",
18
+ "Environment :: Console",
19
+ "Intended Audience :: Developers",
20
+ "License :: OSI Approved :: MIT License",
21
+ "Operating System :: OS Independent",
22
+ "Programming Language :: Python :: 3",
23
+ "Programming Language :: Python :: 3.9",
24
+ "Programming Language :: Python :: 3.10",
25
+ "Programming Language :: Python :: 3.11",
26
+ "Programming Language :: Python :: 3.12",
27
+ "Topic :: Software Development :: Libraries :: Python Modules",
28
+ "Topic :: Utilities",
29
+ ]
30
+ dependencies = [
31
+ "typer>=0.9.0",
32
+ "requests>=2.31.0",
33
+ "google-cloud-aiplatform>=1.133.0",
34
+ ]
35
+
36
+ [project.scripts]
37
+ ae = "agent_engine_cli.main:app"
38
+
39
+ [project.urls]
40
+ "Homepage" = "https://github.com/mmontan/agent-engine-cli"
41
+ "Bug Tracker" = "https://github.com/mmontan/agent-engine-cli/issues"
42
+
43
+ [tool.hatch.build.targets.wheel]
44
+ packages = ["src/agent_engine_cli"]
45
+
46
+ [dependency-groups]
47
+ dev = [
48
+ "pytest>=7.0.0",
49
+ "build>=1.0.0",
50
+ "twine>=5.0.0",
51
+ ]
@@ -0,0 +1,3 @@
1
+ # Init file for agent_engine_cli
2
+
3
+ __version__ = "0.1.1"