cite-agent 1.2.9__tar.gz → 1.2.11__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 cite-agent might be problematic. Click here for more details.

Files changed (94) hide show
  1. {cite_agent-1.2.9/cite_agent.egg-info → cite_agent-1.2.11}/PKG-INFO +1 -1
  2. cite_agent-1.2.11/cite_agent/__version__.py +1 -0
  3. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/cli.py +1 -1
  4. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/enhanced_ai_agent.py +50 -35
  5. {cite_agent-1.2.9 → cite_agent-1.2.11/cite_agent.egg-info}/PKG-INFO +1 -1
  6. {cite_agent-1.2.9 → cite_agent-1.2.11}/setup.py +1 -1
  7. cite_agent-1.2.9/cite_agent/__version__.py +0 -1
  8. {cite_agent-1.2.9 → cite_agent-1.2.11}/LICENSE +0 -0
  9. {cite_agent-1.2.9 → cite_agent-1.2.11}/MANIFEST.in +0 -0
  10. {cite_agent-1.2.9 → cite_agent-1.2.11}/README.md +0 -0
  11. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/__init__.py +0 -0
  12. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/__main__.py +0 -0
  13. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/account_client.py +0 -0
  14. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/agent_backend_only.py +0 -0
  15. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/ascii_plotting.py +0 -0
  16. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/auth.py +0 -0
  17. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/backend_only_client.py +0 -0
  18. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/cli_conversational.py +0 -0
  19. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/cli_enhanced.py +0 -0
  20. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/cli_workflow.py +0 -0
  21. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/dashboard.py +0 -0
  22. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/rate_limiter.py +0 -0
  23. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/session_manager.py +0 -0
  24. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/setup_config.py +0 -0
  25. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/streaming_ui.py +0 -0
  26. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/telemetry.py +0 -0
  27. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/ui.py +0 -0
  28. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/updater.py +0 -0
  29. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/web_search.py +0 -0
  30. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/workflow.py +0 -0
  31. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent/workflow_integration.py +0 -0
  32. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent.egg-info/SOURCES.txt +0 -0
  33. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent.egg-info/dependency_links.txt +0 -0
  34. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent.egg-info/entry_points.txt +0 -0
  35. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent.egg-info/requires.txt +0 -0
  36. {cite_agent-1.2.9 → cite_agent-1.2.11}/cite_agent.egg-info/top_level.txt +0 -0
  37. {cite_agent-1.2.9 → cite_agent-1.2.11}/docs/BETA_LAUNCH_CHECKLIST.md +0 -0
  38. {cite_agent-1.2.9 → cite_agent-1.2.11}/docs/BETA_RELEASE_CHECKLIST.md +0 -0
  39. {cite_agent-1.2.9 → cite_agent-1.2.11}/docs/ENHANCED_CAPABILITIES.md +0 -0
  40. {cite_agent-1.2.9 → cite_agent-1.2.11}/docs/GROQ_RATE_LIMITS.md +0 -0
  41. {cite_agent-1.2.9 → cite_agent-1.2.11}/docs/INSTALL.md +0 -0
  42. {cite_agent-1.2.9 → cite_agent-1.2.11}/docs/PUBLISHING_PYPI.md +0 -0
  43. {cite_agent-1.2.9 → cite_agent-1.2.11}/docs/SECURE_PACKAGING_GUIDE.md +0 -0
  44. {cite_agent-1.2.9 → cite_agent-1.2.11}/docs/SECURITY_AUDIT.md +0 -0
  45. {cite_agent-1.2.9 → cite_agent-1.2.11}/docs/USER_GETTING_STARTED.md +0 -0
  46. {cite_agent-1.2.9 → cite_agent-1.2.11}/docs/playbooks/BETA_LAUNCH_PLAYBOOK.md +0 -0
  47. {cite_agent-1.2.9 → cite_agent-1.2.11}/requirements.txt +0 -0
  48. {cite_agent-1.2.9 → cite_agent-1.2.11}/setup.cfg +0 -0
  49. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/__init__.py +0 -0
  50. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/__init__.py +0 -0
  51. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/auth_service/__init__.py +0 -0
  52. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/auth_service/auth_manager.py +0 -0
  53. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/graph/__init__.py +0 -0
  54. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/graph/knowledge_graph.py +0 -0
  55. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/llm_service/__init__.py +0 -0
  56. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/llm_service/llm_manager.py +0 -0
  57. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/paper_service/__init__.py +0 -0
  58. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/paper_service/openalex.py +0 -0
  59. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/performance_service/__init__.py +0 -0
  60. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/performance_service/rust_performance.py +0 -0
  61. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/research_service/__init__.py +0 -0
  62. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/research_service/chatbot.py +0 -0
  63. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/research_service/citation_manager.py +0 -0
  64. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/research_service/context_manager.py +0 -0
  65. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/research_service/conversation_manager.py +0 -0
  66. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/research_service/critical_paper_detector.py +0 -0
  67. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/research_service/enhanced_research.py +0 -0
  68. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/research_service/enhanced_synthesizer.py +0 -0
  69. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/research_service/query_generator.py +0 -0
  70. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/research_service/synthesizer.py +0 -0
  71. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/search_service/__init__.py +0 -0
  72. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/search_service/indexer.py +0 -0
  73. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/search_service/search_engine.py +0 -0
  74. {cite_agent-1.2.9 → cite_agent-1.2.11}/src/services/simple_enhanced_main.py +0 -0
  75. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/beta_launch_test_suite.py +0 -0
  76. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/enhanced/test_account_client.py +0 -0
  77. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/enhanced/test_archive_agent.py +0 -0
  78. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/enhanced/test_enhanced_agent_runtime.py +0 -0
  79. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/enhanced/test_reasoning_engine.py +0 -0
  80. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/enhanced/test_setup_config.py +0 -0
  81. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/enhanced/test_tool_framework.py +0 -0
  82. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/integration_test.py +0 -0
  83. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/test_truth_seeking_comprehensive.py +0 -0
  84. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/validation/test_accuracy_system.py +0 -0
  85. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/validation/test_agent_live.py +0 -0
  86. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/validation/test_backend_local.py +0 -0
  87. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/validation/test_cerebras_comparison.py +0 -0
  88. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/validation/test_improved_prompt.py +0 -0
  89. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/validation/test_qualitative_robustness.py +0 -0
  90. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/validation/test_qualitative_system.py +0 -0
  91. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/validation/test_truth_seeking_chinese.py +0 -0
  92. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/validation/test_truth_seeking_comprehensive.py +0 -0
  93. {cite_agent-1.2.9 → cite_agent-1.2.11}/tests/validation/test_truth_seeking_real.py +0 -0
  94. {cite_agent-1.2.9 → cite_agent-1.2.11}/tools/security_audit.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cite-agent
