dbagent-cli 0.3.9__tar.gz → 0.4.0__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.
Files changed (74) hide show
  1. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/PKG-INFO +2 -2
  2. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/__init__.py +1 -1
  3. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/llm/gemini_provider.py +14 -12
  4. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent_cli.egg-info/PKG-INFO +2 -2
  5. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/pyproject.toml +2 -2
  6. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/README.md +0 -0
  7. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/agent/confidence.py +0 -0
  8. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/agent/conversation.py +0 -0
  9. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/agent/doctor.py +0 -0
  10. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/agent/error_classifier.py +0 -0
  11. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/agent/generator.py +0 -0
  12. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/agent/pipeline.py +0 -0
  13. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/agent/recommender.py +0 -0
  14. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/agent/validator.py +0 -0
  15. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/cli.py +0 -0
  16. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/config.py +0 -0
  17. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/connectors/base.py +0 -0
  18. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/connectors/factory.py +0 -0
  19. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/connectors/mongo.py +0 -0
  20. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/connectors/relational.py +0 -0
  21. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/execution/__init__.py +0 -0
  22. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/execution/cache.py +0 -0
  23. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/execution/changeset.py +0 -0
  24. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/execution/cost.py +0 -0
  25. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/execution/recovery.py +0 -0
  26. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/execution/sandbox.py +0 -0
  27. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/execution/streaming.py +0 -0
  28. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/llm/auto_setup.py +0 -0
  29. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/llm/base.py +0 -0
  30. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/llm/factory.py +0 -0
  31. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/llm/groq_provider.py +0 -0
  32. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/llm/mock_provider.py +0 -0
  33. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/llm/ollama_provider.py +0 -0
  34. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/llm/openrouter_provider.py +0 -0
  35. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/schema/cache.py +0 -0
  36. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/schema/formatter.py +0 -0
  37. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/schema/graph.py +0 -0
  38. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/schema/models.py +0 -0
  39. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/schema/retriever.py +0 -0
  40. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/schema/selector.py +0 -0
  41. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/security/__init__.py +0 -0
  42. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/security/audit.py +0 -0
  43. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/security/environment.py +0 -0
  44. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/security/masking.py +0 -0
  45. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/security/modes.py +0 -0
  46. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/security/rbac.py +0 -0
  47. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/semantic/__init__.py +0 -0
  48. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/semantic/dictionary.py +0 -0
  49. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/semantic/templates.py +0 -0
  50. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/sql/__init__.py +0 -0
  51. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/sql/optimizer.py +0 -0
  52. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/sql/validator.py +0 -0
  53. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/ui/console.py +0 -0
  54. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/ui/grid_window.py +0 -0
  55. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/ui/viewer.py +0 -0
  56. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent/ui/visualizer.py +0 -0
  57. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent_cli.egg-info/SOURCES.txt +0 -0
  58. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent_cli.egg-info/dependency_links.txt +0 -0
  59. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent_cli.egg-info/entry_points.txt +0 -0
  60. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent_cli.egg-info/requires.txt +0 -0
  61. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/dbagent_cli.egg-info/top_level.txt +0 -0
  62. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/setup.cfg +0 -0
  63. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/tests/test_cache.py +0 -0
  64. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/tests/test_cli.py +0 -0
  65. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/tests/test_connectors.py +0 -0
  66. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/tests/test_doctor_and_viz.py +0 -0
  67. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/tests/test_generator.py +0 -0
  68. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/tests/test_graph.py +0 -0
  69. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/tests/test_recovery.py +0 -0
  70. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/tests/test_safety.py +0 -0
  71. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/tests/test_sandbox.py +0 -0
  72. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/tests/test_schema.py +0 -0
  73. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/tests/test_security.py +0 -0
  74. {dbagent_cli-0.3.9 → dbagent_cli-0.4.0}/tests/test_semantic.py +0 -0
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dbagent-cli
3
- Version: 0.3.9
4
- Summary: Production-Grade AI Database Copilot with Interactive Desktop & Browser Data Grid Viewers (CLI)
3
+ Version: 0.4.0
4
+ Summary: Enterprise AI Database Copilot with Interactive Data Grid Window & High-Performance LLM (CLI)
5
5
  Author: Santhosh Gupta
6
6
  Requires-Python: >=3.9
7
7
  Description-Content-Type: text/markdown
@@ -2,5 +2,5 @@
2
2
  DB-Agent: Universal Database Introspection and Script Generation AI Agent (CLI).
