dbagent-cli 0.9.6__tar.gz → 0.9.7__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 (84) hide show
  1. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/PKG-INFO +1 -1
  2. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/__init__.py +1 -1
  3. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/agent/pipeline.py +9 -3
  4. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/connectors/relational.py +5 -1
  5. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent_cli.egg-info/PKG-INFO +1 -1
  6. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/pyproject.toml +1 -1
  7. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/README.md +0 -0
  8. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/agent/confidence.py +0 -0
  9. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/agent/conversation.py +0 -0
  10. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/agent/doctor.py +0 -0
  11. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/agent/error_classifier.py +0 -0
  12. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/agent/generator.py +0 -0
  13. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/agent/recommender.py +0 -0
  14. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/agent/validator.py +0 -0
  15. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/cli.py +0 -0
  16. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/config.py +0 -0
  17. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/connectors/base.py +0 -0
  18. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/connectors/factory.py +0 -0
  19. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/connectors/mongo.py +0 -0
  20. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/execution/__init__.py +0 -0
  21. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/execution/cache.py +0 -0
  22. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/execution/changeset.py +0 -0
  23. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/execution/cost.py +0 -0
  24. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/execution/recovery.py +0 -0
  25. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/execution/sandbox.py +0 -0
  26. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/execution/streaming.py +0 -0
  27. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/llm/anthropic_provider.py +0 -0
  28. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/llm/auto_setup.py +0 -0
  29. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/llm/base.py +0 -0
  30. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/llm/deepseek_provider.py +0 -0
  31. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/llm/factory.py +0 -0
  32. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/llm/gemini_provider.py +0 -0
  33. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/llm/groq_provider.py +0 -0
  34. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/llm/mistral_provider.py +0 -0
  35. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/llm/mock_provider.py +0 -0
  36. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/llm/ollama_provider.py +0 -0
  37. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/llm/openai_provider.py +0 -0
  38. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/llm/openrouter_provider.py +0 -0
  39. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/schema/cache.py +0 -0
  40. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/schema/formatter.py +0 -0
  41. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/schema/graph.py +0 -0
  42. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/schema/ground_truth.py +0 -0
  43. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/schema/models.py +0 -0
  44. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/schema/retriever.py +0 -0
  45. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/schema/selector.py +0 -0
  46. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/security/__init__.py +0 -0
  47. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/security/audit.py +0 -0
  48. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/security/environment.py +0 -0
  49. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/security/masking.py +0 -0
  50. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/security/modes.py +0 -0
  51. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/security/rbac.py +0 -0
  52. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/semantic/__init__.py +0 -0
  53. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/semantic/dictionary.py +0 -0
  54. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/semantic/knowledge.py +0 -0
  55. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/semantic/templates.py +0 -0
  56. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/sql/__init__.py +0 -0
  57. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/sql/optimizer.py +0 -0
  58. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/sql/validator.py +0 -0
  59. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/ui/chat_screen.py +0 -0
  60. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/ui/console.py +0 -0
  61. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/ui/grid_window.py +0 -0
  62. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/ui/viewer.py +0 -0
  63. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent/ui/visualizer.py +0 -0
  64. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent_cli.egg-info/SOURCES.txt +0 -0
  65. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent_cli.egg-info/dependency_links.txt +0 -0
  66. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent_cli.egg-info/entry_points.txt +0 -0
  67. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent_cli.egg-info/requires.txt +0 -0
  68. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/dbagent_cli.egg-info/top_level.txt +0 -0
  69. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/setup.cfg +0 -0
  70. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/tests/test_cache.py +0 -0
  71. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/tests/test_cli.py +0 -0
  72. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/tests/test_connectors.py +0 -0
  73. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/tests/test_direct_sql.py +0 -0
  74. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/tests/test_doctor_and_viz.py +0 -0
  75. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/tests/test_generator.py +0 -0
  76. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/tests/test_graph.py +0 -0
  77. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/tests/test_knowledge.py +0 -0
  78. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/tests/test_providers.py +0 -0
  79. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/tests/test_recovery.py +0 -0
  80. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/tests/test_safety.py +0 -0
  81. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/tests/test_sandbox.py +0 -0
  82. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/tests/test_schema.py +0 -0
  83. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/tests/test_security.py +0 -0
  84. {dbagent_cli-0.9.6 → dbagent_cli-0.9.7}/tests/test_semantic.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dbagent-cli
