cite-agent 1.2.11__tar.gz → 1.2.13__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.11/cite_agent.egg-info → cite_agent-1.2.13}/PKG-INFO +1 -1
  2. cite_agent-1.2.13/cite_agent/__version__.py +1 -0
  3. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/enhanced_ai_agent.py +50 -28
  4. {cite_agent-1.2.11 → cite_agent-1.2.13/cite_agent.egg-info}/PKG-INFO +1 -1
  5. {cite_agent-1.2.11 → cite_agent-1.2.13}/setup.py +1 -1
  6. cite_agent-1.2.11/cite_agent/__version__.py +0 -1
  7. {cite_agent-1.2.11 → cite_agent-1.2.13}/LICENSE +0 -0
  8. {cite_agent-1.2.11 → cite_agent-1.2.13}/MANIFEST.in +0 -0
  9. {cite_agent-1.2.11 → cite_agent-1.2.13}/README.md +0 -0
  10. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/__init__.py +0 -0
  11. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/__main__.py +0 -0
  12. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/account_client.py +0 -0
  13. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/agent_backend_only.py +0 -0
  14. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/ascii_plotting.py +0 -0
  15. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/auth.py +0 -0
  16. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/backend_only_client.py +0 -0
  17. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/cli.py +0 -0
  18. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/cli_conversational.py +0 -0
  19. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/cli_enhanced.py +0 -0
  20. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/cli_workflow.py +0 -0
  21. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/dashboard.py +0 -0
  22. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/rate_limiter.py +0 -0
  23. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/session_manager.py +0 -0
  24. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/setup_config.py +0 -0
  25. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/streaming_ui.py +0 -0
  26. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/telemetry.py +0 -0
  27. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/ui.py +0 -0
  28. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/updater.py +0 -0
  29. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/web_search.py +0 -0
  30. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/workflow.py +0 -0
  31. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent/workflow_integration.py +0 -0
  32. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent.egg-info/SOURCES.txt +0 -0
  33. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent.egg-info/dependency_links.txt +0 -0
  34. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent.egg-info/entry_points.txt +0 -0
  35. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent.egg-info/requires.txt +0 -0
  36. {cite_agent-1.2.11 → cite_agent-1.2.13}/cite_agent.egg-info/top_level.txt +0 -0
  37. {cite_agent-1.2.11 → cite_agent-1.2.13}/docs/BETA_LAUNCH_CHECKLIST.md +0 -0
  38. {cite_agent-1.2.11 → cite_agent-1.2.13}/docs/BETA_RELEASE_CHECKLIST.md +0 -0
  39. {cite_agent-1.2.11 → cite_agent-1.2.13}/docs/ENHANCED_CAPABILITIES.md +0 -0
  40. {cite_agent-1.2.11 → cite_agent-1.2.13}/docs/GROQ_RATE_LIMITS.md +0 -0
  41. {cite_agent-1.2.11 → cite_agent-1.2.13}/docs/INSTALL.md +0 -0
  42. {cite_agent-1.2.11 → cite_agent-1.2.13}/docs/PUBLISHING_PYPI.md +0 -0
  43. {cite_agent-1.2.11 → cite_agent-1.2.13}/docs/SECURE_PACKAGING_GUIDE.md +0 -0
  44. {cite_agent-1.2.11 → cite_agent-1.2.13}/docs/SECURITY_AUDIT.md +0 -0
  45. {cite_agent-1.2.11 → cite_agent-1.2.13}/docs/USER_GETTING_STARTED.md +0 -0
  46. {cite_agent-1.2.11 → cite_agent-1.2.13}/docs/playbooks/BETA_LAUNCH_PLAYBOOK.md +0 -0
  47. {cite_agent-1.2.11 → cite_agent-1.2.13}/requirements.txt +0 -0
  48. {cite_agent-1.2.11 → cite_agent-1.2.13}/setup.cfg +0 -0
  49. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/__init__.py +0 -0
  50. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/__init__.py +0 -0
  51. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/auth_service/__init__.py +0 -0
  52. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/auth_service/auth_manager.py +0 -0
  53. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/graph/__init__.py +0 -0
  54. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/graph/knowledge_graph.py +0 -0
  55. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/llm_service/__init__.py +0 -0
  56. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/llm_service/llm_manager.py +0 -0
  57. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/paper_service/__init__.py +0 -0
  58. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/paper_service/openalex.py +0 -0
  59. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/performance_service/__init__.py +0 -0
  60. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/performance_service/rust_performance.py +0 -0
  61. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/research_service/__init__.py +0 -0
  62. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/research_service/chatbot.py +0 -0
  63. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/research_service/citation_manager.py +0 -0
  64. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/research_service/context_manager.py +0 -0
  65. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/research_service/conversation_manager.py +0 -0
  66. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/research_service/critical_paper_detector.py +0 -0
  67. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/research_service/enhanced_research.py +0 -0
  68. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/research_service/enhanced_synthesizer.py +0 -0
  69. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/research_service/query_generator.py +0 -0
  70. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/research_service/synthesizer.py +0 -0
  71. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/search_service/__init__.py +0 -0
  72. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/search_service/indexer.py +0 -0
  73. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/search_service/search_engine.py +0 -0
  74. {cite_agent-1.2.11 → cite_agent-1.2.13}/src/services/simple_enhanced_main.py +0 -0
  75. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/beta_launch_test_suite.py +0 -0
  76. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/enhanced/test_account_client.py +0 -0
  77. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/enhanced/test_archive_agent.py +0 -0
  78. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/enhanced/test_enhanced_agent_runtime.py +0 -0
  79. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/enhanced/test_reasoning_engine.py +0 -0
  80. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/enhanced/test_setup_config.py +0 -0
  81. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/enhanced/test_tool_framework.py +0 -0
  82. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/integration_test.py +0 -0
  83. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/test_truth_seeking_comprehensive.py +0 -0
  84. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/validation/test_accuracy_system.py +0 -0
  85. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/validation/test_agent_live.py +0 -0
  86. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/validation/test_backend_local.py +0 -0
  87. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/validation/test_cerebras_comparison.py +0 -0
  88. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/validation/test_improved_prompt.py +0 -0
  89. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/validation/test_qualitative_robustness.py +0 -0
  90. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/validation/test_qualitative_system.py +0 -0
  91. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/validation/test_truth_seeking_chinese.py +0 -0
  92. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/validation/test_truth_seeking_comprehensive.py +0 -0
  93. {cite_agent-1.2.11 → cite_agent-1.2.13}/tests/validation/test_truth_seeking_real.py +0 -0
  94. {cite_agent-1.2.11 → cite_agent-1.2.13}/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.11