3
3
  """
4
4
 
5
- __version__ = "0.3.9"
5
+ __version__ = "0.4.0"
6
6
  __author__ = "Santhosh Gupta"
@@ -1,6 +1,6 @@
1
1
  """
2
2
  Google Gemini Free Tier LLM Provider.
3
- Uses Gemini 2.5 Flash / Gemini 2.0 Flash / Gemini 1.5 Flash via direct HTTP API.
3
+ Uses gemini-3.6-flash (current primary), gemini-3.7-flash, gemini-3.5-flash, gemini-flash-latest.
4
4
  """
5
5
 
6
6
  import json
@@ -14,13 +14,15 @@ class GeminiProvider(BaseLLMProvider):
14
14
  """Google Gemini LLM provider (Free Tier available)."""
15
15
 
16
16
  FALLBACK_MODELS = [
17
+ "gemini-3.6-flash",
18
+ "gemini-3.7-flash",
19
+ "gemini-3.5-flash",
20
+ "gemini-flash-latest",
21
+ "gemini-pro-latest",
17
22
  "gemini-2.5-flash",
18
- "gemini-2.0-flash",
19
- "gemini-1.5-flash",
20
- "gemini-1.5-pro",
21
23
  ]
22
24
 
23
- def __init__(self, api_key: Optional[str] = None, default_model: str = "gemini-2.5-flash"):
25
+ def __init__(self, api_key: Optional[str] = None, default_model: str = "gemini-3.6-flash"):
24
26
  self.api_key = api_key or os.getenv("GEMINI_API_KEY")
25
27
  self.default_model = default_model
26
28
 
@@ -82,7 +84,7 @@ class GeminiProvider(BaseLLMProvider):
82
84
 
83
85
  try:
84
86
  if stream_callback:
85
- response = requests.post(endpoint, json=payload, stream=True, timeout=15)
87
+ response = requests.post(endpoint, json=payload, stream=True, timeout=10)
86
88
  if response.status_code == 200:
87
89
  full_text = []
88
90
  for line in response.iter_lines():
@@ -102,13 +104,13 @@ class GeminiProvider(BaseLLMProvider):
102
104
  except Exception:
103
105
  pass
104
106
  return "".join(full_text)
105
- elif response.status_code in (404, 400):
106
- last_error = f"Model {target_model} not available ({response.status_code})"
107
+ elif response.status_code in (404, 400, 503, 429):
108
+ last_error = f"Model {target_model} status {response.status_code}"
107
109
  continue
108
110
  else:
109
111
  raise RuntimeError(f"Gemini API error ({response.status_code}): {response.text}")
110
112
  else:
111
- response = requests.post(endpoint, json=payload, timeout=15)
113
+ response = requests.post(endpoint, json=payload, timeout=10)
112
114
  if response.status_code == 200:
113
115
  data = response.json()
114
116
  candidates = data.get("candidates", [])
@@ -116,13 +118,13 @@ class GeminiProvider(BaseLLMProvider):
116
118
  parts = candidates[0].get("content", {}).get("parts", [])
117
119
  return "".join(p.get("text", "") for p in parts)
118
120
  return ""
119
- elif response.status_code in (404, 400):
120
- last_error = f"Model {target_model} not available ({response.status_code})"
121
+ elif response.status_code in (404, 400, 503, 429):
122
+ last_error = f"Model {target_model} status {response.status_code}"
121
123
  continue
122
124
  else:
123
125
  raise RuntimeError(f"Gemini API error ({response.status_code}): {response.text}")
124
126
  except requests.exceptions.Timeout:
125
- last_error = f"Model {target_model} request timed out"
127
+ last_error = f"Model {target_model} timed out"
126
128
  continue
127
129
  except Exception as e:
128
130
  last_error = str(e)
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dbagent-cli
3
- Version: 0.3.9
4
- Summary: Production-Grade AI Database Copilot with Interactive Desktop & Browser Data Grid Viewers (CLI)
3
+ Version: 0.4.0
4
+ Summary: Enterprise AI Database Copilot with Interactive Data Grid Window & High-Performance LLM (CLI)
5
5
  Author: Santhosh Gupta
6
6
  Requires-Python: >=3.9
7
7
  Description-Content-Type: text/markdown
@@ -4,8 +4,8 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "dbagent-cli"
7
- version = "0.3.9"
8
- description = "Production-Grade AI Database Copilot with Interactive Desktop & Browser Data Grid Viewers (CLI)"
7
+ version = "0.4.0"
8
+ description = "Enterprise AI Database Copilot with Interactive Data Grid Window & High-Performance LLM (CLI)"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
11
11
  authors = [
File without changes
File without changes
File without changes