3
- Version: 1.2.9
3
+ Version: 1.2.11
4
4
  Summary: Terminal AI assistant for academic research with citation verification
5
5
  Home-page: https://github.com/Spectating101/cite-agent
6
6
  Author: Cite-Agent Team
@@ -0,0 +1 @@
1
+ __version__ = "1.2.11"
@@ -747,7 +747,7 @@ Examples:
747
747
 
748
748
  # Handle version
749
749
  if args.version:
750
- print("Cite Agent v1.2.9")
750
+ print("Cite Agent v1.2.11")
751
751
  print("AI Research Assistant with real data integration")
752
752
  return
753
753
 
@@ -2744,6 +2744,7 @@ class EnhancedNocturnalAgent:
2744
2744
 
2745
2745
  # Check if user is referring to previous context ("it", "there")
2746
2746
  has_pronoun = any(word in question_lower for word in ['it', 'there', 'that folder', 'that directory'])
2747
+ pronoun_resolved = False
2747
2748
 
2748
2749
  if has_pronoun and len(self.conversation_history) > 0:
2749
2750
  # Look for directory path in last assistant message
@@ -2763,52 +2764,66 @@ class EnhancedNocturnalAgent:
2763
2764
  api_results["shell_info"]["directory_contents"] = ls_output
2764
2765
  api_results["shell_info"]["target_path"] = target_path
2765
2766
  tools_used.append("shell_execution")
2766
- # Skip generic search
2767
- break
2768
-
2769
- # Generic search if no pronoun or no path found
2770
- # Common words to ignore
2771
- ignore_words = {
2772
- 'looking', 'find', 'folder', 'directory', 'called', 'something',
2773
- 'forgot', 'name', 'think', 'can', 'you', 'look', 'for', 'somewhere',
2774
- 'computer', 'downloads', 'the', 'this', 'that', 'class', 'investment',
2775
- 'check', 'what', 'into'
2776
- }
2777
-
2778
- # Extract potential target names (prefer short alphanumeric codes)
2779
- all_words = re.findall(r'\b([a-zA-Z0-9_-]+)\b', request.question)
2780
- potential_names = [w for w in all_words if len(w) >= 2 and w.lower() not in ignore_words]
2781
-
2782
- # Detect location hints
2783
- search_path = "~" # Default to home
2784
- if 'downloads' in question_lower:
2785
- search_path = "~/Downloads"
2786
- elif 'documents' in question_lower:
2787
- search_path = "~/Documents"
2767
+ pronoun_resolved = True
2788
2768
 
