omni-cortex 1.17.0__py3-none-any.whl → 1.17.1__py3-none-any.whl
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.
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/dashboard/backend/main.py +43 -13
- {omni_cortex-1.17.0.dist-info → omni_cortex-1.17.1.dist-info}/METADATA +1 -1
- omni_cortex-1.17.1.dist-info/RECORD +26 -0
- omni_cortex-1.17.0.dist-info/RECORD +0 -26
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/dashboard/backend/.env.example +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/dashboard/backend/backfill_summaries.py +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/dashboard/backend/chat_service.py +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/dashboard/backend/database.py +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/dashboard/backend/image_service.py +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/dashboard/backend/logging_config.py +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/dashboard/backend/models.py +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/dashboard/backend/project_config.py +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/dashboard/backend/project_scanner.py +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/dashboard/backend/prompt_security.py +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/dashboard/backend/pyproject.toml +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/dashboard/backend/security.py +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/dashboard/backend/uv.lock +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/dashboard/backend/websocket_manager.py +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/hooks/post_tool_use.py +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/hooks/pre_tool_use.py +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/hooks/session_utils.py +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/hooks/stop.py +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/hooks/subagent_stop.py +0 -0
- {omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/hooks/user_prompt.py +0 -0
- {omni_cortex-1.17.0.dist-info → omni_cortex-1.17.1.dist-info}/WHEEL +0 -0
- {omni_cortex-1.17.0.dist-info → omni_cortex-1.17.1.dist-info}/entry_points.txt +0 -0
- {omni_cortex-1.17.0.dist-info → omni_cortex-1.17.1.dist-info}/licenses/LICENSE +0 -0
{omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/dashboard/backend/main.py
RENAMED
|
@@ -791,7 +791,8 @@ async def list_activities(
|
|
|
791
791
|
# Ensure migrations are applied (adds summary columns if missing)
|
|
792
792
|
ensure_migrations(project)
|
|
793
793
|
|
|
794
|
-
|
|
794
|
+
activities = get_activities(project, event_type, tool_name, limit, offset)
|
|
795
|
+
return {"activities": activities, "count": len(activities)}
|
|
795
796
|
|
|
796
797
|
|
|
797
798
|
@app.get("/api/timeline")
|
|
@@ -1693,9 +1694,12 @@ async def get_agent_stats_endpoint(
|
|
|
1693
1694
|
# --- ADW Endpoints ---
|
|
1694
1695
|
|
|
1695
1696
|
|
|
1696
|
-
def scan_adw_folder() -> list[dict]:
|
|
1697
|
-
"""Scan agents/ folder for ADW runs."""
|
|
1698
|
-
|
|
1697
|
+
def scan_adw_folder(project_path: str) -> list[dict]:
|
|
1698
|
+
"""Scan agents/ folder for ADW runs relative to project directory."""
|
|
1699
|
+
# Get project directory from db path (e.g., /project/.cortex/cortex.db -> /project)
|
|
1700
|
+
project_dir = Path(project_path).parent.parent if project_path.endswith(".db") else Path(project_path)
|
|
1701
|
+
agents_dir = project_dir / "agents"
|
|
1702
|
+
|
|
1699
1703
|
if not agents_dir.exists():
|
|
1700
1704
|
return []
|
|
1701
1705
|
|
|
@@ -1712,7 +1716,8 @@ def scan_adw_folder() -> list[dict]:
|
|
|
1712
1716
|
"status": state.get("status", "unknown"),
|
|
1713
1717
|
"current_phase": state.get("current_phase", "unknown"),
|
|
1714
1718
|
"phases_completed": len(state.get("completed_phases", [])),
|
|
1715
|
-
"phases_total": 4 # plan, build, validate, release
|
|
1719
|
+
"phases_total": 4, # plan, build, validate, release
|
|
1720
|
+
"project_path": str(project_dir)
|
|
1716
1721
|
})
|
|
1717
1722
|
except json.JSONDecodeError:
|
|
1718
1723
|
pass
|
|
@@ -1724,7 +1729,9 @@ def scan_adw_folder() -> list[dict]:
|
|
|
1724
1729
|
|
|
1725
1730
|
def get_adw_state_with_agents(adw_id: str, db_path: str) -> Optional[dict]:
|
|
1726
1731
|
"""Get ADW state with correlated agent activity."""
|
|
1727
|
-
|
|
1732
|
+
# Get project directory from db path
|
|
1733
|
+
project_dir = Path(db_path).parent.parent if db_path.endswith(".db") else Path(db_path)
|
|
1734
|
+
adw_dir = project_dir / "agents" / adw_id
|
|
1728
1735
|
state_file = adw_dir / "adw_state.json"
|
|
1729
1736
|
|
|
1730
1737
|
if not state_file.exists():
|
|
@@ -1749,17 +1756,37 @@ def get_adw_state_with_agents(adw_id: str, db_path: str) -> Optional[dict]:
|
|
|
1749
1756
|
else:
|
|
1750
1757
|
status = "pending"
|
|
1751
1758
|
|
|
1752
|
-
# Find agents that ran in this phase (from output files)
|
|
1753
|
-
|
|
1759
|
+
# Find agents that ran in this phase (from output files) and count calls
|
|
1760
|
+
phase_agents = []
|
|
1761
|
+
total_phase_calls = 0
|
|
1754
1762
|
if phase_dir.exists():
|
|
1755
1763
|
for output_file in phase_dir.glob("*_output.jsonl"):
|
|
1756
1764
|
agent_name = output_file.stem.replace("_output", "")
|
|
1757
|
-
|
|
1765
|
+
# Count tool_use entries in the JSONL file
|
|
1766
|
+
call_count = 0
|
|
1767
|
+
try:
|
|
1768
|
+
with open(output_file, "r", encoding="utf-8") as f:
|
|
1769
|
+
for line in f:
|
|
1770
|
+
try:
|
|
1771
|
+
entry = json.loads(line)
|
|
1772
|
+
if entry.get("type") == "tool_use":
|
|
1773
|
+
call_count += 1
|
|
1774
|
+
except json.JSONDecodeError:
|
|
1775
|
+
pass
|
|
1776
|
+
except Exception:
|
|
1777
|
+
pass
|
|
1778
|
+
phase_agents.append({
|
|
1779
|
+
"id": agent_name,
|
|
1780
|
+
"call_count": call_count
|
|
1781
|
+
})
|
|
1782
|
+
total_phase_calls += call_count
|
|
1758
1783
|
|
|
1759
1784
|
phases.append({
|
|
1760
1785
|
"name": phase_name,
|
|
1761
1786
|
"status": status,
|
|
1762
|
-
"
|
|
1787
|
+
"agents": phase_agents, # Now includes id and call_count
|
|
1788
|
+
"agent_ids": [a["id"] for a in phase_agents], # Keep for backwards compat
|
|
1789
|
+
"call_count": total_phase_calls,
|
|
1763
1790
|
"duration_seconds": None # Could be computed from timestamps if needed
|
|
1764
1791
|
})
|
|
1765
1792
|
|
|
@@ -1776,9 +1803,12 @@ def get_adw_state_with_agents(adw_id: str, db_path: str) -> Optional[dict]:
|
|
|
1776
1803
|
|
|
1777
1804
|
|
|
1778
1805
|
@app.get("/api/adw/list")
|
|
1779
|
-
async def list_adw_runs(
|
|
1780
|
-
|
|
1781
|
-
|
|
1806
|
+
async def list_adw_runs(
|
|
1807
|
+
project: str = Query(..., description="Path to the database file"),
|
|
1808
|
+
limit: int = Query(20, ge=1, le=100)
|
|
1809
|
+
):
|
|
1810
|
+
"""List all ADW runs from agents/ folder for the selected project."""
|
|
1811
|
+
adw_runs = scan_adw_folder(project)[:limit]
|
|
1782
1812
|
return {"adw_runs": adw_runs, "count": len(adw_runs)}
|
|
1783
1813
|
|
|
1784
1814
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: omni-cortex
|
|
3
|
-
Version: 1.17.
|
|
3
|
+
Version: 1.17.1
|
|
4
4
|
Summary: Give Claude Code a perfect memory - auto-logs everything, searches smartly, and gets smarter over time
|
|
5
5
|
Project-URL: Homepage, https://github.com/AllCytes/Omni-Cortex
|
|
6
6
|
Project-URL: Repository, https://github.com/AllCytes/Omni-Cortex
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/hooks/post_tool_use.py,sha256=zdaKChi8zOghRlHswisCBSQE3kW1MtmM6AFfI_ivvpI,16581
|
|
2
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/hooks/pre_tool_use.py,sha256=3_V6Qw5m40eGrMmm5i94vINzeVxmcJvivdPa69H3AOI,8585
|
|
3
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/hooks/session_utils.py,sha256=3SKPCytqWuRPOupWdzmwBoKBDJqtLcT1Nle_pueDQUY,5746
|
|
4
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/hooks/stop.py,sha256=UroliJsyIS9_lj29-1d_r-80V4AfTMUFCaOjJZv3lwM,6976
|
|
5
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/hooks/subagent_stop.py,sha256=V9HQSFGNOfkg8ZCstPEy4h5V8BP4AbrVr8teFzN1kNk,3314
|
|
6
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/hooks/user_prompt.py,sha256=WNHJvhnkb9rXQ_HDpr6eLpM5vwy1Y1xl1EUoqyNC-x8,6859
|
|
7
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/dashboard/backend/.env.example,sha256=9xS7-UiWlMddRwzlyyyKNHAMlNTsgH-2sPV266guJpQ,372
|
|
8
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/dashboard/backend/backfill_summaries.py,sha256=ElchfcBv4pmVr2PsePCgFlCyuvf4_jDJj_C3AmMhu7U,8973
|
|
9
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/dashboard/backend/chat_service.py,sha256=iEDpAw8OVaHM2312VPcAM-w6dYabUpjaTvWl1jGhqi0,20948
|
|
10
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/dashboard/backend/database.py,sha256=byISCVgVziqFhJ8j8FC99ueTAoo-E0BJ6bk8KUvW3Mg,57610
|
|
11
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/dashboard/backend/image_service.py,sha256=NP6ojFpHb6iNTYRkXqYu1CL6WvooZpZ54mjLiWSWG_g,19205
|
|
12
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/dashboard/backend/logging_config.py,sha256=WnunFGET9zlsn9WBpVsio2zI7BiUQanE0xzAQQxIhII,3944
|
|
13
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/dashboard/backend/main.py,sha256=9-GDfhtqvYZuLaqgmEzn0t-dxCiLdntnD1JA2rNAeCg,67165
|
|
14
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/dashboard/backend/models.py,sha256=mP_szTXuVE4ZWHGubLeCt1-ltroO8OO0vrGC3IM6AJ0,13122
|
|
15
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/dashboard/backend/project_config.py,sha256=ZxGoeRpHvN5qQyf2hRxrAZiHrPSwdQp59f0di6O1LKM,4352
|
|
16
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/dashboard/backend/project_scanner.py,sha256=lwFXS8iJbOoxf7FAyo2TjH25neaMHiJ8B3jS57XxtDI,5713
|
|
17
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/dashboard/backend/prompt_security.py,sha256=LcdZhYy1CfpSq_4BPO6lMJ15phc2ZXLUSBAnAvODVCI,3423
|
|
18
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/dashboard/backend/pyproject.toml,sha256=9pbbGQXLe1Xd06nZAtDySCHIlfMWvPaB-C6tGZR6umc,502
|
|
19
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/dashboard/backend/security.py,sha256=nQsoPE0n5dtY9ive00d33W1gL48GgK7C5Ae0BK2oW2k,3479
|
|
20
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/dashboard/backend/uv.lock,sha256=miB9zGGSirBkjDE-OZTPCnv43Yc98xuAz_Ne8vTNFHg,186004
|
|
21
|
+
omni_cortex-1.17.1.data/data/share/omni-cortex/dashboard/backend/websocket_manager.py,sha256=gNQLd94AcC-InumGQmUolREhiogCzilYWpLN8SRZjHI,3645
|
|
22
|
+
omni_cortex-1.17.1.dist-info/METADATA,sha256=KV97VR11RpCAbpdUVZmp1jvUtKA0Np62riBJrM-ixQo,15712
|
|
23
|
+
omni_cortex-1.17.1.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
24
|
+
omni_cortex-1.17.1.dist-info/entry_points.txt,sha256=rohx4mFH2ffZmMb9QXPZmFf-ZGjA3jpKVDVeET-ttiM,150
|
|
25
|
+
omni_cortex-1.17.1.dist-info/licenses/LICENSE,sha256=oG_397owMmi-Umxp5sYocJ6RPohp9_bDNnnEu9OUphg,1072
|
|
26
|
+
omni_cortex-1.17.1.dist-info/RECORD,,
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/hooks/post_tool_use.py,sha256=zdaKChi8zOghRlHswisCBSQE3kW1MtmM6AFfI_ivvpI,16581
|
|
2
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/hooks/pre_tool_use.py,sha256=3_V6Qw5m40eGrMmm5i94vINzeVxmcJvivdPa69H3AOI,8585
|
|
3
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/hooks/session_utils.py,sha256=3SKPCytqWuRPOupWdzmwBoKBDJqtLcT1Nle_pueDQUY,5746
|
|
4
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/hooks/stop.py,sha256=UroliJsyIS9_lj29-1d_r-80V4AfTMUFCaOjJZv3lwM,6976
|
|
5
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/hooks/subagent_stop.py,sha256=V9HQSFGNOfkg8ZCstPEy4h5V8BP4AbrVr8teFzN1kNk,3314
|
|
6
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/hooks/user_prompt.py,sha256=WNHJvhnkb9rXQ_HDpr6eLpM5vwy1Y1xl1EUoqyNC-x8,6859
|
|
7
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/dashboard/backend/.env.example,sha256=9xS7-UiWlMddRwzlyyyKNHAMlNTsgH-2sPV266guJpQ,372
|
|
8
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/dashboard/backend/backfill_summaries.py,sha256=ElchfcBv4pmVr2PsePCgFlCyuvf4_jDJj_C3AmMhu7U,8973
|
|
9
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/dashboard/backend/chat_service.py,sha256=iEDpAw8OVaHM2312VPcAM-w6dYabUpjaTvWl1jGhqi0,20948
|
|
10
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/dashboard/backend/database.py,sha256=byISCVgVziqFhJ8j8FC99ueTAoo-E0BJ6bk8KUvW3Mg,57610
|
|
11
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/dashboard/backend/image_service.py,sha256=NP6ojFpHb6iNTYRkXqYu1CL6WvooZpZ54mjLiWSWG_g,19205
|
|
12
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/dashboard/backend/logging_config.py,sha256=WnunFGET9zlsn9WBpVsio2zI7BiUQanE0xzAQQxIhII,3944
|
|
13
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/dashboard/backend/main.py,sha256=hTsX_wTXBxwsYwkWEttGXzszWYCjOufqgixEUec_oz4,65563
|
|
14
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/dashboard/backend/models.py,sha256=mP_szTXuVE4ZWHGubLeCt1-ltroO8OO0vrGC3IM6AJ0,13122
|
|
15
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/dashboard/backend/project_config.py,sha256=ZxGoeRpHvN5qQyf2hRxrAZiHrPSwdQp59f0di6O1LKM,4352
|
|
16
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/dashboard/backend/project_scanner.py,sha256=lwFXS8iJbOoxf7FAyo2TjH25neaMHiJ8B3jS57XxtDI,5713
|
|
17
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/dashboard/backend/prompt_security.py,sha256=LcdZhYy1CfpSq_4BPO6lMJ15phc2ZXLUSBAnAvODVCI,3423
|
|
18
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/dashboard/backend/pyproject.toml,sha256=9pbbGQXLe1Xd06nZAtDySCHIlfMWvPaB-C6tGZR6umc,502
|
|
19
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/dashboard/backend/security.py,sha256=nQsoPE0n5dtY9ive00d33W1gL48GgK7C5Ae0BK2oW2k,3479
|
|
20
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/dashboard/backend/uv.lock,sha256=miB9zGGSirBkjDE-OZTPCnv43Yc98xuAz_Ne8vTNFHg,186004
|
|
21
|
-
omni_cortex-1.17.0.data/data/share/omni-cortex/dashboard/backend/websocket_manager.py,sha256=gNQLd94AcC-InumGQmUolREhiogCzilYWpLN8SRZjHI,3645
|
|
22
|
-
omni_cortex-1.17.0.dist-info/METADATA,sha256=Sv2iZ6vOifdsNCMUobDkq3Of_FT6YJERcYxb5vsNU2c,15712
|
|
23
|
-
omni_cortex-1.17.0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
24
|
-
omni_cortex-1.17.0.dist-info/entry_points.txt,sha256=rohx4mFH2ffZmMb9QXPZmFf-ZGjA3jpKVDVeET-ttiM,150
|
|
25
|
-
omni_cortex-1.17.0.dist-info/licenses/LICENSE,sha256=oG_397owMmi-Umxp5sYocJ6RPohp9_bDNnnEu9OUphg,1072
|
|
26
|
-
omni_cortex-1.17.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/dashboard/backend/uv.lock
RENAMED
|
File without changes
|
|
File without changes
|
{omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/hooks/post_tool_use.py
RENAMED
|
File without changes
|
{omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/hooks/pre_tool_use.py
RENAMED
|
File without changes
|
{omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/hooks/session_utils.py
RENAMED
|
File without changes
|
|
File without changes
|
{omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/hooks/subagent_stop.py
RENAMED
|
File without changes
|
{omni_cortex-1.17.0.data → omni_cortex-1.17.1.data}/data/share/omni-cortex/hooks/user_prompt.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|