reasoning-deployment-service 0.3.3__tar.gz → 0.3.4__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.

Potentially problematic release.


This version of reasoning-deployment-service might be problematic. Click here for more details.

Files changed (37) hide show
  1. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/PKG-INFO +5 -7
  2. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/pyproject.toml +5 -4
  3. reasoning_deployment_service-0.3.4/reasoning_deployment_service/runner.py +105 -0
  4. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service.egg-info/PKG-INFO +5 -7
  5. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service.egg-info/SOURCES.txt +0 -3
  6. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service.egg-info/requires.txt +3 -2
  7. reasoning_deployment_service-0.3.3/reasoning_deployment_service/gui_editor/requirements_minimal.txt +0 -54
  8. reasoning_deployment_service-0.3.3/reasoning_deployment_service/gui_editor/run_program.sh +0 -55
  9. reasoning_deployment_service-0.3.3/reasoning_deployment_service/runner.py +0 -122
  10. reasoning_deployment_service-0.3.3/setup.py +0 -89
  11. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/README.md +0 -0
  12. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/__init__.py +0 -0
  13. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/cli_editor/__init__.py +0 -0
  14. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/cli_editor/api_client.py +0 -0
  15. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/cli_editor/cli_runner.py +0 -0
  16. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/cli_editor/config.py +0 -0
  17. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/cli_editor/google_deps.py +0 -0
  18. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/cli_editor/reasoning_engine_creator.py +0 -0
  19. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/gui_editor/__init__.py +0 -0
  20. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/gui_editor/main.py +0 -0
  21. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/gui_editor/src/__init__.py +0 -0
  22. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/gui_editor/src/core/__init__.py +0 -0
  23. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/gui_editor/src/core/api_client.py +0 -0
  24. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/gui_editor/src/core/config.py +0 -0
  25. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/gui_editor/src/core/google_deps.py +0 -0
  26. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/gui_editor/src/core/reasoning_engine_creator.py +0 -0
  27. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/gui_editor/src/ui/__init__.py +0 -0
  28. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/gui_editor/src/ui/agent_space_view.py +0 -0
  29. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/gui_editor/src/ui/authorization_view.py +0 -0
  30. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/gui_editor/src/ui/reasoning_engine_view.py +0 -0
  31. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/gui_editor/src/ui/reasoning_engines_view.py +0 -0
  32. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/gui_editor/src/ui/ui_components.py +0 -0
  33. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service/reasoning_deployment_service.py +0 -0
  34. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service.egg-info/dependency_links.txt +0 -0
  35. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service.egg-info/entry_points.txt +0 -0
  36. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/reasoning_deployment_service.egg-info/top_level.txt +0 -0
  37. {reasoning_deployment_service-0.3.3 → reasoning_deployment_service-0.3.4}/setup.cfg +0 -0
@@ -1,23 +1,23 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: reasoning-deployment-service
3
- Version: 0.3.3
3
+ Version: 0.3.4
4
4
  Summary: Deployment helper for Vertex AI Reasoning Engines & Agent Spaces
5
- Author: AxG-AI-Exchange-GenAI-Initiative
6
5
  Author-email: Sergio Estrada <sergio.estrada@accenture.com>
7
6
  License: Apache-2.0
8
7
  Project-URL: Homepage, https://github.com/AxG-AI-Exchange-GenAI-Initiative/AIXAgentDeploymentService
9
8
  Project-URL: Repository, https://github.com/AxG-AI-Exchange-GenAI-Initiative/AIXAgentDeploymentService
10
9
  Project-URL: Issues, https://github.com/AxG-AI-Exchange-GenAI-Initiative/AIXAgentDeploymentService/issues
11
- Requires-Python: >=3.7
10
+ Requires-Python: >=3.9
12
11
  Description-Content-Type: text/markdown
13
12
  Requires-Dist: requests>=2.28
14
13
  Requires-Dist: python-dotenv>=1.0
15
14
  Requires-Dist: google-auth>=2.20
16
15
  Requires-Dist: google-cloud-storage>=2.16
