maverick-dashboard 0.1.2__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.
- maverick_dashboard-0.1.2/PKG-INFO +57 -0
- maverick_dashboard-0.1.2/README.md +42 -0
- maverick_dashboard-0.1.2/maverick_dashboard/__init__.py +3 -0
- maverick_dashboard-0.1.2/maverick_dashboard/api.py +724 -0
- maverick_dashboard-0.1.2/maverick_dashboard/app.py +1228 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/404.html +15 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/500.html +18 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/audit.html +121 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/base.html +218 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/cache.html +98 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/channels.html +42 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/chat.html +76 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/chat_goal.html +244 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/facts.html +19 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/goals.html +34 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/index.html +108 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/mcp.html +37 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/permissions.html +130 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/plan_tree.html +49 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/plugins.html +58 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/providers.html +53 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/skills.html +80 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/spend.html +58 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/store.html +101 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/tools.html +31 -0
- maverick_dashboard-0.1.2/maverick_dashboard/templates/trajectory.html +113 -0
- maverick_dashboard-0.1.2/maverick_dashboard.egg-info/PKG-INFO +57 -0
- maverick_dashboard-0.1.2/maverick_dashboard.egg-info/SOURCES.txt +59 -0
- maverick_dashboard-0.1.2/maverick_dashboard.egg-info/dependency_links.txt +1 -0
- maverick_dashboard-0.1.2/maverick_dashboard.egg-info/entry_points.txt +2 -0
- maverick_dashboard-0.1.2/maverick_dashboard.egg-info/requires.txt +5 -0
- maverick_dashboard-0.1.2/maverick_dashboard.egg-info/top_level.txt +1 -0
- maverick_dashboard-0.1.2/pyproject.toml +32 -0
- maverick_dashboard-0.1.2/setup.cfg +4 -0
- maverick_dashboard-0.1.2/tests/test_api.py +401 -0
- maverick_dashboard-0.1.2/tests/test_api_robustness.py +59 -0
- maverick_dashboard-0.1.2/tests/test_app.py +62 -0
- maverick_dashboard-0.1.2/tests/test_chat_streaming.py +93 -0
- maverick_dashboard-0.1.2/tests/test_control_surface.py +304 -0
- maverick_dashboard-0.1.2/tests/test_error_pages.py +54 -0
- maverick_dashboard-0.1.2/tests/test_fact_validation.py +39 -0
- maverick_dashboard-0.1.2/tests/test_input_validation.py +71 -0
- maverick_dashboard-0.1.2/tests/test_more_control_surface.py +229 -0
- maverick_dashboard-0.1.2/tests/test_perf.py +217 -0
- maverick_dashboard-0.1.2/tests/test_permissions.py +95 -0
- maverick_dashboard-0.1.2/tests/test_provider_key_check.py +80 -0
- maverick_dashboard-0.1.2/tests/test_security.py +212 -0
- maverick_dashboard-0.1.2/tests/test_sse.py +139 -0
- maverick_dashboard-0.1.2/tests/test_sse_robustness.py +80 -0
- maverick_dashboard-0.1.2/tests/test_store.py +140 -0
- maverick_dashboard-0.1.2/tests/test_ui.py +135 -0
- maverick_dashboard-0.1.2/tests/test_ui_hardening.py +109 -0
- maverick_dashboard-0.1.2/tests/test_ui_hardening_10.py +55 -0
- maverick_dashboard-0.1.2/tests/test_ui_hardening_2.py +127 -0
- maverick_dashboard-0.1.2/tests/test_ui_hardening_3.py +80 -0
- maverick_dashboard-0.1.2/tests/test_ui_hardening_4.py +43 -0
- maverick_dashboard-0.1.2/tests/test_ui_hardening_5.py +41 -0
- maverick_dashboard-0.1.2/tests/test_ui_hardening_6.py +31 -0
- maverick_dashboard-0.1.2/tests/test_ui_hardening_7.py +74 -0
- maverick_dashboard-0.1.2/tests/test_ui_hardening_8.py +77 -0
- maverick_dashboard-0.1.2/tests/test_ui_hardening_9.py +68 -0
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: maverick-dashboard
|
|
3
|
+
Version: 0.1.2
|
|
4
|
+
Summary: Local web dashboard + REST API for Maverick (FastAPI + htmx)
|
|
5
|
+
Author: cdayAI
|
|
6
|
+
License: MIT
|
|
7
|
+
Project-URL: Homepage, https://github.com/cdayAI/maverick
|
|
8
|
+
Requires-Python: >=3.10
|
|
9
|
+
Description-Content-Type: text/markdown
|
|
10
|
+
Requires-Dist: maverick-agent>=0.1
|
|
11
|
+
Requires-Dist: fastapi>=0.110
|
|
12
|
+
Requires-Dist: uvicorn>=0.27
|
|
13
|
+
Requires-Dist: jinja2>=3.1
|
|
14
|
+
Requires-Dist: python-multipart>=0.0.9
|
|
15
|
+
|
|
16
|
+
# maverick-dashboard
|
|
17
|
+
|
|
18
|
+
Local web dashboard for Maverick. Reads `~/.maverick/world.db` and
|
|
19
|
+
`~/.maverick/skills/` and surfaces:
|
|
20
|
+
|
|
21
|
+
- Goals: status, plan tree, trajectory replay, cancel, answer pending
|
|
22
|
+
questions inline.
|
|
23
|
+
- Skills: installed list plus an install form (gated behind
|
|
24
|
+
`MAVERICK_ALLOW_SKILL_INSTALL=1`).
|
|
25
|
+
- Facts: persistent key/value memory.
|
|
26
|
+
- Spend: per-episode breakdown with CSV export.
|
|
27
|
+
- Providers / tools / channels / plugins / MCP servers: read-only views
|
|
28
|
+
of what the kernel currently has wired.
|
|
29
|
+
- Audit log: tail and grep over `~/.maverick/audit/`.
|
|
30
|
+
- Halt button: arms `~/.maverick/HALT` from the header on any page.
|
|
31
|
+
|
|
32
|
+
## Design
|
|
33
|
+
|
|
34
|
+
- FastAPI + Jinja2. No React, no build step.
|
|
35
|
+
- Server binds to `127.0.0.1` by default.
|
|
36
|
+
- To bind publicly (`--host 0.0.0.0`), set `MAVERICK_DASHBOARD_TOKEN`
|
|
37
|
+
and send `Authorization: Bearer <token>`. Query-token auth was
|
|
38
|
+
removed in the council security pass because it leaks via Referer
|
|
39
|
+
and access logs.
|
|
40
|
+
- Baseline browser security headers (X-Frame-Options DENY,
|
|
41
|
+
X-Content-Type-Options nosniff, Referrer-Policy no-referrer,
|
|
42
|
+
Cross-Origin-Opener-Policy same-origin) are applied to every response.
|
|
43
|
+
- WorldModel is held as a singleton per DB path so each request
|
|
44
|
+
doesn't reopen SQLite + reapply migrations.
|
|
45
|
+
|
|
46
|
+
## Run
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
pip install -e ./packages/maverick-dashboard
|
|
50
|
+
maverick-dashboard # listens on http://127.0.0.1:8765
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Or via the core CLI:
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
maverick dashboard
|
|
57
|
+
```
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# maverick-dashboard
|
|
2
|
+
|
|
3
|
+
Local web dashboard for Maverick. Reads `~/.maverick/world.db` and
|
|
4
|
+
`~/.maverick/skills/` and surfaces:
|
|
5
|
+
|
|
6
|
+
- Goals: status, plan tree, trajectory replay, cancel, answer pending
|
|
7
|
+
questions inline.
|
|
8
|
+
- Skills: installed list plus an install form (gated behind
|
|
9
|
+
`MAVERICK_ALLOW_SKILL_INSTALL=1`).
|
|
10
|
+
- Facts: persistent key/value memory.
|
|
11
|
+
- Spend: per-episode breakdown with CSV export.
|
|
12
|
+
- Providers / tools / channels / plugins / MCP servers: read-only views
|
|
13
|
+
of what the kernel currently has wired.
|
|
14
|
+
- Audit log: tail and grep over `~/.maverick/audit/`.
|
|
15
|
+
- Halt button: arms `~/.maverick/HALT` from the header on any page.
|
|
16
|
+
|
|
17
|
+
## Design
|
|
18
|
+
|
|
19
|
+
- FastAPI + Jinja2. No React, no build step.
|
|
20
|
+
- Server binds to `127.0.0.1` by default.
|
|
21
|
+
- To bind publicly (`--host 0.0.0.0`), set `MAVERICK_DASHBOARD_TOKEN`
|
|
22
|
+
and send `Authorization: Bearer <token>`. Query-token auth was
|
|
23
|
+
removed in the council security pass because it leaks via Referer
|
|
24
|
+
and access logs.
|
|
25
|
+
- Baseline browser security headers (X-Frame-Options DENY,
|
|
26
|
+
X-Content-Type-Options nosniff, Referrer-Policy no-referrer,
|
|
27
|
+
Cross-Origin-Opener-Policy same-origin) are applied to every response.
|
|
28
|
+
- WorldModel is held as a singleton per DB path so each request
|
|
29
|
+
doesn't reopen SQLite + reapply migrations.
|
|
30
|
+
|
|
31
|
+
## Run
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
pip install -e ./packages/maverick-dashboard
|
|
35
|
+
maverick-dashboard # listens on http://127.0.0.1:8765
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
Or via the core CLI:
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
maverick dashboard
|
|
42
|
+
```
|