dbagent-cli 0.1.9__tar.gz → 0.2.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.
Files changed (38) hide show
  1. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/PKG-INFO +1 -1
  2. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/__init__.py +1 -1
  3. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/cli.py +27 -15
  4. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent_cli.egg-info/PKG-INFO +1 -1
  5. dbagent_cli-0.2.1/dbagent_cli.egg-info/entry_points.txt +3 -0
  6. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/pyproject.toml +3 -3
  7. dbagent_cli-0.1.9/dbagent_cli.egg-info/entry_points.txt +0 -3
  8. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/README.md +0 -0
  9. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/agent/generator.py +0 -0
  10. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/agent/pipeline.py +0 -0
  11. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/agent/validator.py +0 -0
  12. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/config.py +0 -0
  13. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/connectors/base.py +0 -0
  14. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/connectors/factory.py +0 -0
  15. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/connectors/mongo.py +0 -0
  16. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/connectors/relational.py +0 -0
  17. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/llm/auto_setup.py +0 -0
  18. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/llm/base.py +0 -0
  19. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/llm/factory.py +0 -0
  20. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/llm/gemini_provider.py +0 -0
  21. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/llm/groq_provider.py +0 -0
  22. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/llm/mock_provider.py +0 -0
  23. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/llm/ollama_provider.py +0 -0
  24. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/llm/openrouter_provider.py +0 -0
  25. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/schema/formatter.py +0 -0
  26. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/schema/models.py +0 -0
  27. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/schema/selector.py +0 -0
  28. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/ui/console.py +0 -0
  29. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent/ui/viewer.py +0 -0
  30. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent_cli.egg-info/SOURCES.txt +0 -0
  31. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent_cli.egg-info/dependency_links.txt +0 -0
  32. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent_cli.egg-info/requires.txt +0 -0
  33. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/dbagent_cli.egg-info/top_level.txt +0 -0
  34. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/setup.cfg +0 -0
  35. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/tests/test_cli.py +0 -0
  36. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/tests/test_connectors.py +0 -0
  37. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/tests/test_generator.py +0 -0
  38. {dbagent_cli-0.1.9 → dbagent_cli-0.2.1}/tests/test_schema.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dbagent-cli
3
- Version: 0.1.9
3
+ Version: 0.2.1
4
4
  Summary: Universal Database Introspection and Script Generation AI Agent (CLI)
5
5
  Author: Santhosh Gupta
6
6
  Requires-Python: >=3.9
@@ -2,5 +2,5 @@
2
2
  DB-Agent: Universal Database Introspection and Script Generation AI Agent (CLI).
3
3
  """
4
4
 
5
- __version__ = "0.1.9"
5
+ __version__ = "0.2.1"
6
6
  __author__ = "Santhosh Gupta"
@@ -787,30 +787,30 @@ def config_command():
787
787
  config_mgr.set_setting("default_provider", provider_choice)
788
788
  print_success(f"Default provider updated to [bold]{provider_choice}[/bold]")
789
789
 
790
- if provider_choice == "gemini" or Prompt.ask("Configure Google Gemini API key (Free Tier)?", choices=["y", "n"], default="n") == "y":
791
- key = Prompt.ask("Enter GEMINI_API_KEY (leave blank to skip)", default="")
790
+ if provider_choice == "gemini":
791
+ console.print("[dim]Get your free Gemini API key at: [bold]https://aistudio.google.com/apikey[/bold][/dim]")
792
+ key = Prompt.ask("Enter GEMINI_API_KEY", default=config_mgr.get_setting("gemini_api_key", "")).strip()
792
793
  if key:
793
794
  config_mgr.set_setting("gemini_api_key", key)
794
795
  print_success("Gemini API key saved.")
795
-
796
- if provider_choice == "groq" or Prompt.ask("Configure Groq API key (Free Tier)?", choices=["y", "n"], default="n") == "y":
797
- key = Prompt.ask("Enter GROQ_API_KEY (leave blank to skip)", default="")
796
+ elif provider_choice == "groq":
797
+ console.print("[dim]Get your free Groq API key at: [bold]https://console.groq.com[/bold][/dim]")
798
+ key = Prompt.ask("Enter GROQ_API_KEY", default=config_mgr.get_setting("groq_api_key", "")).strip()
798
799
  if key:
799
800
  config_mgr.set_setting("groq_api_key", key)
800
801
  print_success("Groq API key saved.")
801
-
802
- if provider_choice == "openrouter" or Prompt.ask("Configure OpenRouter API key (Free Tier)?", choices=["y", "n"], default="n") == "y":
803
- key = Prompt.ask("Enter OPENROUTER_API_KEY (leave blank to skip)", default="")
802
+ elif provider_choice == "openrouter":
803
+ console.print("[dim]Get your OpenRouter API key at: [bold]https://openrouter.ai[/bold][/dim]")
804
+ key = Prompt.ask("Enter OPENROUTER_API_KEY", default=config_mgr.get_setting("openrouter_api_key", "")).strip()
804
805
  if key:
805
806
  config_mgr.set_setting("openrouter_api_key", key)
806
807
  print_success("OpenRouter API key saved.")
808
+ elif provider_choice == "ollama":
809
+ base_url = Prompt.ask("Ollama Base URL", default=config_mgr.get_setting("ollama_base_url", "http://localhost:11434")).strip()
810
+ config_mgr.set_setting("ollama_base_url", base_url)
811
+ print_success("Ollama base URL configured.")
807
812
 
808
- if Prompt.ask("\nAdd a new database connection profile?", choices=["y", "n"], default="n") == "y":
809
- p_name = Prompt.ask("Profile Name (e.g. prod_pg, staging, local_dev)")
810
- p_url = Prompt.ask("Connection URL (e.g. postgresql://user:pass@localhost:5432/dbname)")
811
- p_desc = Prompt.ask("Description", default=f"{p_name} database")
812
- config_mgr.save_profile(name=p_name, connection_url=p_url, description=p_desc)
813
- print_success(f"Profile '[bold]{p_name}[/bold]' saved successfully!")
813
+ print_success("Configuration updated successfully!\n")
814
814
 
815
815
 
816
816
  # ---- profiles ----
@@ -1013,5 +1013,17 @@ def use_command(
1013
1013
  print_success(f"Default AI provider switched to [bold cyan]{p}[/bold cyan]!")
1014
1014
 
1015
1015
 
1016
+ def main():
1017
+ """Top-level entry point with graceful Ctrl+C / interrupt handling."""
1018
+ try:
1019
+ app()
1020
+ except (KeyboardInterrupt, EOFError):
1021
+ console.print("\n[dim]Operation cancelled.[/dim]")
1022
+ sys.exit(0)
1023
+ except Exception as e:
1024
+ console.print(f"\n[red]Error:[/red] {e}")
1025
+ sys.exit(1)
1026
+
1027
+
1016
1028
  if __name__ == "__main__":
1017
- app()
1029
+ main()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dbagent-cli
3
- Version: 0.1.9
3
+ Version: 0.2.1
4
4
  Summary: Universal Database Introspection and Script Generation AI Agent (CLI)
5
5
  Author: Santhosh Gupta
6
6
  Requires-Python: >=3.9
@@ -0,0 +1,3 @@
1
+ [console_scripts]
2
+ db-agent = dbagent.cli:main
3
+ dbagent = dbagent.cli:main
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "dbagent-cli"
7
- version = "0.1.9"
7
+ version = "0.2.1"
8
8
  description = "Universal Database Introspection and Script Generation AI Agent (CLI)"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
@@ -35,8 +35,8 @@ dev = [
35
35
  ]
36
36
 
37
37
  [project.scripts]
38
- db-agent = "dbagent.cli:app"
39
- dbagent = "dbagent.cli:app"
38
+ db-agent = "dbagent.cli:main"
39
+ dbagent = "dbagent.cli:main"
40
40
 
41
41
  [tool.setuptools.packages.find]
42
42
  where = ["."]
@@ -1,3 +0,0 @@
1
- [console_scripts]
2
- db-agent = dbagent.cli:app
3
- dbagent = dbagent.cli:app
File without changes
File without changes