16
+ Requires-Dist: google-cloud-aiplatform[adk,agent-engines]>=1.88.0
17
+ Requires-Dist: protobuf<7.0.0,>=4.21
17
18
  Requires-Dist: keyring>=24.0
18
19
  Requires-Dist: keyrings.google-artifactregistry-auth>=1.1
19
- Requires-Dist: google-cloud-aiplatform>=1.50.0
20
- Requires-Dist: protobuf<7.0.0,>=4.21
20
+ Requires-Dist: PyYAML>=6.0
21
21
  Requires-Dist: click>=8.0
22
22
  Provides-Extra: dev
23
23
  Requires-Dist: pytest; extra == "dev"
@@ -25,8 +25,6 @@ Requires-Dist: build; extra == "dev"
25
25
  Requires-Dist: twine; extra == "dev"
26
26
  Requires-Dist: black; extra == "dev"
27
27
  Requires-Dist: ruff; extra == "dev"
28
- Dynamic: author
29
- Dynamic: requires-python
30
28
 
31
29
  # Reasoning Deployment Service
32
30
 
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "reasoning-deployment-service"
7
- version = "0.3.3"
7
+ version = "0.3.4"
8
8
  description = "Deployment helper for Vertex AI Reasoning Engines & Agent Spaces"
9
9
  readme = "README.md"
10
10
  license = { text = "Apache-2.0" }
@@ -19,11 +19,12 @@ dependencies = [
19
19
  "python-dotenv>=1.0",
20
20
  "google-auth>=2.20",
21
21
  "google-cloud-storage>=2.16",
22
+ "google-cloud-aiplatform[adk,agent-engines]>=1.88.0", # Vertex AI + ADK + Agent Engines
23
+ "protobuf>=4.21,<7.0.0", # pinned for compat
22
24
  "keyring>=24.0",
23
25
  "keyrings.google-artifactregistry-auth>=1.1",
24
- "google-cloud-aiplatform>=1.50.0", # Vertex AI SDK
25
- "protobuf>=4.21,<7.0.0", # pinned for compat
26
- "click>=8.0" # nice for CLI menus if you expand later
26
+ "PyYAML>=6.0", # yaml support
27
+ "click>=8.0" # nice for CLI menus if you expand later
27
28
  ]
28
29
 
29
30
  [project.optional-dependencies]