2789
- search_results = []
2790
- searched_terms = []
2791
-
2792
- for name in potential_names[:2]: # Limit to 2 best candidates
2793
- if name in searched_terms:
2794
- continue
2795
- searched_terms.append(name)
2769
+ # Generic search if no pronoun or pronoun not resolved
2770
+ if not pronoun_resolved:
2771
+ # Common words to ignore
2772
+ ignore_words = {
2773
+ 'looking', 'find', 'folder', 'directory', 'called', 'something',
2774
+ 'forgot', 'name', 'think', 'can', 'you', 'look', 'for', 'somewhere',
2775
+ 'computer', 'downloads', 'the', 'this', 'that', 'class', 'investment',
2776
+ 'check', 'what', 'into'
2777
+ }
2778
+
2779
+ # Extract potential target names (prefer short alphanumeric codes)
2780
+ all_words = re.findall(r'\b([a-zA-Z0-9_-]+)\b', request.question)
2781
+ potential_names = [w for w in all_words if len(w) >= 2 and w.lower() not in ignore_words]
2782
+
2783
+ # Detect location hints
2784
+ search_path = "~" # Default to home
2785
+ if 'downloads' in question_lower:
2786
+ search_path = "~/Downloads"
2787
+ elif 'documents' in question_lower:
2788
+ search_path = "~/Documents"
2796
2789
 
2790
+ search_results = []
2791
+ searched_terms = []
2792
+
2793
+ for name in potential_names[:2]: # Limit to 2 best candidates
2794
+ if name in searched_terms:
2795
+ continue
2796
+ searched_terms.append(name)
2797
+
2797
2798
  # Search with increasing depth if needed
2798
- find_output = self.execute_command(f"find {search_path} -maxdepth 4 -type d -iname '*{name}*' 2>/dev/null | head -20")
2799
+ find_cmd = f"find {search_path} -maxdepth 4 -type d -iname '*{name}*' 2>/dev/null | head -20"
2800
+ find_output = self.execute_command(find_cmd)
2801
+
2802
+ # DEBUG: Log exact output
2803
+ debug_mode = os.getenv("NOCTURNAL_DEBUG", "").lower() == "1"
2804
+ if debug_mode:
2805
+ print(f"🔍 FIND EXECUTED: {find_cmd}")
2806
+ print(f"🔍 FIND OUTPUT: {repr(find_output)}")
2807
+
2799
2808
  if find_output.strip():
2800
2809
  search_results.append(f"Searched for '*{name}*' in {search_path}:\n{find_output}")
2801
-
2802
- if search_results:
2803
- api_results["shell_info"]["search_results"] = "\n\n".join(search_results)
2804
- elif potential_names:
2805
- api_results["shell_info"]["search_results"] = f"No directories matching '{', '.join(searched_terms)}' found in {search_path}"
2810
+
2811
+ if search_results:
2812
+ api_results["shell_info"]["search_results"] = "\n\n".join(search_results)
2813
+ elif potential_names:
2814
+ api_results["shell_info"]["search_results"] = f"No directories matching '{', '.join(searched_terms)}' found in {search_path}"
2806
2815
 
2807
2816
  tools_used.append("shell_execution")
2808
2817
  except Exception as e:
2809
2818
  if debug_mode:
2810
2819
  print(f"🔍 Shell execution failed: {e}")
2811
2820
 
2821
+ # DEBUG: Log exactly what we're sending to backend
2822
+ debug_mode = os.getenv("NOCTURNAL_DEBUG", "").lower() == "1"
2823
+ if debug_mode and api_results.get("shell_info", {}).get("search_results"):
2824
+ print(f"🔍 SENDING TO BACKEND:")
2825
+ print(f"🔍 shell_info.search_results = {repr(api_results['shell_info']['search_results'])}")
2826
+
2812
2827
  # Call backend and UPDATE CONVERSATION HISTORY
2813
2828
  response = await self.call_backend_query(
2814
2829
  query=request.question,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cite-agent
3
- Version: 1.2.9
3
+ Version: 1.2.11
4
4
  Summary: Terminal AI assistant for academic research with citation verification
5
5
  Home-page: https://github.com/Spectating101/cite-agent
6
6
  Author: Cite-Agent Team
@@ -7,7 +7,7 @@ long_description = readme_path.read_text() if readme_path.exists() else "Termina
7
7
 
8
8
  setup(
9
9
  name="cite-agent",
10
- version="1.2.9",
10
+ version="1.2.11",
11
11
  author="Cite-Agent Team",
12
12
  author_email="contact@citeagent.dev",
13
13
  description="Terminal AI assistant for academic research with citation verification",
@@ -1 +0,0 @@
1
- __version__ = "1.2.9"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes