databricks-agentbricks 0.2.0__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.
- databricks_agentbricks/__init__.py +1 -0
- databricks_agentbricks/_group.py +217 -0
- databricks_agentbricks/agent_project.py +657 -0
- databricks_agentbricks/app_resources.py +139 -0
- databricks_agentbricks/cli/__init__.py +12 -0
- databricks_agentbricks/cli/app.py +108 -0
- databricks_agentbricks/cli/app_auth.py +198 -0
- databricks_agentbricks/cli/auth.py +142 -0
- databricks_agentbricks/cli/deploy.py +954 -0
- databricks_agentbricks/cli/dev.py +310 -0
- databricks_agentbricks/cli/endpoint.py +145 -0
- databricks_agentbricks/cli/endpoint_examples.py +33 -0
- databricks_agentbricks/cli/endpoint_output.py +53 -0
- databricks_agentbricks/cli/endpoint_request.py +71 -0
- databricks_agentbricks/cli/endpoint_transport.py +148 -0
- databricks_agentbricks/cli/help.py +467 -0
- databricks_agentbricks/cli/init.py +496 -0
- databricks_agentbricks/cli/mcp.py +75 -0
- databricks_agentbricks/cli/memory.py +520 -0
- databricks_agentbricks/cli/sandbox.py +823 -0
- databricks_agentbricks/cli/sessions.py +588 -0
- databricks_agentbricks/cli/tools.py +456 -0
- databricks_agentbricks/cli/tracing.py +724 -0
- databricks_agentbricks/databricks_cli.py +38 -0
- databricks_agentbricks/errors.py +114 -0
- databricks_agentbricks/lakebase_runtime_store.py +107 -0
- databricks_agentbricks/legacy_lakebase_runtime_store.py +74 -0
- databricks_agentbricks/project_config.py +157 -0
- databricks_agentbricks/project_types.py +55 -0
- databricks_agentbricks/py.typed +0 -0
- databricks_agentbricks/render.py +349 -0
- databricks_agentbricks/templates/agent-bricks-migrate/SKILL.md +101 -0
- databricks_agentbricks/templates/agent-langgraph/.env.example +36 -0
- databricks_agentbricks/templates/agent-langgraph/.gitignore +199 -0
- databricks_agentbricks/templates/agent-langgraph/AGENTKIT_CONTRACT.md +95 -0
- databricks_agentbricks/templates/agent-langgraph/AGENTS.md +31 -0
- databricks_agentbricks/templates/agent-langgraph/CLAUDE.md +1 -0
- databricks_agentbricks/templates/agent-langgraph/README.md +141 -0
- databricks_agentbricks/templates/agent-langgraph/agent/__init__.py +0 -0
- databricks_agentbricks/templates/agent-langgraph/agent/agent.py +177 -0
- databricks_agentbricks/templates/agent-langgraph/agent/mcps.py +27 -0
- databricks_agentbricks/templates/agent-langgraph/agent/tools/__init__.py +24 -0
- databricks_agentbricks/templates/agent-langgraph/agent/tools/sample_tool.py +15 -0
- databricks_agentbricks/templates/agent-langgraph/agent/tools/send_message.py +17 -0
- databricks_agentbricks/templates/agent-langgraph/app.yaml +15 -0
- databricks_agentbricks/templates/agent-langgraph/pyproject.toml +42 -0
- databricks_agentbricks/templates/agent-langgraph/runtime/__init__.py +0 -0
- databricks_agentbricks/templates/agent-langgraph/runtime/adapter.py +144 -0
- databricks_agentbricks/templates/agent-langgraph/runtime/main.py +25 -0
- databricks_agentbricks/templates/agent-langgraph/tests/__init__.py +0 -0
- databricks_agentbricks/templates/agent-langgraph/tests/test_agent.py +211 -0
- databricks_agentbricks/templates/agent-langgraph/tests/test_runtime.py +19 -0
- databricks_agentbricks/templates/agent-langgraph/tests/test_workspace.py +28 -0
- databricks_agentbricks/templates/agent-openai/.env.example +37 -0
- databricks_agentbricks/templates/agent-openai/.gitignore +199 -0
- databricks_agentbricks/templates/agent-openai/AGENTKIT_CONTRACT.md +107 -0
- databricks_agentbricks/templates/agent-openai/AGENTS.md +76 -0
- databricks_agentbricks/templates/agent-openai/CLAUDE.md +1 -0
- databricks_agentbricks/templates/agent-openai/README.md +143 -0
- databricks_agentbricks/templates/agent-openai/agent/__init__.py +0 -0
- databricks_agentbricks/templates/agent-openai/agent/agent.py +205 -0
- databricks_agentbricks/templates/agent-openai/agent/mcps.py +28 -0
- databricks_agentbricks/templates/agent-openai/agent/tools/__init__.py +24 -0
- databricks_agentbricks/templates/agent-openai/agent/tools/sample_tool.py +15 -0
- databricks_agentbricks/templates/agent-openai/agent/tools/send_message.py +18 -0
- databricks_agentbricks/templates/agent-openai/app.yaml +15 -0
- databricks_agentbricks/templates/agent-openai/pyproject.toml +42 -0
- databricks_agentbricks/templates/agent-openai/runtime/__init__.py +0 -0
- databricks_agentbricks/templates/agent-openai/runtime/adapter.py +188 -0
- databricks_agentbricks/templates/agent-openai/runtime/main.py +25 -0
- databricks_agentbricks/templates/agent-openai/tests/__init__.py +0 -0
- databricks_agentbricks/templates/agent-openai/tests/test_agent.py +326 -0
- databricks_agentbricks/templates/agent-openai/tests/test_runtime.py +19 -0
- databricks_agentbricks/templates/agent-openai/tests/test_workspace.py +28 -0
- databricks_agentbricks/templates/custom-agent-langgraph/.env.example +1 -0
- databricks_agentbricks/templates/custom-agent-langgraph/.gitignore +11 -0
- databricks_agentbricks/templates/custom-agent-langgraph/README.md +22 -0
- databricks_agentbricks/templates/custom-agent-langgraph/agent/__init__.py +0 -0
- databricks_agentbricks/templates/custom-agent-langgraph/agent/agent.py +27 -0
- databricks_agentbricks/templates/custom-agent-langgraph/app.yaml +1 -0
- databricks_agentbricks/templates/custom-agent-langgraph/pyproject.toml +38 -0
- databricks_agentbricks/templates/custom-agent-langgraph/runtime/__init__.py +0 -0
- databricks_agentbricks/templates/custom-agent-langgraph/runtime/main.py +31 -0
- databricks_agentbricks/templates/custom-agent-langgraph/tests/test_runtime.py +29 -0
- databricks_agentbricks/templates/custom-agent-openai/.env.example +1 -0
- databricks_agentbricks/templates/custom-agent-openai/.gitignore +11 -0
- databricks_agentbricks/templates/custom-agent-openai/README.md +22 -0
- databricks_agentbricks/templates/custom-agent-openai/agent/__init__.py +0 -0
- databricks_agentbricks/templates/custom-agent-openai/agent/agent.py +29 -0
- databricks_agentbricks/templates/custom-agent-openai/app.yaml +1 -0
- databricks_agentbricks/templates/custom-agent-openai/pyproject.toml +38 -0
- databricks_agentbricks/templates/custom-agent-openai/runtime/__init__.py +0 -0
- databricks_agentbricks/templates/custom-agent-openai/runtime/main.py +31 -0
- databricks_agentbricks/templates/custom-agent-openai/tests/test_runtime.py +29 -0
- databricks_agentbricks/templates/sandbox_mcp.py +39 -0
- databricks_agentbricks/templates/sandbox_mcp_langgraph.py +39 -0
- databricks_agentbricks/templates/ui/agent-langgraph/CHAT_APP.md +49 -0
- databricks_agentbricks/templates/ui/agent-langgraph/runtime/main.py +26 -0
- databricks_agentbricks/templates/ui/agent-langgraph/runtime/ui.py +528 -0
- databricks_agentbricks/templates/ui/agent-langgraph/tests/test_demo_ui.py +542 -0
- databricks_agentbricks/templates/ui/agent-langgraph/ui/agentbricks-mark.png +0 -0
- databricks_agentbricks/templates/ui/agent-langgraph/ui/app.js +1464 -0
- databricks_agentbricks/templates/ui/agent-langgraph/ui/index.html +281 -0
- databricks_agentbricks/templates/ui/agent-langgraph/ui/styles.css +1913 -0
- databricks_agentbricks/templates/ui/agent-openai/CHAT_APP.md +54 -0
- databricks_agentbricks/templates/ui/agent-openai/runtime/main.py +26 -0
- databricks_agentbricks/templates/ui/agent-openai/runtime/ui.py +521 -0
- databricks_agentbricks/templates/ui/agent-openai/tests/test_demo_ui.py +512 -0
- databricks_agentbricks/templates/ui/agent-openai/ui/agentbricks-mark.png +0 -0
- databricks_agentbricks/templates/ui/agent-openai/ui/app.js +1428 -0
- databricks_agentbricks/templates/ui/agent-openai/ui/index.html +281 -0
- databricks_agentbricks/templates/ui/agent-openai/ui/styles.css +1913 -0
- databricks_agentbricks/theme.py +72 -0
- databricks_agentbricks-0.2.0.dist-info/METADATA +897 -0
- databricks_agentbricks-0.2.0.dist-info/RECORD +159 -0
- databricks_agentbricks-0.2.0.dist-info/WHEEL +4 -0
- databricks_agentbricks-0.2.0.dist-info/entry_points.txt +2 -0
- databricks_agentbricks-0.2.0.dist-info/licenses/NOTICE +39 -0
- databricks_agentkit/__init__.py +67 -0
- databricks_agentkit/_api_client.py +673 -0
- databricks_agentkit/_pagination.py +25 -0
- databricks_agentkit/client.py +31 -0
- databricks_agentkit/langgraph/__init__.py +98 -0
- databricks_agentkit/langgraph/genie.py +50 -0
- databricks_agentkit/langgraph/mcp.py +216 -0
- databricks_agentkit/langgraph/memory.py +67 -0
- databricks_agentkit/langgraph/session_store.py +485 -0
- databricks_agentkit/memory_store.py +371 -0
- databricks_agentkit/models.py +330 -0
- databricks_agentkit/openai/__init__.py +93 -0
- databricks_agentkit/openai/genie.py +50 -0
- databricks_agentkit/openai/mcp.py +189 -0
- databricks_agentkit/openai/memory.py +67 -0
- databricks_agentkit/openai/sessions.py +157 -0
- databricks_agentkit/py.typed +0 -0
- databricks_agentkit/runtime/ARCHITECTURE.md +64 -0
- databricks_agentkit/runtime/README.md +184 -0
- databricks_agentkit/runtime/__init__.py +69 -0
- databricks_agentkit/runtime/app.py +316 -0
- databricks_agentkit/runtime/auth.py +149 -0
- databricks_agentkit/runtime/durability/__init__.py +1 -0
- databricks_agentkit/runtime/durability/execution.py +133 -0
- databricks_agentkit/runtime/durability/heartbeat.py +64 -0
- databricks_agentkit/runtime/durability/lakebase_runtime_store.py +648 -0
- databricks_agentkit/runtime/durability/recovery.py +70 -0
- databricks_agentkit/runtime/durability/store.py +33 -0
- databricks_agentkit/runtime/execution.py +160 -0
- databricks_agentkit/runtime/genie.py +224 -0
- databricks_agentkit/runtime/mcp_auth.py +114 -0
- databricks_agentkit/runtime/model_services.py +90 -0
- databricks_agentkit/runtime/runtime.py +273 -0
- databricks_agentkit/runtime/session_store_client.py +120 -0
- databricks_agentkit/runtime/store.py +287 -0
- databricks_agentkit/runtime/tool_manifest.py +223 -0
- databricks_agentkit/runtime/tracing.py +71 -0
- databricks_agentkit/runtime/types.py +118 -0
- databricks_agentkit/runtime/workspace.py +27 -0
- databricks_agentkit/session_store.py +434 -0
- databricks_agentkit/timefmt.py +85 -0
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
|
+
<meta name="color-scheme" content="light dark" />
|
|
7
|
+
<title>Agent Bricks Workbench</title>
|
|
8
|
+
<link rel="stylesheet" href="/ui-assets/styles.css?v=5" />
|
|
9
|
+
</head>
|
|
10
|
+
<body>
|
|
11
|
+
<div class="app-shell">
|
|
12
|
+
<header class="topbar">
|
|
13
|
+
<div class="brand-lockup">
|
|
14
|
+
<span class="brand-mark" aria-hidden="true">AB</span>
|
|
15
|
+
<div class="brand-copy">
|
|
16
|
+
<h1>Agent Bricks Workbench</h1>
|
|
17
|
+
<p class="brand-sub" id="brand-sub">OpenAI</p>
|
|
18
|
+
</div>
|
|
19
|
+
</div>
|
|
20
|
+
<div class="header-actions">
|
|
21
|
+
<div class="viewer-chip">
|
|
22
|
+
<p id="viewer-value">Loading viewer…</p>
|
|
23
|
+
<span class="avatar" id="viewer-avatar" aria-hidden="true"></span>
|
|
24
|
+
</div>
|
|
25
|
+
</div>
|
|
26
|
+
</header>
|
|
27
|
+
|
|
28
|
+
<div class="trust-strip">
|
|
29
|
+
<span>AI-generated responses can be wrong. Verify important output.</span>
|
|
30
|
+
</div>
|
|
31
|
+
|
|
32
|
+
<main class="workspace">
|
|
33
|
+
<aside class="left-rail" aria-label="Runtime configuration">
|
|
34
|
+
<section class="rail-section left-card">
|
|
35
|
+
<div class="card-block capabilities-block" id="capabilities-block">
|
|
36
|
+
<div class="panel-subhead">
|
|
37
|
+
<h2>Capabilities</h2>
|
|
38
|
+
<div class="subhead-actions">
|
|
39
|
+
<button id="refresh-config" class="icon-button" type="button" aria-label="Refresh capabilities">
|
|
40
|
+
<svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12a9 9 0 1 1-3-6.7L21 8"/><path d="M21 3v5h-5"/></svg>
|
|
41
|
+
</button>
|
|
42
|
+
</div>
|
|
43
|
+
</div>
|
|
44
|
+
<div class="capability-list">
|
|
45
|
+
<div class="capability-item" data-capability="streaming">
|
|
46
|
+
<button class="capability" type="button" aria-expanded="false">
|
|
47
|
+
<span class="capability-icon"><svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M13 2 3 14h7l-1 8 10-12h-7l1-8Z"/></svg></span>
|
|
48
|
+
<span class="capability-copy"><strong>Streaming</strong><small id="streaming-mode-value">Checking…</small></span>
|
|
49
|
+
<span id="streaming-status" class="status-orb"></span>
|
|
50
|
+
<svg class="capability-chevron" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m9 6 6 6-6 6"/></svg>
|
|
51
|
+
</button>
|
|
52
|
+
<div class="capability-detail" hidden></div>
|
|
53
|
+
</div>
|
|
54
|
+
<div class="capability-item" data-capability="background">
|
|
55
|
+
<button class="capability" type="button" aria-expanded="false">
|
|
56
|
+
<span class="capability-icon"><svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="9"/><path d="M12 7v5l3 2"/></svg></span>
|
|
57
|
+
<span class="capability-copy"><strong>Background runs</strong><small id="background-mode-value">Checking…</small></span>
|
|
58
|
+
<span id="background-status" class="status-orb"></span>
|
|
59
|
+
<svg class="capability-chevron" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m9 6 6 6-6 6"/></svg>
|
|
60
|
+
</button>
|
|
61
|
+
<div class="capability-detail" hidden></div>
|
|
62
|
+
</div>
|
|
63
|
+
<div class="capability-item" data-capability="session">
|
|
64
|
+
<button class="capability" type="button" aria-expanded="false">
|
|
65
|
+
<span class="capability-icon"><svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><ellipse cx="12" cy="5" rx="8" ry="3"/><path d="M4 5v6c0 1.7 3.6 3 8 3s8-1.3 8-3V5"/><path d="M4 11v6c0 1.7 3.6 3 8 3s8-1.3 8-3v-6"/></svg></span>
|
|
66
|
+
<span class="capability-copy"><strong>Sessions</strong><small id="session-mode-value">Checking…</small></span>
|
|
67
|
+
<span id="session-status" class="status-orb"></span>
|
|
68
|
+
<svg class="capability-chevron" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m9 6 6 6-6 6"/></svg>
|
|
69
|
+
</button>
|
|
70
|
+
<div class="capability-detail" hidden></div>
|
|
71
|
+
</div>
|
|
72
|
+
<div class="capability-item" data-capability="memory">
|
|
73
|
+
<button class="capability" type="button" aria-expanded="false">
|
|
74
|
+
<span class="capability-icon"><svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4" width="18" height="4" rx="1"/><path d="M5 8v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V8"/><path d="M10 12h4"/></svg></span>
|
|
75
|
+
<span class="capability-copy"><strong>Memory</strong><small id="memory-mode-value">Checking…</small></span>
|
|
76
|
+
<span id="memory-status" class="status-orb"></span>
|
|
77
|
+
<svg class="capability-chevron" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m9 6 6 6-6 6"/></svg>
|
|
78
|
+
</button>
|
|
79
|
+
<div class="capability-detail" hidden></div>
|
|
80
|
+
</div>
|
|
81
|
+
<div class="capability-item" data-capability="traces">
|
|
82
|
+
<button class="capability" type="button" aria-expanded="false">
|
|
83
|
+
<span class="capability-icon"><svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 12h4l3 8 4-16 3 8h4"/></svg></span>
|
|
84
|
+
<span class="capability-copy"><strong>Traces</strong><small id="tracing-mode-value">Checking…</small></span>
|
|
85
|
+
<span id="tracing-status" class="status-orb"></span>
|
|
86
|
+
<svg class="capability-chevron" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m9 6 6 6-6 6"/></svg>
|
|
87
|
+
</button>
|
|
88
|
+
<div class="capability-detail" hidden></div>
|
|
89
|
+
</div>
|
|
90
|
+
</div>
|
|
91
|
+
</div>
|
|
92
|
+
|
|
93
|
+
<div class="card-block memory-pane" id="memory-pane" hidden>
|
|
94
|
+
<div class="panel-subhead">
|
|
95
|
+
<button id="memory-back" class="icon-button" type="button" aria-label="Back to capabilities">
|
|
96
|
+
<svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m15 18-6-6 6-6"/></svg>
|
|
97
|
+
</button>
|
|
98
|
+
<h2>Memory</h2>
|
|
99
|
+
<div class="subhead-actions">
|
|
100
|
+
<button id="memory-refresh" class="icon-button" type="button" aria-label="Refresh memory entries">
|
|
101
|
+
<svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12a9 9 0 1 1-3-6.7L21 8"/><path d="M21 3v5h-5"/></svg>
|
|
102
|
+
</button>
|
|
103
|
+
</div>
|
|
104
|
+
</div>
|
|
105
|
+
<div class="memory-store">
|
|
106
|
+
<span class="memory-store-icon" aria-hidden="true">
|
|
107
|
+
<svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 5a3 3 0 0 0-3 3 3 3 0 0 0-1 5.8V17a2 2 0 0 0 4 0"/><path d="M12 5a3 3 0 0 1 3 3 3 3 0 0 1 1 5.8V17a2 2 0 0 1-4 0"/></svg>
|
|
108
|
+
</span>
|
|
109
|
+
<div class="memory-store-copy">
|
|
110
|
+
<strong id="memory-store-name">Memory store</strong>
|
|
111
|
+
<span id="memory-store-resource"></span>
|
|
112
|
+
</div>
|
|
113
|
+
</div>
|
|
114
|
+
<label class="memory-field-label" for="memory-actor-input">Actor ID</label>
|
|
115
|
+
<p class="memory-field-hint">Memories are scoped to an actor. Change this to browse another actor's entries.</p>
|
|
116
|
+
<input id="memory-actor-input" class="memory-actor" type="text" placeholder="Actor ID" autocomplete="off" spellcheck="false" />
|
|
117
|
+
<div class="memory-search">
|
|
118
|
+
<svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="7"/><path d="m21 21-4.3-4.3"/></svg>
|
|
119
|
+
<label class="sr-only" for="memory-search-input">Search entries</label>
|
|
120
|
+
<input id="memory-search-input" type="search" placeholder="Search entries" autocomplete="off" />
|
|
121
|
+
</div>
|
|
122
|
+
<div id="memory-count" class="memory-count"></div>
|
|
123
|
+
<div id="memory-entries" class="memory-entries" aria-live="polite">
|
|
124
|
+
<div class="state-empty">Loading memory…</div>
|
|
125
|
+
</div>
|
|
126
|
+
</div>
|
|
127
|
+
|
|
128
|
+
<div class="card-block sessions-block">
|
|
129
|
+
<div class="panel-subhead">
|
|
130
|
+
<h2>Sessions</h2>
|
|
131
|
+
<div class="subhead-actions">
|
|
132
|
+
<button id="refresh-session" class="icon-button" type="button" aria-label="Refresh sessions">
|
|
133
|
+
<svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12a9 9 0 1 1-3-6.7L21 8"/><path d="M21 3v5h-5"/></svg>
|
|
134
|
+
</button>
|
|
135
|
+
<button id="new-session" class="text-button" type="button">
|
|
136
|
+
<svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 5v14M5 12h14"/></svg>
|
|
137
|
+
New session
|
|
138
|
+
</button>
|
|
139
|
+
</div>
|
|
140
|
+
</div>
|
|
141
|
+
<div class="session-search">
|
|
142
|
+
<svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="7"/><path d="m21 21-4.3-4.3"/></svg>
|
|
143
|
+
<label class="sr-only" for="session-search-input">Search sessions</label>
|
|
144
|
+
<input id="session-search-input" type="search" placeholder="Search sessions" autocomplete="off" />
|
|
145
|
+
</div>
|
|
146
|
+
<div id="session-list" class="session-list" aria-live="polite">
|
|
147
|
+
<div class="state-empty">Loading sessions…</div>
|
|
148
|
+
</div>
|
|
149
|
+
</div>
|
|
150
|
+
</section>
|
|
151
|
+
|
|
152
|
+
<!-- Kept for the runtime JS contract; surfaced through the chat + session list. -->
|
|
153
|
+
<div class="offscreen" aria-hidden="true">
|
|
154
|
+
<button id="copy-session" type="button"><code id="session-id">Loading…</code><span>Copy</span></button>
|
|
155
|
+
<button id="resume-session" type="button">Approve paused HITL</button>
|
|
156
|
+
<button id="reject-session" type="button">Reject paused HITL</button>
|
|
157
|
+
<p id="session-store-label"></p>
|
|
158
|
+
<div id="session-items"></div>
|
|
159
|
+
</div>
|
|
160
|
+
</aside>
|
|
161
|
+
|
|
162
|
+
<section class="chat-panel" aria-label="Agent chat">
|
|
163
|
+
<div class="chat-header">
|
|
164
|
+
<h2>Chat</h2>
|
|
165
|
+
<span id="run-status" class="run-status">Ready</span>
|
|
166
|
+
</div>
|
|
167
|
+
|
|
168
|
+
<div id="chat-log" class="chat-log" role="log" aria-live="polite" aria-busy="false">
|
|
169
|
+
<div id="empty-state" class="empty-state">
|
|
170
|
+
<div class="empty-mark" aria-hidden="true">
|
|
171
|
+
<svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="1.6" fill="currentColor" stroke="none"/><ellipse cx="12" cy="12" rx="10" ry="4.3"/><ellipse cx="12" cy="12" rx="10" ry="4.3" transform="rotate(60 12 12)"/><ellipse cx="12" cy="12" rx="10" ry="4.3" transform="rotate(120 12 12)"/></svg>
|
|
172
|
+
</div>
|
|
173
|
+
<h2>Start a conversation</h2>
|
|
174
|
+
<p>Test your agent with streaming, background, or sync calls. Messages stay in this session, and every run is correlated with tool and model events.</p>
|
|
175
|
+
<p class="empty-prompts-label">What would you like to test?</p>
|
|
176
|
+
<div class="prompt-grid">
|
|
177
|
+
<button type="button" data-prompt="Use the get_current_time tool and explain what you did.">Use a tool</button>
|
|
178
|
+
<button type="button" data-prompt="Remember in this conversation that my launch color is indigo. Do not use long-term memory.">Test session</button>
|
|
179
|
+
<button type="button" data-prompt="Send a message to demo@databricks.com saying the Agent Bricks demo is ready. Use the send_message tool.">Trigger approval</button>
|
|
180
|
+
</div>
|
|
181
|
+
</div>
|
|
182
|
+
</div>
|
|
183
|
+
|
|
184
|
+
<div id="approval-panel" class="approval-panel" hidden>
|
|
185
|
+
<div>
|
|
186
|
+
<p class="eyebrow">Human approval required</p>
|
|
187
|
+
<p id="approval-summary">A tool is waiting for a decision.</p>
|
|
188
|
+
</div>
|
|
189
|
+
<div class="approval-actions">
|
|
190
|
+
<button id="reject-action" class="text-button" type="button">Reject</button>
|
|
191
|
+
<button id="approve-action" class="text-button" type="button">Approve</button>
|
|
192
|
+
</div>
|
|
193
|
+
</div>
|
|
194
|
+
|
|
195
|
+
<form id="composer" class="composer">
|
|
196
|
+
<label class="sr-only" for="prompt-input">Message the agent</label>
|
|
197
|
+
<textarea id="prompt-input" rows="1" placeholder="Ask your agent anything…"></textarea>
|
|
198
|
+
<div class="composer-footer">
|
|
199
|
+
<div class="mode-switcher" aria-label="Invocation mode">
|
|
200
|
+
<button class="mode-button active" data-mode="streaming" type="button">Streaming</button>
|
|
201
|
+
<button class="mode-button" data-mode="background" type="button">Background</button>
|
|
202
|
+
<button class="mode-button" data-mode="sync" type="button">Sync</button>
|
|
203
|
+
</div>
|
|
204
|
+
<div class="composer-right">
|
|
205
|
+
<span class="composer-model">
|
|
206
|
+
<label class="sr-only" for="model-select">Model</label>
|
|
207
|
+
<select id="model-select" aria-label="Model" disabled>
|
|
208
|
+
<option>Loading models…</option>
|
|
209
|
+
</select>
|
|
210
|
+
<svg class="chevron" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m6 9 6 6 6-6"/></svg>
|
|
211
|
+
</span>
|
|
212
|
+
<button id="send-button" class="send-button" type="submit" disabled>
|
|
213
|
+
<span class="sr-only">Send message</span>
|
|
214
|
+
<svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M12 19V5M5 12l7-7 7 7"/></svg>
|
|
215
|
+
</button>
|
|
216
|
+
</div>
|
|
217
|
+
</div>
|
|
218
|
+
</form>
|
|
219
|
+
</section>
|
|
220
|
+
|
|
221
|
+
<aside class="right-rail" aria-label="Runtime evidence">
|
|
222
|
+
<section class="control-card event-card">
|
|
223
|
+
<div class="panel-head">
|
|
224
|
+
<h2>Events</h2>
|
|
225
|
+
<div class="event-actions">
|
|
226
|
+
<button id="clear-events" class="icon-button" type="button" aria-label="Clear events">
|
|
227
|
+
<svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M7 21 3.7 17.7a2.4 2.4 0 0 1 0-3.4l9-9a2.4 2.4 0 0 1 3.4 0l3.6 3.6a2.4 2.4 0 0 1 0 3.4L13 20"/><path d="M22 21H10"/><path d="m5 15 5 5"/></svg>
|
|
228
|
+
</button>
|
|
229
|
+
<button id="event-view-logs" class="icon-button active" type="button" aria-label="Logs view" aria-pressed="true">
|
|
230
|
+
<svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><path d="M14 2v6h6"/><path d="m10 13-2 2 2 2"/><path d="m14 13 2 2-2 2"/></svg>
|
|
231
|
+
</button>
|
|
232
|
+
<button id="event-view-list" class="icon-button" type="button" aria-label="List view" aria-pressed="false">
|
|
233
|
+
<svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M8 6h13M8 12h13M8 18h13"/><path d="M3 6h.01M3 12h.01M3 18h.01"/></svg>
|
|
234
|
+
</button>
|
|
235
|
+
</div>
|
|
236
|
+
</div>
|
|
237
|
+
<div id="event-filters" class="event-filters" role="tablist" hidden>
|
|
238
|
+
<button class="event-filter active" type="button" data-filter="all">All</button>
|
|
239
|
+
<button class="event-filter" type="button" data-filter="invocation">Invocation</button>
|
|
240
|
+
<button class="event-filter" type="button" data-filter="sessions">Sessions</button>
|
|
241
|
+
<button class="event-filter" type="button" data-filter="memory">Memory</button>
|
|
242
|
+
<button class="event-filter" type="button" data-filter="system">System</button>
|
|
243
|
+
<button class="event-filter" type="button" data-filter="error">Error</button>
|
|
244
|
+
</div>
|
|
245
|
+
<div id="event-log" class="event-log logs-view" role="log">
|
|
246
|
+
<div class="event-empty">
|
|
247
|
+
<svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><path d="M14 2v6h6"/></svg>
|
|
248
|
+
<strong>No events in this session</strong>
|
|
249
|
+
<span>Start an agent run to collect runtime evidence.</span>
|
|
250
|
+
</div>
|
|
251
|
+
</div>
|
|
252
|
+
<div id="event-detail" class="event-detail" hidden>
|
|
253
|
+
<div class="event-detail-head">
|
|
254
|
+
<span>Event payload</span>
|
|
255
|
+
<button id="copy-event-detail" class="icon-button" type="button" aria-label="Copy payload">
|
|
256
|
+
<svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="9" y="9" width="12" height="12" rx="2"/><path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"/></svg>
|
|
257
|
+
</button>
|
|
258
|
+
</div>
|
|
259
|
+
<pre id="event-detail-json"></pre>
|
|
260
|
+
</div>
|
|
261
|
+
</section>
|
|
262
|
+
</aside>
|
|
263
|
+
</main>
|
|
264
|
+
</div>
|
|
265
|
+
|
|
266
|
+
<div id="memory-modal" class="modal-backdrop" hidden>
|
|
267
|
+
<div class="modal-card" role="dialog" aria-modal="true" aria-labelledby="memory-modal-title">
|
|
268
|
+
<div class="modal-head">
|
|
269
|
+
<strong id="memory-modal-title" class="modal-title"></strong>
|
|
270
|
+
<button id="memory-modal-close" class="icon-button" type="button" aria-label="Close">
|
|
271
|
+
<svg class="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 6 6 18M6 6l12 12"/></svg>
|
|
272
|
+
</button>
|
|
273
|
+
</div>
|
|
274
|
+
<div class="modal-body"><pre id="memory-modal-body"></pre></div>
|
|
275
|
+
<div id="memory-modal-foot" class="modal-foot"></div>
|
|
276
|
+
</div>
|
|
277
|
+
</div>
|
|
278
|
+
|
|
279
|
+
<script src="/ui-assets/app.js?v=5" defer></script>
|
|
280
|
+
</body>
|
|
281
|
+
</html>
|