3
- Version: 0.9.6
3
+ Version: 0.9.7
4
4
  Summary: Enterprise AI Database Copilot, Schema Graph Introspector & Autonomous Recovery 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.9.6"
5
+ __version__ = "0.9.7"
6
6
  __author__ = "Santhosh Gupta"
@@ -238,12 +238,18 @@ class QueryPipeline:
238
238
  exact, fuzzy = [], []
239
239
 
240
240
  # Inherit active tables from conversation context if follow-up prompt doesn't name tables explicitly
241
+ is_inherited = False
241
242
  if not exact and not fuzzy:
242
243
  inherited = self.conversation.get_active_tables()
243
244
  if inherited:
244
245
  exact = inherited[:8]
246
+ is_inherited = True
245
247
 
246
- sub_schema, join_steps = self._get_fast_schema_context(user_prompt, exact, fuzzy)
248
+ effective_prompt = user_prompt
249
+ if is_inherited and exact:
250
+ effective_prompt = f"Focus strictly on the architecture, linkages, and data flow between {', '.join(exact[:5])}. User request: {user_prompt}"
251
+
252
+ sub_schema, join_steps = self._get_fast_schema_context(effective_prompt, exact, fuzzy)
247
253
  result.schema = sub_schema
248
254
  result.join_steps = join_steps
249
255
 
@@ -258,9 +264,9 @@ class QueryPipeline:
258
264
  source="user_guidance",
259
265
  )
260
266
 
261
- kb_context = self.knowledge_base.format_prompt_context(self.db_name, user_prompt, exact + fuzzy)
267
+ kb_context = self.knowledge_base.format_prompt_context(self.db_name, effective_prompt, exact + fuzzy)
262
268
  conv_history = self.conversation.format_context_for_prompt()
263
- analysis_prompt = f"{kb_context}\n\n{user_prompt}" if kb_context else user_prompt
269
+ analysis_prompt = f"{kb_context}\n\n{effective_prompt}" if kb_context else effective_prompt
264
270
 
265
271
  result.message = self.generator.generate_analysis_response(
266
272
  schema=sub_schema,
@@ -47,7 +47,7 @@ def _fuzzy_match_tables(table_names: List[str], user_prompt: str) -> Tuple[List[
47
47
  exact: List[str] = []
48
48
  fuzzy: List[str] = []
49
49
 
50
- # Extract meaningful words from the prompt (3+ chars, skip SQL keywords)
50
+ # Extract meaningful words from the prompt (3+ chars, skip SQL keywords and diagram meta-terms)
51
51
  sql_keywords = {
52
52
  "select", "from", "where", "join", "left", "right", "inner", "outer",
53
53
  "order", "group", "having", "limit", "offset", "insert", "update",
@@ -57,6 +57,10 @@ def _fuzzy_match_tables(table_names: List[str], user_prompt: str) -> Tuple[List[
57
57
  "drop", "index", "primary", "foreign", "key", "null", "default",
58
58
  "hour", "minute", "day", "week", "month", "year", "ago", "today",
59
59
  "give", "tell", "want", "need", "please", "display", "fetch",
60
+ "flow", "diagram", "chart", "graph", "link", "links", "structure",
61
+ "design", "model", "blueprint", "mapping", "mappings", "overview",
62
+ "query", "code", "script", "report", "summary", "relation",
63
+ "relations", "relationship", "relationships", "architecture", "check",
60
64
  }
61
65
  prompt_words = set()
62
66
  for word in re.findall(r"\b[a-z_][a-z0-9_]*\b", prompt_lower):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dbagent-cli
3
- Version: 0.9.6
3
+ Version: 0.9.7
4
4
  Summary: Enterprise AI Database Copilot, Schema Graph Introspector & Autonomous Recovery Agent (CLI)
5
5
  Author: Santhosh Gupta
6
6
  Requires-Python: >=3.9
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "dbagent-cli"
7
- version = "0.9.6"
7
+ version = "0.9.7"
8
8
  description = "Enterprise AI Database Copilot, Schema Graph Introspector & Autonomous Recovery Agent (CLI)"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
File without changes
File without changes
File without changes