@@ -0,0 +1,105 @@
1
+ import sys
2
+ import argparse
3
+ from pathlib import Path
4
+ from reasoning_deployment_service import ReasoningEngineDeploymentService
5
+ from reasoning_deployment_service.gui_editor import GUIEditor
6
+ from reasoning_deployment_service.cli_editor import CLIRunner
7
+
8
+
9
+ class Runner:
10
+ @staticmethod
11
+ def run():
12
+ parser = argparse.ArgumentParser(description="Reasoning Engine Deployment Runner")
13
+ parser.add_argument(
14
+ "--mode",
15
+ choices=["create", "auth", "cli", "gui", "populate_files"],
16
+ help="Operation mode to run",
17
+ )
18
+ parser.add_argument(
19
+ "--agent-path",
20
+ help="Dotted path to your agent (e.g. Invoice_agent.agent:root_agent). "
21
+ "If omitted, falls back to your_agent_import.py in project root."
22
+ )
23
+ args = parser.parse_args()
24
+
25
+ Runner._ensure_gitignore()
26
+
27
+ # --- Load root_agent dynamically ---
28
+ root_agent = Runner._load_agent(args.agent_path)
29
+
30
+ # --- Check env config ---
31
+ if not Path(".env.agent").exists() or not Path("aix_agent.yaml").exists():
32
+ print("Missing .env.agent or aix_agent.yaml.")
33
+ print("Options:\n 5) Generate placeholder config\n q) Quit")
34
+ choice = input("Enter choice: ").strip()
35
+ if choice == "5":
36
+ svc = ReasoningEngineDeploymentService(root_agent, deployment_environment="DEV")
37
+ svc._check_required_files_exist()
38
+ sys.exit(0)
39
+
40
+ # --- Run mode or menu ---
41
+ if args.mode:
42
+ Runner._dispatch(args.mode, root_agent)
43
+ else:
44
+ Runner._menu(root_agent)
45
+
46
+ # ------------------ HELPERS ------------------
47
+
48
+ @staticmethod
49
+ def _ensure_gitignore():
50
+ gi = Path(".gitignore")
51
+ if not gi.exists():
52
+ gi.write_text("# Generated by Runner\n")
53
+ patterns = [
54
+ ".venv", ".venv_deploy", "venv", "__pycache__",
55
+ "deploy_env", "your_agent_import.py"
56
+ ]
57
+ content = gi.read_text().splitlines()
58
+ for p in patterns:
59
+ if p not in content:
60
+ gi.write_text(gi.read_text() + f"\n{p}\n")
61
+
62
+ @staticmethod
63
+ def _load_agent(agent_path_arg: str):
64
+ """Load root_agent either from --agent-path or your_agent_import.py."""
65
+ sys.path.insert(0, str(Path.cwd())) # ensure project root on sys.path
66
+
67
+ if agent_path_arg:
68
+ import importlib
69
+ if ":" in agent_path_arg:
70
+ module_path, attr = agent_path_arg.split(":")
71
+ else:
72
+ module_path, attr = agent_path_arg, "root_agent"
73
+ module = importlib.import_module(module_path)
74
+ return getattr(module, attr)
75
+
76
+ if Path("your_agent_import.py").exists():
77
+ from your_agent_import import root_agent
78
+ return root_agent
79
+
80
+ print("Error: No agent path provided and your_agent_import.py not found.")
81
+ sys.exit(1)
82
+
83
+ @staticmethod
84
+ def _dispatch(mode, root_agent):
85
+ svc = ReasoningEngineDeploymentService(root_agent, deployment_environment="DEV")
86
+
87
+ if mode == "create":
88
+ svc.one_deployment_with_everything_on_it()
89
+ elif mode == "auth":
90
+ svc.one_deployment_with_everything_on_it(skip_engine_step=True)
91
+ elif mode == "cli":
92
+ CLIRunner().run()
93
+ elif mode == "gui":
94
+ GUIEditor().run()
95
+ elif mode == "populate_files":
96
+ svc._check_required_files_exist()
97
+
98
+ @staticmethod
99
+ def _menu(root_agent):
100
+ print("Choose an operation:\n1) Create/Update\n2) Auth only\n3) CLI\n4) GUI\nq) Quit")
101
+ choice = input("Enter choice: ").strip().lower()
102
+ mapping = {"1": "create", "2": "auth", "3": "cli", "4": "gui"}
103
+ if choice == "q":
104
+ sys.exit(0)
105
+ Runner._dispatch(mapping.get(choice, ""), root_agent)
@@ -1,23 +1,23 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: reasoning-deployment-service
3
- Version: 0.3.3
3
+ Version: 0.3.4
4
4
  Summary: Deployment helper for Vertex AI Reasoning Engines & Agent Spaces
5
- Author: AxG-AI-Exchange-GenAI-Initiative
6
5
  Author-email: Sergio Estrada <sergio.estrada@accenture.com>
7
6
  License: Apache-2.0
8
7
  Project-URL: Homepage, https://github.com/AxG-AI-Exchange-GenAI-Initiative/AIXAgentDeploymentService
9
8
  Project-URL: Repository, https://github.com/AxG-AI-Exchange-GenAI-Initiative/AIXAgentDeploymentService
10
9
  Project-URL: Issues, https://github.com/AxG-AI-Exchange-GenAI-Initiative/AIXAgentDeploymentService/issues
11
- Requires-Python: >=3.7
10
+ Requires-Python: >=3.9
12
11
  Description-Content-Type: text/markdown
13
12
  Requires-Dist: requests>=2.28
14
13
  Requires-Dist: python-dotenv>=1.0
15
14
  Requires-Dist: google-auth>=2.20
16
15
  Requires-Dist: google-cloud-storage>=2.16
16
+ Requires-Dist: google-cloud-aiplatform[adk,agent-engines]>=1.88.0
17
+ Requires-Dist: protobuf<7.0.0,>=4.21
17
18
  Requires-Dist: keyring>=24.0
18
19
  Requires-Dist: keyrings.google-artifactregistry-auth>=1.1
19
- Requires-Dist: google-cloud-aiplatform>=1.50.0
20
- Requires-Dist: protobuf<7.0.0,>=4.21
20
+ Requires-Dist: PyYAML>=6.0
21
21
  Requires-Dist: click>=8.0
22
22
  Provides-Extra: dev
23
23
  Requires-Dist: pytest; extra == "dev"
@@ -25,8 +25,6 @@ Requires-Dist: build; extra == "dev"
25
25
  Requires-Dist: twine; extra == "dev"
26
26
  Requires-Dist: black; extra == "dev"
27
27
  Requires-Dist: ruff; extra == "dev"
28
- Dynamic: author
29
- Dynamic: requires-python
30
28
 
31
29
  # Reasoning Deployment Service
32
30
 
@@ -1,6 +1,5 @@
1
1
  README.md
2
2
  pyproject.toml
3
- setup.py
4
3
  reasoning_deployment_service/__init__.py
5
4
  reasoning_deployment_service/reasoning_deployment_service.py
6
5
  reasoning_deployment_service/runner.py
@@ -18,8 +17,6 @@ reasoning_deployment_service/cli_editor/google_deps.py
18
17
  reasoning_deployment_service/cli_editor/reasoning_engine_creator.py
19
18
  reasoning_deployment_service/gui_editor/__init__.py
20
19
  reasoning_deployment_service/gui_editor/main.py
21
- reasoning_deployment_service/gui_editor/requirements_minimal.txt
22
- reasoning_deployment_service/gui_editor/run_program.sh
23
20
  reasoning_deployment_service/gui_editor/src/__init__.py
24
21
  reasoning_deployment_service/gui_editor/src/core/__init__.py
25
22
  reasoning_deployment_service/gui_editor/src/core/api_client.py
@@ -2,10 +2,11 @@ requests>=2.28
2
2
  python-dotenv>=1.0
3
3
  google-auth>=2.20
4
4
  google-cloud-storage>=2.16
5
+ google-cloud-aiplatform[adk,agent-engines]>=1.88.0
6
+ protobuf<7.0.0,>=4.21
5
7
  keyring>=24.0
6
8
  keyrings.google-artifactregistry-auth>=1.1
7
- google-cloud-aiplatform>=1.50.0
8
- protobuf<7.0.0,>=4.21
9
+ PyYAML>=6.0
9
10
  click>=8.0
10
11
 
11
12
  [dev]
@@ -1,54 +0,0 @@
1
- # Bare minimum requirements for Agent Space Deployment Service
2
- # Core functionality dependencies only
3
-
4
- # Google Cloud & Vertex AI (CORE REQUIREMENT)
5
- google-cloud-aiplatform==1.108.0
6
- vertexai==1.43.0
7
- google-auth==2.40.3
8
- google-auth-oauthlib==1.2.2
9
- google-api-python-client==2.178.0
10
-
11
- # Environment management (CORE REQUIREMENT)
12
- python-dotenv==1.1.1
13
-
14
- # HTTP requests (CORE REQUIREMENT)
15
- requests==2.32.4
16
-
17
- # Google Cloud dependencies (CORE REQUIREMENT)
18
- google-api-core==2.25.1
19
- googleapis-common-protos==1.70.0
20
- grpcio==1.74.0
21
- protobuf==6.31.1
22
-
23
- # Authentication dependencies (CORE REQUIREMENT)
24
- google-auth-httplib2==0.2.0
25
- cachetools==5.5.2
26
- pyasn1==0.6.1
27
- pyasn1_modules==0.4.2
28
- rsa==4.9.1
29
-
30
- # Core Python utilities (CORE REQUIREMENT)
31
- certifi==2025.8.3
32
- urllib3==2.5.0
33
- six==1.17.0
34
-
35
- # OPTIONAL: For enhanced functionality
36
- # Uncomment if you need these features:
37
-
38
- # For MCP server support:
39
- # mcp==1.12.4
40
-
41
- # For FastAPI endpoints (if you plan to add web interface):
42
- # fastapi==0.116.1
43
- # uvicorn==0.35.0
44
- # pydantic==2.11.7
45
-
46
- # For document processing in agents:
47
- # PyPDF2==3.0.1
48
- # python-docx==1.2.0
49
-
50
- # For web scraping/HTTP in agents:
51
- # httpx==0.28.1
52
-
53
- # For YAML configuration:
54
- # PyYAML==6.0.2
@@ -1,55 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -e
3
-
4
- VENV_DIR=".venv"
5
-
6
- # Detect Python executable
7
- if command -v python3 &>/dev/null; then
8
- PYTHON=python3
9
- elif command -v python &>/dev/null; then
10
- PYTHON=python
11
- else
12
- echo "❌ Python is not installed. Please install Python 3.9+."
13
- exit 1
14
- fi
15
-
16
- # Create venv if missing
17
- if [ ! -d "$VENV_DIR" ]; then
18
- echo "🔧 Creating virtual environment..."
19
- $PYTHON -m venv "$VENV_DIR"
20
- fi
21
-
22
- # Activate venv (POSIX)
23
- if [ -f "$VENV_DIR/bin/activate" ]; then
24
- source "$VENV_DIR/bin/activate"
25
- # Activate venv (Windows Git Bash or Cygwin)
26
- elif [ -f "$VENV_DIR/Scripts/activate" ]; then
27
- source "$VENV_DIR/Scripts/activate"
28
- else
29
- echo "❌ Could not find venv activation script."
30
- exit 1
31
- fi
32
-
33
- # Install Tkinter if on Linux
34
- if [[ "$OSTYPE" == "linux-gnu"* ]]; then
35
- echo "🖼 Installing Tkinter for Linux..."
36
- if command -v apt-get &>/dev/null; then
37
- sudo apt-get update && sudo apt-get install -y python3-tk
38
- elif command -v dnf &>/dev/null; then
39
- sudo dnf install -y python3-tkinter
40
- elif command -v pacman &>/dev/null; then
41
- sudo pacman -S --noconfirm tk
42
- else
43
- echo "⚠️ Could not determine package manager. Install python3-tk manually."
44
- fi
45
- fi
46
-
47
- # Install dependencies
48
- echo "📦 Installing dependencies..."
49
- pip3 install --upgrade pip
50
- # Install the reasoning deployment service with GUI extras
51
- pip3 install "reasoning-deployment-service[gui]"
52
-
53
- # Run your app
54
- echo "🚀 Starting app..."
55
- $PYTHON main.py
@@ -1,122 +0,0 @@
1
- import os
2
- import sys
3
- import subprocess
4
- from pathlib import Path
5
- from dotenv import load_dotenv
6
- import argparse
7
-
8
- from reasoning_deployment_service import (
9
- ReasoningEngineDeploymentService,
10
- )
11
- from reasoning_deployment_service.gui_editor import GUIEditor
12
- from reasoning_deployment_service.cli_editor import CLIRunner
13
-
14
-
15
- class Runner:
16
- @staticmethod
17
- def run():
18
- parser = argparse.ArgumentParser(description="Reasoning Engine Deployment Runner")
19
- parser.add_argument(
20
- "--mode",
21
- choices=["create", "auth", "cli", "gui", "populate_files"],
22
- required=False,
23
- help="Operation mode to run",
24
- )
25
- args = parser.parse_args()
26
-
27
- # --- Ensure .gitignore covers junk ---
28
- Runner._ensure_gitignore()
29
-
30
- # --- Ensure your_agent_import.py exists ---
31
- if not Path("your_agent_import.py").exists():
32
- Runner._create_agent_import()
33
-
34
- # --- Always ensure venv exists & is up to date ---
35
- venv_python = Runner._ensure_venv()
36
-
37
- # --- Install dependencies into venv ---
38
- Runner._install_deps(venv_python)
39
-
40
- # --- If no config files, restrict menu ---
41
- if not Path(".env.agent").exists() or not Path("aix_agent.yaml").exists():
42
- print("Missing .env.agent or aix_agent.yaml.")
43
- print("Options:\n 5) Generate placeholder config\n q) Quit")
44
- choice = input("Enter choice: ").strip()
45
- if choice == "5":
46
- subprocess.check_call([venv_python, "deploy.py", "--mode", "populate_files"])
47
- else:
48
- sys.exit(0)
49
- return
50
-
51
- # --- Dispatch based on mode or menu ---
52
- if args.mode:
53
- Runner._dispatch(args.mode, venv_python)
54
- else:
55
- Runner._menu(venv_python)
56
-
57
- # ------------------ HELPERS ------------------
58
-
59
- @staticmethod
60
- def _ensure_gitignore():
61
- gi = Path(".gitignore")
62
- if not gi.exists():
63
- gi.write_text("# Generated by Runner\n")
64
- patterns = [".venv", ".venv_deploy", "venv", "__pycache__", "deploy_env", "your_agent_import.py"]
65
- content = gi.read_text().splitlines()
66
- for p in patterns:
67
- if p not in content:
68
- with gi.open("a") as f:
69
- f.write(f"{p}\n")
70
-
71
- @staticmethod
72
- def _create_agent_import():
73
- agent_dir = input("Enter the directory where your root_agent (agent.py) lives: ").strip()
74
- if not Path(agent_dir, "agent.py").exists():
75
- print(f"Error: {agent_dir}/agent.py not found")
76
- sys.exit(1)
77
- import_path = agent_dir.replace("/", ".") + ".agent"
78
- Path("your_agent_import.py").write_text(f"from {import_path} import root_agent\n")
79
- print(f"Created your_agent_import.py pointing to {agent_dir}/agent.py")
80
-
81
- @staticmethod
82
- def _ensure_venv():
83
- venv_dir = Path("deploy_env")
84
- if not venv_dir.exists():
85
- subprocess.check_call([sys.executable, "-m", "venv", str(venv_dir)])
86
- print("Created venv at ./deploy_env")
87
- return str(venv_dir / "bin" / "python")
88
-
89
- @staticmethod
90
- def _install_deps(venv_python):
91
- subprocess.check_call([venv_python, "-m", "pip", "install", "--upgrade", "pip"])
92
- subprocess.check_call([venv_python, "-m", "pip", "install", "keyring", "keyrings.google-artifactregistry-auth"])
93
- # Install reasoning-deployment-service itself (current package)
94
- subprocess.check_call([venv_python, "-m", "pip", "install", "reasoning-deployment-service"])
95
-
96
- if Path("requirements.txt").exists():
97
- subprocess.check_call([venv_python, "-m", "pip", "install", "-r", "requirements.txt"])
98
-
99
- @staticmethod
100
- def _dispatch(mode, venv_python):
101
- from your_agent_import import root_agent
102
- svc = ReasoningEngineDeploymentService(root_agent, deployment_environment="DEV")
103
-
104
- if mode == "create":
105
- svc.one_deployment_with_everything_on_it()
106
- elif mode == "auth":
107
- svc.one_deployment_with_everything_on_it(skip_engine_step=True)
108
- elif mode == "cli":
109
- CLIRunner().run()
110
- elif mode == "gui":
111
- GUIEditor().run()
112
- elif mode == "populate_files":
113
- svc._check_required_files_exist()
114
-
115
- @staticmethod
116
- def _menu(venv_python):
117
- print("Choose an operation:\n1) Create/Update\n2) Auth only\n3) CLI\n4) GUI\nq) Quit")
118
- choice = input("Enter choice: ").strip()
119
- mapping = {"1": "create", "2": "auth", "3": "cli", "4": "gui"}
120
- if choice.lower() == "q":
121
- sys.exit(0)
122
- Runner._dispatch(mapping.get(choice, ""), venv_python)
@@ -1,89 +0,0 @@
1
- from setuptools import setup, find_packages
2
-
3
- setup(
4
- name='reasoning-deployment-service',
5
- version='0.2.3',
6
- description='A service for deploying reasoning agents with CLI and GUI editors.',
7
- author='AxG-AI-Exchange-GenAI-Initiative',
8
- packages=find_packages(),
9
- package_data={
10
- 'reasoning_deployment_service.gui_editor': [
11
- 'src/core/*.py',
12
- 'src/ui/*.py',
13
- 'src/__init__.py',
14
- 'src/core/__init__.py',
15
- 'src/ui/__init__.py',
16
- 'requirements_minimal.txt',
17
- 'run_program.sh',
18
- ],
19
- 'reasoning_deployment_service.cli_editor': [
20
- '*.py',
21
- ],
22
- },
23
- include_package_data=True,
24
- install_requires=[
25
- # Core reasoning deployment service dependencies
26
- 'google-cloud-aiplatform[agent_engines]>=1.91.0,!=1.92.0',
27
- 'vertexai>=1.43.0',
28
- 'google-auth>=2.40.0',
29
- 'google-auth-oauthlib>=1.2.0',
30
- 'google-api-python-client>=2.178.0',
31
- 'python-dotenv>=1.1.0',
32
- 'requests>=2.32.0',
33
- 'PyYAML>=6.0.0',
34
- 'google-adk>=0.0.2',
35
- 'google-genai>=1.5.0,<2.0.0',
36
- 'pydantic>=2.10.6,<3.0.0',
37
- ],
38
- extras_require={
39
- 'gui': [
40
- # GUI editor dependencies (all from requirements_minimal.txt)
41
- 'google-api-core>=2.25.0',
42
- 'googleapis-common-protos>=1.70.0',
43
- 'grpcio>=1.74.0',
44
- 'protobuf>=6.31.0',
45
- 'google-auth-httplib2>=0.2.0',
46
- 'cachetools>=5.5.0',
47
- 'pyasn1>=0.6.0',
48
- 'pyasn1_modules>=0.4.0',
49
- 'rsa>=4.9.0',
50
- 'certifi>=2025.8.0',
51
- 'urllib3>=2.5.0',
52
- 'six>=1.17.0',
53
- ],
54
- 'cli': [], # CLI has no extra requirements beyond base
55
- 'full': [
56
- # Install everything for complete functionality
57
- 'google-api-core>=2.25.0',
58
- 'googleapis-common-protos>=1.70.0',
59
- 'grpcio>=1.74.0',
60
- 'protobuf>=6.31.0',
61
- 'google-auth-httplib2>=0.2.0',
62
- 'cachetools>=5.5.0',
63
- 'pyasn1>=0.6.0',
64
- 'pyasn1_modules>=0.4.0',
65
- 'rsa>=4.9.0',
66
- 'certifi>=2025.8.0',
67
- 'urllib3>=2.5.0',
68
- 'six>=1.17.0',
69
- ],
70
- 'dev': [
71
- # Development dependencies
72
- 'pytest>=7.0.0',
73
- 'pytest-asyncio>=0.21.0',
74
- 'black>=23.0.0',
75
- 'flake8>=6.0.0',
76
- ],
77
- },
78
- python_requires='>=3.7',
79
- classifiers=[
80
- 'Development Status :: 3 - Alpha',
81
- 'Intended Audience :: Developers',
82
- 'Programming Language :: Python :: 3',
83
- 'Programming Language :: Python :: 3.7',
84
- 'Programming Language :: Python :: 3.8',
85
- 'Programming Language :: Python :: 3.9',
86
- 'Programming Language :: Python :: 3.10',
87
- 'Programming Language :: Python :: 3.11',
88
- ],
89
- )