3
+ Version: 1.2.13
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.13"
@@ -2768,17 +2768,42 @@ class EnhancedNocturnalAgent:
2768
2768
 
2769
2769
  # Generic search if no pronoun or pronoun not resolved
2770
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
- }
2771
+ # SMART EXTRACTION: Use pattern matching + common sense
2772
+ import re
2778
2773
 
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]
2774
+ # Strategy: Look for quoted strings or alphanumeric codes
2775
+ # Priority 1: Quoted strings ("cm522", 'my_folder')
2776
+ quoted = re.findall(r'["\']([^"\']+)["\']', request.question)
2777
+
2778
+ if quoted:
2779
+ search_terms = quoted
2780
+ else:
2781
+ # Priority 2: Alphanumeric codes/IDs (cm522, hw03, proj_2024)
2782
+ # Pattern: letters + numbers mixed, or underscores/dashes
2783
+ codes = re.findall(r'\b([a-zA-Z]*\d+[a-zA-Z0-9_-]*|[a-zA-Z0-9]*[_-]+[a-zA-Z0-9]+)\b', request.question)
2784
+
2785
+ # Priority 3: Capitalize words (likely proper nouns: GitHub, MyProject)
2786
+ capitalized = re.findall(r'\b([A-Z][a-zA-Z0-9_-]+)\b', request.question)
2787
+
2788
+ # Priority 4: Long words (≥ 6 chars, likely meaningful)
2789
+ long_words = re.findall(r'\b([a-zA-Z]{6,})\b', request.question)
2790
+
2791
+ # Combine and dedupe
2792
+ search_terms = list(dict.fromkeys(codes + capitalized + long_words))
2793
+
2794
+ # Filter out common words
2795
+ common = {
2796
+ 'looking', 'folder', 'directory', 'called', 'something',
2797
+ 'downloads', 'documents', 'computer', 'somewhere'
2798
+ }
2799
+ search_terms = [t for t in search_terms if t.lower() not in common][:2]
2800
+
2801
+ debug_mode = os.getenv("NOCTURNAL_DEBUG", "").lower() == "1"
2802
+ if debug_mode:
2803
+ print(f"🔍 EXTRACTED SEARCH TERMS: {search_terms}")
2804
+
2805
+ if not search_terms:
2806
+ search_terms = [''] # Empty search to show "no target found"
2782
2807
 
2783
2808
  # Detect location hints
2784
2809
  search_path = "~" # Default to home
@@ -2788,30 +2813,27 @@ class EnhancedNocturnalAgent:
2788
2813
  search_path = "~/Documents"
2789
2814
 
2790
2815
  search_results = []
2791
- searched_terms = []
2792
2816
 
2793
- for name in potential_names[:2]: # Limit to 2 best candidates
2794
- if name in searched_terms:
2817
+ for name in search_terms:
2818
+ if not name:
2795
2819
  continue
2796
- searched_terms.append(name)
2820
+
2821
+ # Search with increasing depth
2822
+ find_cmd = f"find {search_path} -maxdepth 4 -type d -iname '*{name}*' 2>/dev/null | head -20"
2823
+ find_output = self.execute_command(find_cmd)
2797
2824
 
2798
- # Search with increasing depth if needed
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
-
2808
- if find_output.strip():
2809
- search_results.append(f"Searched for '*{name}*' in {search_path}:\n{find_output}")
2825
+ debug_mode = os.getenv("NOCTURNAL_DEBUG", "").lower() == "1"
2826
+ if debug_mode:
2827
+ print(f"🔍 FIND EXECUTED: {find_cmd}")
2828
+ print(f"🔍 FIND OUTPUT: {repr(find_output)}")
2829
+
2830
+ if find_output.strip():
2831
+ search_results.append(f"Searched for '*{name}*' in {search_path}:\n{find_output}")
2810
2832
 
2811
2833
  if search_results:
2812
2834
  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}"
2835
+ else:
2836
+ api_results["shell_info"]["search_results"] = f"No directories found matching query in {search_path}"
2815
2837
 
2816
2838
  tools_used.append("shell_execution")
2817
2839
  except Exception as e:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cite-agent
3
- Version: 1.2.11
3
+ Version: 1.2.13
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.11",
10
+ version="1.2.13",
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.11"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes