@aws/agentcore 1.0.0-preview.2 → 1.0.0-preview.20

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.
Files changed (256) hide show
  1. package/README.md +193 -33
  2. package/dist/agent-inspector/index.css +1 -1
  3. package/dist/agent-inspector/index.js +99 -84
  4. package/dist/assets/__tests__/__snapshots__/assets.snapshot.test.ts.snap +3132 -366
  5. package/dist/assets/__tests__/__snapshots__/dockerfile-render.test.ts.snap +6 -2
  6. package/dist/assets/__tests__/assets.snapshot.test.ts +10 -24
  7. package/dist/assets/__tests__/googleadk-session-eviction.test.ts +87 -0
  8. package/dist/assets/__tests__/summarization-namespace.test.ts +43 -0
  9. package/dist/assets/agents/AGENTS.md +87 -11
  10. package/dist/assets/cdk/bin/cdk.ts +87 -26
  11. package/dist/assets/cdk/lib/cdk-stack.ts +185 -55
  12. package/dist/assets/cdk/package.json +1 -1
  13. package/dist/assets/cdk/test/cdk.test.ts +4 -0
  14. package/dist/assets/container/python/Dockerfile +7 -1
  15. package/dist/assets/container/typescript/Dockerfile +25 -0
  16. package/dist/assets/container/typescript/dockerignore.template +24 -0
  17. package/dist/assets/datasets/predefined-v1.jsonl +3 -0
  18. package/dist/assets/datasets/simulated-v1.jsonl +3 -0
  19. package/dist/assets/python/a2a/googleadk/base/main.py +24 -16
  20. package/dist/assets/python/a2a/googleadk/base/pyproject.toml +3 -3
  21. package/dist/assets/python/a2a/langchain_langgraph/base/main.py +24 -16
  22. package/dist/assets/python/a2a/langchain_langgraph/base/pyproject.toml +3 -2
  23. package/dist/assets/python/a2a/strands/base/main.py +23 -17
  24. package/dist/assets/python/a2a/strands/base/pyproject.toml +2 -2
  25. package/dist/assets/python/a2a/strands/capabilities/memory/session.py +10 -2
  26. package/dist/assets/python/agui/googleadk/base/main.py +62 -2
  27. package/dist/assets/python/agui/googleadk/base/pyproject.toml +3 -3
  28. package/dist/assets/python/agui/langchain_langgraph/base/main.py +56 -0
  29. package/dist/assets/python/agui/langchain_langgraph/base/pyproject.toml +2 -1
  30. package/dist/assets/python/agui/strands/base/main.py +63 -1
  31. package/dist/assets/python/agui/strands/base/pyproject.toml +1 -1
  32. package/dist/assets/python/agui/strands/capabilities/memory/session.py +10 -2
  33. package/dist/assets/python/http/autogen/base/main.py +60 -29
  34. package/dist/assets/python/http/autogen/base/pyproject.toml +1 -1
  35. package/dist/assets/python/http/googleadk/base/main.py +69 -24
  36. package/dist/assets/python/http/googleadk/base/mcp_client/client.py +7 -7
  37. package/dist/assets/python/http/googleadk/base/pyproject.toml +2 -1
  38. package/dist/assets/python/http/langchain_langgraph/base/main.py +115 -24
  39. package/dist/assets/python/http/langchain_langgraph/base/mcp_client/client.py +10 -8
  40. package/dist/assets/python/http/langchain_langgraph/base/pyproject.toml +3 -2
  41. package/dist/assets/python/http/openaiagents/base/main.py +61 -32
  42. package/dist/assets/python/http/openaiagents/base/mcp_client/client.py +4 -4
  43. package/dist/assets/python/http/openaiagents/base/pyproject.toml +2 -2
  44. package/dist/assets/python/http/strands/base/main.py +571 -47
  45. package/dist/assets/python/http/strands/base/mcp_client/client.py +49 -6
  46. package/dist/assets/python/http/strands/base/model/load.py +119 -3
  47. package/dist/assets/python/http/strands/base/model/mantle_compat.py +21 -0
  48. package/dist/assets/python/http/strands/base/pyproject.toml +9 -3
  49. package/dist/assets/python/http/strands/base/skills/fetcher.py +279 -0
  50. package/dist/assets/python/http/strands/capabilities/execution-limits/hooks/execution_limits.py +54 -0
  51. package/dist/assets/python/http/strands/capabilities/memory/session.py +10 -2
  52. package/dist/assets/python/http/strands/capabilities/payments/__init__.py +4 -0
  53. package/dist/assets/python/http/strands/capabilities/payments/payments.py +142 -0
  54. package/dist/assets/python/mcp/standalone/base/main.py +58 -0
  55. package/dist/assets/typescript/http/strands/base/README.md +37 -0
  56. package/dist/assets/typescript/http/strands/base/gitignore.template +22 -0
  57. package/dist/assets/typescript/http/strands/base/main.ts +144 -0
  58. package/dist/assets/typescript/http/strands/base/mcp_client/client.ts +11 -0
  59. package/dist/assets/typescript/http/strands/base/model/load.ts +102 -0
  60. package/dist/assets/typescript/http/strands/base/package.json +38 -0
  61. package/dist/assets/typescript/http/strands/base/tsconfig.json +19 -0
  62. package/dist/assets/typescript/http/strands/capabilities/memory/memory.ts +52 -0
  63. package/dist/assets/typescript/http/vercelai/base/README.md +37 -0
  64. package/dist/assets/typescript/http/vercelai/base/gitignore.template +22 -0
  65. package/dist/assets/typescript/http/vercelai/base/main.ts +64 -0
  66. package/dist/assets/typescript/http/vercelai/base/model/load.ts +121 -0
  67. package/dist/assets/typescript/http/vercelai/base/package.json +35 -0
  68. package/dist/assets/typescript/http/vercelai/base/tsconfig.json +19 -0
  69. package/dist/cli/index.mjs +1416 -568
  70. package/dist/lib/errors/index.d.ts +1 -1
  71. package/dist/lib/errors/index.d.ts.map +1 -1
  72. package/dist/lib/errors/index.js +1 -1
  73. package/dist/lib/errors/index.js.map +1 -1
  74. package/dist/lib/errors/types.d.ts +259 -0
  75. package/dist/lib/errors/types.d.ts.map +1 -0
  76. package/dist/lib/errors/types.js +402 -0
  77. package/dist/lib/errors/types.js.map +1 -0
  78. package/dist/lib/errors/zod.d.ts +8 -0
  79. package/dist/lib/errors/zod.d.ts.map +1 -0
  80. package/dist/lib/errors/{config.js → zod.js} +8 -81
  81. package/dist/lib/errors/zod.js.map +1 -0
  82. package/dist/lib/index.d.ts +3 -0
  83. package/dist/lib/index.d.ts.map +1 -1
  84. package/dist/lib/index.js +4 -1
  85. package/dist/lib/index.js.map +1 -1
  86. package/dist/lib/packaging/build-args.js +2 -2
  87. package/dist/lib/packaging/build-args.js.map +1 -1
  88. package/dist/lib/packaging/container.js +5 -5
  89. package/dist/lib/packaging/container.js.map +1 -1
  90. package/dist/lib/packaging/helpers.d.ts +16 -0
  91. package/dist/lib/packaging/helpers.d.ts.map +1 -1
  92. package/dist/lib/packaging/helpers.js +127 -29
  93. package/dist/lib/packaging/helpers.js.map +1 -1
  94. package/dist/lib/packaging/index.d.ts +0 -1
  95. package/dist/lib/packaging/index.d.ts.map +1 -1
  96. package/dist/lib/packaging/index.js +4 -19
  97. package/dist/lib/packaging/index.js.map +1 -1
  98. package/dist/lib/packaging/node.d.ts +2 -2
  99. package/dist/lib/packaging/node.d.ts.map +1 -1
  100. package/dist/lib/packaging/node.js +83 -38
  101. package/dist/lib/packaging/node.js.map +1 -1
  102. package/dist/lib/packaging/python.js +12 -12
  103. package/dist/lib/packaging/python.js.map +1 -1
  104. package/dist/lib/result.d.ts +50 -0
  105. package/dist/lib/result.d.ts.map +1 -0
  106. package/dist/lib/result.js +49 -0
  107. package/dist/lib/result.js.map +1 -0
  108. package/dist/lib/schemas/io/config-io.d.ts +8 -0
  109. package/dist/lib/schemas/io/config-io.d.ts.map +1 -1
  110. package/dist/lib/schemas/io/config-io.js +21 -3
  111. package/dist/lib/schemas/io/config-io.js.map +1 -1
  112. package/dist/lib/schemas/io/global-config.d.ts +40 -0
  113. package/dist/lib/schemas/io/global-config.d.ts.map +1 -0
  114. package/dist/lib/schemas/io/global-config.js +118 -0
  115. package/dist/lib/schemas/io/global-config.js.map +1 -0
  116. package/dist/lib/schemas/io/index.d.ts +1 -2
  117. package/dist/lib/schemas/io/index.d.ts.map +1 -1
  118. package/dist/lib/schemas/io/index.js +1 -4
  119. package/dist/lib/schemas/io/index.js.map +1 -1
  120. package/dist/lib/schemas/io/path-resolver.d.ts +0 -6
  121. package/dist/lib/schemas/io/path-resolver.d.ts.map +1 -1
  122. package/dist/lib/schemas/io/path-resolver.js +3 -13
  123. package/dist/lib/schemas/io/path-resolver.js.map +1 -1
  124. package/dist/lib/secrets/cipher.d.ts +12 -0
  125. package/dist/lib/secrets/cipher.d.ts.map +1 -0
  126. package/dist/lib/secrets/cipher.js +54 -0
  127. package/dist/lib/secrets/cipher.js.map +1 -0
  128. package/dist/lib/secrets/index.d.ts +4 -0
  129. package/dist/lib/secrets/index.d.ts.map +1 -0
  130. package/dist/lib/secrets/index.js +15 -0
  131. package/dist/lib/secrets/index.js.map +1 -0
  132. package/dist/lib/secrets/key-provider.d.ts +16 -0
  133. package/dist/lib/secrets/key-provider.d.ts.map +1 -0
  134. package/dist/lib/secrets/key-provider.js +191 -0
  135. package/dist/lib/secrets/key-provider.js.map +1 -0
  136. package/dist/lib/secrets/sensitive-keys.d.ts +21 -0
  137. package/dist/lib/secrets/sensitive-keys.d.ts.map +1 -0
  138. package/dist/lib/secrets/sensitive-keys.js +67 -0
  139. package/dist/lib/secrets/sensitive-keys.js.map +1 -0
  140. package/dist/lib/time-constants.d.ts +5 -0
  141. package/dist/lib/time-constants.d.ts.map +1 -0
  142. package/dist/lib/time-constants.js +8 -0
  143. package/dist/lib/time-constants.js.map +1 -0
  144. package/dist/lib/utils/env.d.ts +8 -2
  145. package/dist/lib/utils/env.d.ts.map +1 -1
  146. package/dist/lib/utils/env.js +65 -17
  147. package/dist/lib/utils/env.js.map +1 -1
  148. package/dist/lib/utils/index.d.ts +3 -2
  149. package/dist/lib/utils/index.d.ts.map +1 -1
  150. package/dist/lib/utils/index.js +6 -1
  151. package/dist/lib/utils/index.js.map +1 -1
  152. package/dist/lib/utils/polling.d.ts +31 -0
  153. package/dist/lib/utils/polling.d.ts.map +1 -0
  154. package/dist/lib/utils/polling.js +61 -0
  155. package/dist/lib/utils/polling.js.map +1 -0
  156. package/dist/lib/utils/zod.d.ts +16 -0
  157. package/dist/lib/utils/zod.d.ts.map +1 -1
  158. package/dist/lib/utils/zod.js +45 -0
  159. package/dist/lib/utils/zod.js.map +1 -1
  160. package/dist/schema/constants.d.ts +56 -2
  161. package/dist/schema/constants.d.ts.map +1 -1
  162. package/dist/schema/constants.js +82 -7
  163. package/dist/schema/constants.js.map +1 -1
  164. package/dist/schema/schemas/agent-env.d.ts +156 -6
  165. package/dist/schema/schemas/agent-env.d.ts.map +1 -1
  166. package/dist/schema/schemas/agent-env.js +186 -13
  167. package/dist/schema/schemas/agent-env.js.map +1 -1
  168. package/dist/schema/schemas/agentcore-project.d.ts +446 -11
  169. package/dist/schema/schemas/agentcore-project.d.ts.map +1 -1
  170. package/dist/schema/schemas/agentcore-project.js +283 -18
  171. package/dist/schema/schemas/agentcore-project.js.map +1 -1
  172. package/dist/schema/schemas/auth.d.ts +174 -0
  173. package/dist/schema/schemas/auth.d.ts.map +1 -1
  174. package/dist/schema/schemas/auth.js +127 -3
  175. package/dist/schema/schemas/auth.js.map +1 -1
  176. package/dist/schema/schemas/connections.d.ts +185 -0
  177. package/dist/schema/schemas/connections.d.ts.map +1 -0
  178. package/dist/schema/schemas/connections.js +176 -0
  179. package/dist/schema/schemas/connections.js.map +1 -0
  180. package/dist/schema/schemas/deployed-state.d.ts +361 -5
  181. package/dist/schema/schemas/deployed-state.d.ts.map +1 -1
  182. package/dist/schema/schemas/deployed-state.js +105 -2
  183. package/dist/schema/schemas/deployed-state.js.map +1 -1
  184. package/dist/schema/schemas/index.d.ts +1 -0
  185. package/dist/schema/schemas/index.d.ts.map +1 -1
  186. package/dist/schema/schemas/index.js +1 -0
  187. package/dist/schema/schemas/index.js.map +1 -1
  188. package/dist/schema/schemas/mcp-defs.d.ts +2 -1
  189. package/dist/schema/schemas/mcp-defs.d.ts.map +1 -1
  190. package/dist/schema/schemas/mcp-defs.js +3 -2
  191. package/dist/schema/schemas/mcp-defs.js.map +1 -1
  192. package/dist/schema/schemas/mcp.d.ts +197 -0
  193. package/dist/schema/schemas/mcp.d.ts.map +1 -1
  194. package/dist/schema/schemas/mcp.js +342 -6
  195. package/dist/schema/schemas/mcp.js.map +1 -1
  196. package/dist/schema/schemas/primitives/ab-test.d.ts +135 -0
  197. package/dist/schema/schemas/primitives/ab-test.d.ts.map +1 -0
  198. package/dist/schema/schemas/primitives/ab-test.js +95 -0
  199. package/dist/schema/schemas/primitives/ab-test.js.map +1 -0
  200. package/dist/schema/schemas/primitives/config-bundle.d.ts +32 -0
  201. package/dist/schema/schemas/primitives/config-bundle.d.ts.map +1 -0
  202. package/dist/schema/schemas/primitives/config-bundle.js +41 -0
  203. package/dist/schema/schemas/primitives/config-bundle.js.map +1 -0
  204. package/dist/schema/schemas/primitives/dataset.d.ts +48 -0
  205. package/dist/schema/schemas/primitives/dataset.d.ts.map +1 -0
  206. package/dist/schema/schemas/primitives/dataset.js +58 -0
  207. package/dist/schema/schemas/primitives/dataset.js.map +1 -0
  208. package/dist/schema/schemas/primitives/evaluator.d.ts +8 -0
  209. package/dist/schema/schemas/primitives/evaluator.d.ts.map +1 -1
  210. package/dist/schema/schemas/primitives/evaluator.js +17 -1
  211. package/dist/schema/schemas/primitives/evaluator.js.map +1 -1
  212. package/dist/schema/schemas/primitives/harness.d.ts +377 -19
  213. package/dist/schema/schemas/primitives/harness.d.ts.map +1 -1
  214. package/dist/schema/schemas/primitives/harness.js +379 -24
  215. package/dist/schema/schemas/primitives/harness.js.map +1 -1
  216. package/dist/schema/schemas/primitives/index.d.ts +13 -7
  217. package/dist/schema/schemas/primitives/index.d.ts.map +1 -1
  218. package/dist/schema/schemas/primitives/index.js +37 -1
  219. package/dist/schema/schemas/primitives/index.js.map +1 -1
  220. package/dist/schema/schemas/primitives/knowledge-base.d.ts +104 -0
  221. package/dist/schema/schemas/primitives/knowledge-base.d.ts.map +1 -0
  222. package/dist/schema/schemas/primitives/knowledge-base.js +99 -0
  223. package/dist/schema/schemas/primitives/knowledge-base.js.map +1 -0
  224. package/dist/schema/schemas/primitives/memory.d.ts +22 -4
  225. package/dist/schema/schemas/primitives/memory.d.ts.map +1 -1
  226. package/dist/schema/schemas/primitives/memory.js +57 -16
  227. package/dist/schema/schemas/primitives/memory.js.map +1 -1
  228. package/dist/schema/schemas/primitives/online-eval-config.d.ts +21 -2
  229. package/dist/schema/schemas/primitives/online-eval-config.d.ts.map +1 -1
  230. package/dist/schema/schemas/primitives/online-eval-config.js +45 -5
  231. package/dist/schema/schemas/primitives/online-eval-config.js.map +1 -1
  232. package/dist/schema/schemas/primitives/payment.d.ts +54 -0
  233. package/dist/schema/schemas/primitives/payment.d.ts.map +1 -0
  234. package/dist/schema/schemas/primitives/payment.js +79 -0
  235. package/dist/schema/schemas/primitives/payment.js.map +1 -0
  236. package/dist/schema/schemas/primitives/policy.d.ts +26 -0
  237. package/dist/schema/schemas/primitives/policy.d.ts.map +1 -1
  238. package/dist/schema/schemas/primitives/policy.js +5 -1
  239. package/dist/schema/schemas/primitives/policy.js.map +1 -1
  240. package/npm-shrinkwrap.json +17013 -0
  241. package/package.json +43 -21
  242. package/scripts/bump-version.ts +4 -4
  243. package/scripts/bundle.mjs +70 -41
  244. package/scripts/run-e2e-dev.sh +56 -0
  245. package/scripts/run-e2e-local.sh +145 -0
  246. package/dist/lib/errors/config.d.ts +0 -49
  247. package/dist/lib/errors/config.d.ts.map +0 -1
  248. package/dist/lib/errors/config.js.map +0 -1
  249. package/dist/lib/packaging/errors.d.ts +0 -16
  250. package/dist/lib/packaging/errors.d.ts.map +0 -1
  251. package/dist/lib/packaging/errors.js +0 -36
  252. package/dist/lib/packaging/errors.js.map +0 -1
  253. package/dist/lib/schemas/io/cli-config.d.ts +0 -12
  254. package/dist/lib/schemas/io/cli-config.d.ts.map +0 -1
  255. package/dist/lib/schemas/io/cli-config.js +0 -35
  256. package/dist/lib/schemas/io/cli-config.js.map +0 -1
package/README.md CHANGED
@@ -62,13 +62,12 @@ agentcore invoke
62
62
 
63
63
  ## Supported Frameworks
64
64
 
65
- | Framework | Notes |
66
- | ------------------- | ----------------------------- |
67
- | Strands Agents | AWS-native, streaming support |
68
- | LangChain/LangGraph | Graph-based workflows |
69
- | CrewAI | Multi-agent orchestration |
70
- | Google ADK | Gemini models only |
71
- | OpenAI Agents | OpenAI models only |
65
+ | Framework | Notes |
66
+ | ------------------- | --------------------------------------------------- |
67
+ | Strands Agents | AWS-native, streaming support (Python + TypeScript) |
68
+ | LangChain/LangGraph | Graph-based workflows |
69
+ | Google ADK | Gemini models only |
70
+ | OpenAI Agents | OpenAI models only |
72
71
 
73
72
  ## Supported Model Providers
74
73
 
@@ -92,13 +91,28 @@ agentcore invoke
92
91
 
93
92
  ### Resource Management
94
93
 
95
- | Command | Description |
96
- | -------- | ---------------------------------------------------- |
97
- | `add` | Add agents, memory, credentials, evaluators, targets |
98
- | `remove` | Remove resources from project |
94
+ | Command | Description |
95
+ | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
96
+ | `add` | Add harnesses, agents, memory, credentials, gateways and gateway-targets, evaluators, online evals, online insights, knowledge bases, config bundles, datasets, policy engines and policies, payment managers and payment connectors, runtime endpoints |
97
+ | `remove` | Remove any of the above resources from the project |
99
98
 
100
99
  > **Note**: Run `agentcore deploy` after `add` or `remove` to update resources in AWS.
101
100
 
101
+ ### Harness
102
+
103
+ A harness bundles a runtime, model, tools, skills, memory, and observability into one declarative config. Use it when
104
+ you want infra without writing agent code.
105
+
106
+ | Command | Description |
107
+ | ---------------- | --------------------------------------------------------------------------- |
108
+ | `add harness` | Add a harness resource (runtime + model + memory) |
109
+ | `add tool` | Add a tool to a harness (`--harness <name> --type <type> --name <name>`) |
110
+ | `add skill` | Add a skill to a harness (`--harness <name>` + `--path` / `--s3` / `--git`) |
111
+ | `export harness` | Export a harness config to a deployable Strands Python agent under `app/` |
112
+
113
+ > After `export harness`, **read `app/<agentName>/EXPORT_NOTES.md`** before running `deploy` — it lists any manual
114
+ > follow-up the exporter could not automate.
115
+
102
116
  ### Observability
103
117
 
104
118
  | Command | Description |
@@ -110,24 +124,118 @@ agentcore invoke
110
124
 
111
125
  ### Evaluations
112
126
 
113
- | Command | Description |
114
- | -------------------- | --------------------------------------------- |
115
- | `add evaluator` | Add a custom LLM-as-a-Judge evaluator |
116
- | `add online-eval` | Add continuous evaluation for live traffic |
117
- | `run eval` | Run on-demand evaluation against agent traces |
118
- | `evals history` | View past eval run results |
119
- | `pause online-eval` | Pause a deployed online eval config |
120
- | `resume online-eval` | Resume a paused online eval config |
121
- | `logs evals` | Stream or search online eval logs |
127
+ | Command | Description |
128
+ | ----------------------- | --------------------------------------------- |
129
+ | `add evaluator` | Add a custom LLM-as-a-Judge evaluator |
130
+ | `add online-eval` | Add continuous evaluation for live traffic |
131
+ | `run eval` | Run on-demand evaluation against agent traces |
132
+ | `run batch-evaluation` | Run evaluators across all sessions |
133
+ | `run recommendation` | Optimize prompts and tool descriptions |
134
+ | `evals history` | View past eval run results |
135
+ | `pause online-eval` | Pause a deployed online eval config |
136
+ | `resume online-eval` | Resume a paused online eval config |
137
+ | `stop batch-evaluation` | Stop a running batch evaluation |
138
+ | `logs evals` | Stream or search online eval logs |
139
+
140
+ ### Config Bundles
141
+
142
+ | Command | Description |
143
+ | ------------------- | ----------------------------------------- |
144
+ | `add config-bundle` | Add a versioned configuration bundle |
145
+ | `cb versions` | List version history for a bundle |
146
+ | `cb diff` | Diff two versions of a bundle |
147
+ | `cb create-branch` | Create a new branch on an existing bundle |
148
+
149
+ > Create agents with `--with-config-bundle` to auto-wire config bundle support into the generated template.
150
+
151
+ ### A/B Tests
152
+
153
+ | Command | Description |
154
+ | ----------------- | -------------------------------------------------------------- |
155
+ | `run ab-test` | Start an A/B test (config-bundle or target-based) on a gateway |
156
+ | `view ab-test` | List A/B test jobs or view one in detail |
157
+ | `pause ab-test` | Pause traffic splitting for a running test |
158
+ | `resume ab-test` | Resume a paused test |
159
+ | `stop ab-test` | Stop a running test (terminal) |
160
+ | `promote ab-test` | Apply the winning variant to `agentcore.json` |
161
+ | `archive ab-test` | Delete the test on the service and clear local history |
162
+
163
+ ### Knowledge Bases
164
+
165
+ | Command | Description |
166
+ | -------------------- | ------------------------------------------------------- |
167
+ | `add knowledge-base` | Add a managed Bedrock Knowledge Base wired to a gateway |
168
+
169
+ > See [Knowledge Bases](docs/knowledge-bases.md) for ingestion, vectorization, and retrieval setup.
170
+
171
+ ### Insights — `[preview]`
172
+
173
+ Failure-pattern analysis across agent sessions. Insights configs run continuously alongside online evals and surface
174
+ clusters of bad outcomes.
175
+
176
+ | Command | Description |
177
+ | ------------------------ | ----------------------------------------------------------- |
178
+ | `add online-insights` | Add a continuous insights config bound to a runtime |
179
+ | `run insights` | Run on-demand failure analysis across recent sessions |
180
+ | `view insights` | List insights jobs or view one in detail |
181
+ | `pause online-insights` | Pause a deployed online insights config |
182
+ | `resume online-insights` | Resume a paused online insights config |
183
+ | `archive insights` | Delete an insights job on the service + clear local history |
184
+
185
+ ### Policies & Guardrails
186
+
187
+ Policy engines apply Cedar-based pre/post-call policies to agent invocations — including Bedrock content filters
188
+ (`VIOLENCE`, `HATE`, `SEXUAL`, `MISCONDUCT`, `INSULTS`), prompt-attack detection, and sensitive-information redaction.
189
+
190
+ | Command | Description |
191
+ | ------------------- | -------------------------------------------------------------------- |
192
+ | `add policy-engine` | Add a Cedar policy engine to the project |
193
+ | `add policy` | Add a policy to a policy engine (form-based guardrails or raw Cedar) |
194
+
195
+ ### Payments
196
+
197
+ Pay-per-call agent transactions via the [x402 protocol](https://www.x402.org/). When a tool call returns
198
+ `402 Payment Required`, the payments system signs and submits payment then retries automatically.
199
+
200
+ | Command | Description |
201
+ | ----------------------- | ---------------------------------------------------------------------------- |
202
+ | `add payment-manager` | Add a payment manager (orchestrates payment sessions for the agent) |
203
+ | `add payment-connector` | Add a payment connector with provider credentials (CoinbaseCDP, StripePrivy) |
204
+
205
+ > See [Payments](docs/payments.md) for the full setup including instrument creation and tool allowlists.
206
+
207
+ ### Datasets
208
+
209
+ Curated session datasets for batch evaluation and recommendation runs.
210
+
211
+ | Command | Description |
212
+ | ------------------------- | ------------------------------------------------------------------------- |
213
+ | `add dataset` | Add a dataset resource (session list, ground-truth file, or trace filter) |
214
+ | `dataset download` | Download a dataset version locally |
215
+ | `dataset publish-version` | Publish a new dataset version |
216
+ | `dataset remove-version` | Remove a dataset version |
217
+
218
+ ### Web Search Gateway Targets
219
+
220
+ Add a managed web-search target to a gateway:
221
+
222
+ ```bash
223
+ agentcore add gateway-target --type connector --connector web-search \
224
+ --gateway <gateway-name> --name <target-name>
225
+ # Optional: --exclude-domains "example.com,foo.org"
226
+ ```
227
+
228
+ See [Gateway](docs/gateway.md) for full target setup including Lambda, MCP, OpenAPI, Smithy, and API Gateway.
122
229
 
123
230
  ### Utilities
124
231
 
125
- | Command | Description |
126
- | -------------- | ----------------------------------------- |
127
- | `validate` | Validate configuration files |
128
- | `package` | Package agent artifacts without deploying |
129
- | `fetch access` | Fetch access info for deployed resources |
130
- | `update` | Check for and install CLI updates |
232
+ | Command | Description |
233
+ | -------------- | ----------------------------------------------------- |
234
+ | `validate` | Validate configuration files |
235
+ | `package` | Package agent artifacts without deploying |
236
+ | `fetch access` | Fetch access info for deployed resources |
237
+ | `feedback` | Send feedback to the AgentCore team (with screenshot) |
238
+ | `update` | Check for and install CLI updates |
131
239
 
132
240
  ## Project Structure
133
241
 
@@ -155,30 +263,82 @@ my-project/
155
263
 
156
264
  Projects use JSON schema files in the `agentcore/` directory:
157
265
 
158
- - `agentcore.json` - Agent specifications, memory, credentials, evaluators, online evals
266
+ - `agentcore.json` - Project resources (agents, memory, credentials, gateways, evaluators, online evals/insights,
267
+ knowledge bases, harnesses, policy engines and policies, payment managers and connectors, config bundles, datasets,
268
+ runtime endpoints)
159
269
  - `deployed-state.json` - Runtime state in agentcore/.cli/ (auto-managed)
160
270
  - `aws-targets.json` - Deployment targets (account, region)
161
271
 
162
272
  ## Capabilities
163
273
 
274
+ - **Harness** - Declarative agent: bundle runtime + tools + skills + memory + observability without writing agent code
164
275
  - **Runtime** - Managed execution environment for deployed agents
165
- - **Memory** - Semantic, summarization, and user preference strategies
166
- - **Credentials** - Secure API key management via Secrets Manager
167
- - **Evaluations** - LLM-as-a-Judge for on-demand and continuous agent quality monitoring
276
+ - **Memory** - Semantic, summarization, user-preference, and episodic strategies
277
+ - **Credentials** - Secure API key + OAuth credential management via Secrets Manager
278
+ - **Gateways** - MCP gateways with Lambda / MCP server / OpenAPI / Smithy / API Gateway / **web-search** /
279
+ **knowledge-base** targets
280
+ - **Evaluations** - LLM-as-a-Judge for on-demand, batch, and continuous agent quality monitoring
281
+ - **Recommendations** - Auto-optimize system prompts and tool descriptions from real session traces
282
+ - **A/B Tests** - Traffic-split between config-bundle or target-based variants and promote the winner
283
+ - **Insights** _[preview]_ - Failure-pattern analysis and clustering across agent sessions
284
+ - **Knowledge Bases** - Managed Bedrock Knowledge Bases auto-wired to gateways
285
+ - **Policies & Guardrails** - Cedar pre/post-call policies including Bedrock content filters, prompt-attack detection,
286
+ and sensitive-information redaction
287
+ - **Payments** - x402-protocol microtransactions for pay-per-call tools and APIs
288
+ - **Config Bundles** - Versioned runtime configurations as a separately-deployable resource
168
289
 
169
290
  ## Documentation
170
291
 
292
+ **Reference**
293
+
171
294
  - [CLI Commands Reference](docs/commands.md) - Full command reference for scripting and CI/CD
172
295
  - [Configuration](docs/configuration.md) - Schema reference for config files
173
- - [Evaluations](docs/evals.md) - Evaluators, on-demand evals, and online monitoring
174
296
  - [Frameworks](docs/frameworks.md) - Supported frameworks and model providers
175
- - [Gateway](docs/gateway.md) - Gateway setup, targets, and authentication
297
+ - [PERMISSIONS](docs/PERMISSIONS.md) - IAM permissions required to deploy
298
+
299
+ **Resources & features**
300
+
176
301
  - [Memory](docs/memory.md) - Memory strategies and sharing
302
+ - [Gateway](docs/gateway.md) - Gateway setup, targets, and authentication
303
+ - [Knowledge Bases](docs/knowledge-bases.md) - Managed Bedrock Knowledge Bases wired to gateways
304
+ - [Payments](docs/payments.md) - x402-protocol microtransactions for paid tools/APIs
305
+ - [Config Bundles](docs/config-bundles.md) - Versioned runtime configurations
306
+ - [Container Builds](docs/container-builds.md) - Container build types and Dockerfile setup
307
+
308
+ **Evaluation & quality**
309
+
310
+ - [Evaluations](docs/evals.md) - Evaluators, on-demand evals, and online monitoring
311
+ - [Batch Evaluation](docs/batch-evaluation.md) - Run evaluators across sessions at scale
312
+ - [Recommendations](docs/recommendations.md) - Optimize prompts and tool descriptions
313
+ - [A/B Tests](docs/ab-tests.md) - Split traffic between variants and promote the winner
314
+
315
+ **Operations**
316
+
177
317
  - [Local Development](docs/local-development.md) - Dev server and debugging
318
+ - [Transaction Search](docs/transaction_search.md) - Trace + log search across agent invocations
319
+ - [Telemetry](docs/telemetry.md) - CLI usage telemetry — what's collected and how to opt out
320
+ - [TUI Harness](docs/tui-harness.md) - Programmatic TUI driver for testing
321
+ - [Testing](docs/TESTING.md) - Unit, integration, and e2e test infrastructure
322
+ - [Feedback](docs/feedback.md) - Submit feedback from your terminal
323
+
324
+ ## Examples
325
+
326
+ See the [AgentCore Samples](https://github.com/awslabs/agentcore-samples) repository for end-to-end examples using the
327
+ CLI, including multi-agent workflows, MCP gateway targets, and framework integrations.
178
328
 
179
329
  ## Feedback & Issues
180
330
 
181
- Found a bug or have a feature request? [Open an issue](https://github.com/aws/agentcore-cli/issues/new) on GitHub.
331
+ Have a quick comment or suggestion? Send it from your terminal:
332
+
333
+ ```bash
334
+ agentcore feedback "your message" --screenshot path/to/screenshot.png
335
+ ```
336
+
337
+ The CLI will display the AWS Customer Agreement and prompt for consent before submitting. See
338
+ [docs/feedback.md](docs/feedback.md) for usage details.
339
+
340
+ For bugs, regressions, or feature requests that need discussion,
341
+ [open an issue](https://github.com/aws/agentcore-cli/issues/new) on GitHub instead.
182
342
 
183
343
  ## Security
184
344
 
@@ -1 +1 @@
1
- ._panel_1gqyj_1{display:flex;flex-direction:column;border-top:1px solid var(--border);background:var(--surface);min-height:0;overflow:hidden;flex-shrink:0}._resizeHandle_1gqyj_11{height:4px;cursor:row-resize;background:var(--bg);flex-shrink:0}._resizeHandle_1gqyj_11:hover{background:var(--accent);opacity:.3}._header_1gqyj_22{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:var(--bg);border-bottom:1px solid var(--border);flex-shrink:0}._headerLeft_1gqyj_32{display:flex;align-items:center;gap:8px}._headerTitle_1gqyj_38{font-size:12px;font-weight:600;color:var(--text)}._headerActions_1gqyj_44{display:flex;align-items:center;gap:4px}._collapseToggle_1gqyj_50{background:none;border:none;color:var(--text-dim);cursor:pointer;padding:2px 4px;display:flex;align-items:center;gap:6px;border-radius:3px}._collapseToggle_1gqyj_50:hover{color:var(--text);background:#ffffff0d}._iconBtn_1gqyj_66{background:none;border:none;color:var(--text-dim);cursor:pointer;padding:2px;display:flex;align-items:center;border-radius:3px}._iconBtn_1gqyj_66:hover{color:var(--text);background:#ffffff0d}._iconBtn_1gqyj_66:disabled{opacity:.4;cursor:not-allowed}._spinning_1gqyj_86{animation:_spin_1gqyj_86 1s linear infinite}@keyframes _spin_1gqyj_86{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._status_1gqyj_98{font-size:11px;color:var(--text-dim)}._body_1gqyj_103{flex:1;overflow:auto;min-height:0;position:relative}._error_1di92_1{padding:8px 12px;color:var(--error);font-size:12px}._version_1di92_7{font-size:11px;color:var(--text-dim);font-weight:400}._body_1di92_13{padding:8px 12px 12px}._cardName_1di92_17{font-size:14px;font-weight:600;color:var(--text);margin-bottom:2px}._cardDesc_1di92_24{font-size:12px;color:var(--text-dim);margin-bottom:10px}._section_1di92_30{margin-bottom:10px}._sectionLabel_1di92_34{font-size:11px;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}._tags_1di92_43{display:flex;flex-wrap:wrap;gap:4px}._tag_1di92_43{padding:2px 8px;background:var(--bg);border:1px solid var(--border);border-radius:4px;font-size:11px;color:var(--text-dim)}._skillList_1di92_58{display:flex;flex-direction:column;gap:4px}._skillItem_1di92_64{display:flex;flex-direction:column;gap:2px;padding:6px 8px;border-radius:6px;background:var(--bg)}._skillName_1di92_73{font-size:13px;font-weight:500;color:var(--text);font-family:SF Mono,Fira Code,Cascadia Code,monospace}._skillDesc_1di92_80{font-size:12px;color:var(--text-dim)}._skillTags_1di92_85{display:flex;flex-wrap:wrap;gap:3px;margin-top:2px}._area_1u9gx_1{padding:16px 20px;border-top:1px solid var(--border);background:var(--surface);flex-shrink:0}._row_1u9gx_8{max-width:780px;margin:0 auto;display:flex;gap:8px;align-items:flex-end}._textarea_1u9gx_16{flex:1;resize:none;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:var(--radius);padding:10px 14px;font-size:14px;font-family:inherit;line-height:1.5;min-height:44px;max-height:160px;outline:none;transition:border-color .15s}._textarea_1u9gx_16:focus{border-color:var(--accent)}._textarea_1u9gx_16::placeholder{color:var(--text-dim)}._textarea_1u9gx_16:disabled{opacity:.5}._sendBtn_1u9gx_45{width:44px;height:44px;border:none;border-radius:var(--radius);background:var(--accent);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0}._sendBtn_1u9gx_45:hover:not(:disabled){background:var(--accent-hover)}._sendBtn_1u9gx_45:disabled{opacity:.4;cursor:not-allowed}._sendBtn_1u9gx_45 svg{width:20px;height:20px}._toolbar_1v9hb_1{display:flex;align-items:center;gap:12px;padding:8px 20px;border-bottom:1px solid var(--border);background:var(--bg);flex-shrink:0}._agentSection_1v9hb_11{position:relative;display:flex;align-items:center;gap:8px}._agentPicker_1v9hb_18{display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:13px}._agentPicker_1v9hb_18._clickable_1v9hb_30{cursor:pointer;transition:border-color .15s,background .15s}._agentPicker_1v9hb_18._clickable_1v9hb_30:hover{border-color:var(--accent);background:#6366f114}._agentPicker_1v9hb_18:disabled{cursor:default}._agentLabel_1v9hb_44{color:var(--text-dim);font-size:12px}._agentName_1v9hb_49{font-weight:600}._starting_1v9hb_53{font-size:11px;color:var(--text-dim);font-weight:400}._chevron_1v9hb_59{color:var(--text-dim);flex-shrink:0}._dropdown_1v9hb_64{position:absolute;top:calc(100% + 4px);left:0;min-width:280px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0000004d;z-index:100;overflow:hidden}._dropdownItem_1v9hb_77{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;width:100%;padding:10px 14px;background:none;border:none;border-bottom:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;transition:background .1s}._dropdownItem_1v9hb_77:last-child{border-bottom:none}._dropdownItem_1v9hb_77:hover:not(:disabled){background:#6366f114}._dropdownItem_1v9hb_77._active_1v9hb_101{background:#6366f11f}._dropdownItem_1v9hb_77._hasError_1v9hb_105{opacity:.6;cursor:default}._dropdownName_1v9hb_110{font-weight:600;font-size:13px}._statusBadge_1v9hb_115{font-size:10px;font-weight:600;padding:1px 6px;border-radius:9999px;text-transform:uppercase;letter-spacing:.03em;line-height:1.4}._status_running_1v9hb_125{background:#22c55e26;color:#4ade80}._status_starting_1v9hb_130{background:#facc1526;color:#facc15}._status_error_1v9hb_135{background:#f8717126;color:#f87171}._status_idle_1v9hb_140{background:#94a3b826;color:#94a3b8}._dropdownMeta_1v9hb_145{font-size:11px;color:var(--text-dim)}._rightSection_1v9hb_150{display:flex;align-items:center;gap:8px;margin-left:auto}._errorText_1v9hb_157{font-size:12px;color:#f87171}._sessionBadge_1v9hb_162{display:flex;align-items:center;gap:4px;font-size:11px;font-family:monospace;padding:2px 8px;border-radius:9999px;background:#6366f11f;color:var(--accent-hover);border:1px solid rgba(99,102,241,.25);cursor:pointer;transition:background .15s,border-color .15s;white-space:nowrap}._sessionBadge_1v9hb_162:hover{background:#6366f133;border-color:var(--accent)}._newSessionBtn_1v9hb_183{display:flex;align-items:center;justify-content:center;padding:4px;border-radius:6px;border:1px solid var(--border);background:none;color:var(--text-dim);cursor:pointer;transition:color .15s,border-color .15s}._newSessionBtn_1v9hb_183:hover{color:var(--text);border-color:var(--text-dim)}._confirmOverlay_1v9hb_201{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:200}._confirmModal_1v9hb_211{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:20px 24px;max-width:380px;box-shadow:0 12px 32px #0006}._confirmTitle_1v9hb_220{font-size:14px;font-weight:600;color:var(--text);margin-bottom:8px}._confirmMessage_1v9hb_227{font-size:13px;color:var(--warning);line-height:1.5;margin-bottom:16px}._confirmActions_1v9hb_234{display:flex;justify-content:flex-end;gap:8px}._confirmBtn_1v9hb_240{padding:6px 14px;border-radius:6px;font-size:13px;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text);transition:background .15s,border-color .15s}._confirmBtn_1v9hb_240:hover{background:#6366f114}._confirmBtnPrimary_1v9hb_255{background:var(--accent);color:#fff;border-color:var(--accent)}._confirmBtnPrimary_1v9hb_255:hover{background:var(--accent-hover)}._dropdownSeparator_1v9hb_265{height:1px;background:var(--border);margin:4px 0}._status_deployed_1v9hb_271{background:#6366f126;color:#818cf8}._fields_pg374_1{padding:8px 20px 12px;display:flex;flex-direction:column;gap:10px}._field_pg374_1{display:flex;flex-direction:column;gap:4px;flex:1}._fieldLabel_pg374_15{font-size:12px;color:var(--text);font-weight:600}._fieldDescription_pg374_21{font-size:11px;color:var(--text-dim);line-height:1.3}._fieldHint_pg374_27{font-size:11px;color:var(--text-dim)}._sectionLabel_pg374_32{font-size:12px;font-weight:600;color:var(--text);margin-top:6px;padding-top:8px;border-top:1px solid var(--border)}._modelRow_pg374_41{display:flex;gap:8px}._input_pg374_46,._select_pg374_47{padding:6px 10px;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:13px}._input_pg374_46:focus,._select_pg374_47:focus,._textarea_pg374_58:focus{outline:none;border-color:var(--accent)}._select_pg374_47{min-width:100px}._input_pg374_46{flex:1}._textarea_pg374_58{padding:6px 10px;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:13px;font-family:inherit;resize:vertical}._header_lggp3_1{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}._title_lggp3_11{font-size:15px;font-weight:600}._badge_lggp3_16{font-size:12px;padding:2px 8px;border-radius:9999px;background:#eab30826;color:#eab308}._ready_lggp3_24{background:#22c55e26;color:var(--green)}._error_lggp3_29{background:#dc262626;color:#f87171}._rightGroup_lggp3_34{display:flex;align-items:center;gap:10px;margin-left:auto}._iconBtn_lggp3_41{background:none;border:1px solid var(--border);color:var(--text-dim);width:30px;height:30px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:color .15s,border-color .15s}._iconBtn_lggp3_41:hover{color:var(--text);border-color:var(--text-dim)}._iconBtnActive_lggp3_61{color:var(--accent);border-color:var(--accent);background:#6366f11a}._iconBtnActive_lggp3_61:hover{color:var(--accent-hover);border-color:var(--accent-hover);background:#6366f12e}._errorMessage_1up60_1{display:flex;flex-direction:column;gap:6px}._truncated_1up60_7,._full_1up60_12{white-space:pre-wrap;word-wrap:break-word}._toggle_1up60_17{all:unset;cursor:pointer;font-size:12px;color:var(--error);opacity:.8;font-weight:600}._toggle_1up60_17:hover{opacity:1;text-decoration:underline}._root_1x2ve_1{margin-top:8px}._pill_1x2ve_5{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#6366f114;border:1px solid rgba(99,102,241,.2);border-radius:12px;color:#a5b4fc;font-size:12px;font-weight:500}._cards_1x2ve_18{display:flex;flex-direction:column;gap:6px;margin-top:8px}._card_1x2ve_18{padding:8px 10px;background:#ffffff0a;border-radius:6px;border:1px solid rgba(255,255,255,.06);font-size:13px}._cardError_1x2ve_33{border-color:#ef444433}._cardHeader_1x2ve_37{display:flex;align-items:center;gap:6px}._toolIcon_1x2ve_43{color:#a78bfa;flex-shrink:0}._errorIcon_1x2ve_48{color:#ef4444;flex-shrink:0}._toolName_1x2ve_53{font-weight:600;color:#c4b5fd;font-family:monospace;font-size:12px}._preview_1x2ve_60{color:var(--text-dim);font-size:11px;font-family:monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}._spinner_1x2ve_70{margin-left:auto;color:#a5b4fc;animation:_spin_1x2ve_70 1s linear infinite}@keyframes _spin_1x2ve_70{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._toggle_1x2ve_84{display:flex;align-items:center;gap:4px;margin-top:4px;padding:0;background:none;border:none;color:var(--text-dim);font-size:11px;cursor:pointer}._toggle_1x2ve_84:hover{color:var(--text)}._json_1x2ve_100{margin:4px 0 0;padding:6px 8px;background:#00000026;border-radius:4px;font-family:monospace;font-size:11px;color:var(--text-dim);white-space:pre-wrap;word-break:break-all;line-height:1.4;max-height:200px;overflow-y:auto}._jsonError_1x2ve_115{color:#fca5a5}._root_1pdrb_1 h1{font-size:1.4em;font-weight:700;margin:.6em 0 .3em}._root_1pdrb_1 h2{font-size:1.25em;font-weight:700;margin:.5em 0 .25em}._root_1pdrb_1 h3{font-size:1.1em;font-weight:700;margin:.4em 0 .2em}._root_1pdrb_1 p{margin:0 0 .6em}._root_1pdrb_1 ul{margin-left:1.4em;margin-bottom:.6em;list-style-type:disc;padding:0}._root_1pdrb_1 ol{margin-left:1.4em;margin-bottom:.6em;list-style-type:decimal;padding:0}._root_1pdrb_1 li{margin-bottom:.15em}._root_1pdrb_1 code{background-color:#ffffff1a;padding:.15em .35em;border-radius:4px;font-family:monospace;font-size:.9em}._codeBlockWrapper_1pdrb_49{position:relative;margin:0 0 .6em;border-radius:6px;overflow:hidden;background-color:#ffffff14}._codeBlockWrapper_1pdrb_49 pre{margin:0}._codeBlockWrapper_1pdrb_49 pre code{background:none;padding:.6em .8em;border-radius:0;font-size:.85em;display:block;overflow:auto}._codeBlockHeader_1pdrb_70{display:flex;align-items:center;justify-content:space-between;padding:4px 8px;background:#ffffff0a;border-bottom:1px solid rgba(255,255,255,.06);min-height:28px}._codeBlockLang_1pdrb_80{font-size:11px;color:var(--text-dim);font-family:monospace}._copyBtn_1pdrb_86{background:none;border:1px solid rgba(255,255,255,.12);color:var(--text-dim);width:26px;height:26px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;margin-left:auto;transition:color .15s,border-color .15s,background .15s}._copyBtn_1pdrb_86:hover{color:var(--text);border-color:#ffffff40;background:#ffffff0f}._root_1pdrb_1 pre code{background-color:#ffffff14;padding:.6em .8em;border-radius:6px;font-size:.85em;display:block;overflow:auto}._root_1pdrb_1 pre{margin:0 0 .6em}._root_1pdrb_1 hr{border:none;border-top:1px solid rgba(255,255,255,.1);margin:.8em 0}._root_1pdrb_1 table{border-collapse:collapse;width:100%;margin-bottom:.6em;font-size:.9em}._root_1pdrb_1 th{border-bottom:2px solid rgba(255,255,255,.2);padding:.4em .8em;text-align:left;font-weight:700}._root_1pdrb_1 td{border-bottom:1px solid rgba(255,255,255,.08);padding:.35em .8em}._root_1pdrb_1 blockquote{border-left:3px solid rgba(99,102,241,.5);padding-left:.8em;margin:0 0 .6em;opacity:.8}._root_1pdrb_1 a{color:#818cf8;text-decoration:underline}._root_1pdrb_1 strong{font-weight:700}._root_1pdrb_1 em{font-style:italic}._root_11p18_1{display:inline-flex;align-items:center;gap:6px;margin-top:4px}._pill_11p18_8{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;background:#10b98114;border:1px solid rgba(16,185,129,.2);border-radius:12px;color:#6ee7b7;font-size:11px;font-weight:500;font-family:monospace}._icon_11p18_22{flex-shrink:0;color:#34d399}._separator_11p18_27{color:#fff3}._dim_11p18_31{color:#6ee7b799;font-weight:400}._cache_11p18_36{color:#fbbf24}._root_ryrat_1{margin-top:8px}._pill_ryrat_5{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#6366f114;border:1px solid rgba(99,102,241,.2);border-radius:12px;color:#a5b4fc;font-size:12px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s}._pill_ryrat_5:hover{background:#6366f126;border-color:#6366f159}._cards_ryrat_24{display:flex;flex-direction:column;gap:6px;margin-top:8px}._card_ryrat_24{padding:8px 10px;background:#ffffff0a;border-radius:6px;border:1px solid rgba(255,255,255,.06);font-size:13px}._cardHeader_ryrat_39{display:flex;align-items:center;gap:6px}._toolIcon_ryrat_45{color:#a78bfa;flex-shrink:0}._toolName_ryrat_50{font-weight:600;color:#c4b5fd;font-family:monospace;font-size:12px}._duration_ryrat_57{margin-left:auto;color:var(--text-dim);font-size:11px;font-family:monospace}._toggle_ryrat_64{display:flex;align-items:center;gap:4px;margin-top:4px;padding:0;background:none;border:none;color:var(--text-dim);font-size:11px;cursor:pointer}._toggle_ryrat_64:hover{color:var(--text)}._json_ryrat_80{margin:4px 0 0;padding:6px 8px;background:#00000026;border-radius:4px;font-family:monospace;font-size:11px;color:var(--text-dim);white-space:pre-wrap;word-break:break-all;line-height:1.4;max-height:200px;overflow-y:auto}._messages_nks4r_1{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}._emptyState_nks4r_10{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-dim);gap:8px}._emptyStateIcon_nks4r_20{display:flex;align-items:center;justify-content:center}._emptyStateAgent_nks4r_26{font-size:18px;font-weight:600;color:var(--text)}._emptyStateDetails_nks4r_32{font-size:13px;color:var(--text-dim)}._emptyStateText_nks4r_37{font-size:14px;margin-top:8px}._msg_nks4r_42{max-width:780px;width:100%;margin:0 auto}._msgUser_nks4r_48{max-width:780px;width:100%;margin:0 auto;display:flex;flex-direction:column;align-items:flex-end}._role_nks4r_57{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;color:var(--text-dim)}._body_nks4r_66{padding:12px 16px;border-radius:var(--radius);font-size:14px;line-height:1.5;word-wrap:break-word}._bodyUser_nks4r_74{white-space:pre-wrap;background:var(--user-bg);padding:8px 12px}._bodyAssistant_nks4r_81{background:transparent;border:none}._bodyError_nks4r_87{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--error)}._thinking_nks4r_94{max-width:780px;width:100%;margin:0 auto;color:var(--text-dim);font-size:14px;display:flex;align-items:baseline}._thinkingDot_nks4r_104{animation:_ellipsisDot_nks4r_1 1.4s infinite}._thinkingDot_nks4r_104:nth-child(2){animation-delay:.2s}._thinkingDot_nks4r_104:nth-child(3){animation-delay:.4s}@keyframes _ellipsisDot_nks4r_1{0%,20%{opacity:0}50%{opacity:1}to{opacity:0}}._spinner_nks4r_127{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:_spin_nks4r_127 .8s linear infinite}._startingText_nks4r_136{font-size:15px;color:var(--text-dim);display:flex;align-items:baseline}@keyframes _spin_nks4r_127{to{transform:rotate(360deg)}}._notice_1isal_1{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;color:var(--error);font-size:12px;text-align:center}._warning_1isal_12{color:var(--warning)}._retryBtn_1isal_16{background:none;border:1px solid var(--error);color:var(--error);padding:3px 10px;border-radius:6px;cursor:pointer;font-size:11px}._retryBtn_1isal_16:hover{background:#ef44441a}._container_qogk5_1{display:flex;flex-direction:column}._toggleRow_qogk5_6{display:flex;align-items:center;gap:4px}._toggle_qogk5_6{display:flex;align-items:center;gap:6px;flex:1;padding:8px 12px;background:var(--bg);border:1px solid var(--border);border-radius:8px;cursor:pointer;text-align:left;color:var(--text);font-size:13px;font-weight:500;transition:border-color .15s}._toggle_qogk5_6:hover{border-color:var(--text-dim)}._chevron_qogk5_32{font-size:11px;color:var(--text-dim);flex-shrink:0}._icon_qogk5_38{font-size:14px;flex-shrink:0}._label_qogk5_43{flex:1}._content_qogk5_47{margin-top:6px;margin-left:12px;display:flex;flex-direction:column;gap:6px}._status_qogk5_55{text-align:center;color:var(--text-dim);font-size:12px;padding:12px 0}._error_qogk5_62{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;color:var(--error);font-size:12px;text-align:center}._detail_qogk5_73{border:1px solid var(--border);border-radius:8px;overflow:hidden;margin-top:4px}._detailHeader_qogk5_80{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:var(--bg);border-bottom:1px solid var(--border)}._detailTitle_qogk5_89{font-size:12px;font-weight:600;color:var(--text)}._closeBtn_qogk5_95{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:12px;padding:2px 4px}._closeBtn_qogk5_95:hover{color:var(--text)}._status_qogk5_55{color:var(--text);display:flex;flex-direction:column;gap:4px}._content_qogk5_47{margin-left:0}._controls_qogk5_118{display:flex;flex-direction:column;gap:6px}._field_qogk5_124{display:flex;flex-direction:column;gap:2px}._fieldLabel_qogk5_130{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim)}._input_qogk5_138{padding:6px 8px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:12px;font-family:inherit;outline:none;transition:border-color .15s}._input_qogk5_138:focus{border-color:var(--accent)}._input_qogk5_138::placeholder{color:var(--text-dim)}._select_qogk5_158{padding:6px 8px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:12px;font-family:inherit;outline:none;cursor:pointer;transition:border-color .15s}._select_qogk5_158:focus{border-color:var(--accent)}._actions_qogk5_175{display:flex;gap:6px}._actionBtn_qogk5_180{flex:1;padding:6px 12px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:12px;font-weight:500;cursor:pointer;transition:border-color .15s,background .15s}._actionBtn_qogk5_180:hover:not(:disabled){border-color:var(--text-dim)}._actionBtn_qogk5_180:disabled{opacity:.4;cursor:not-allowed}._searchBtn_qogk5_202{background:#6366f11f;border-color:#6366f14d;color:var(--accent-hover)}._searchBtn_qogk5_202:hover:not(:disabled){background:#6366f133;border-color:var(--accent)}._resultCount_qogk5_213{font-size:10px;color:var(--text-dim);padding:0 2px 2px}._recordList_qogk5_219{display:flex;flex-direction:column;gap:4px;max-height:320px;overflow-y:auto}._recordRow_qogk5_228{display:flex;flex-direction:column;gap:3px;width:100%;padding:8px 10px;background:var(--bg);border:1px solid var(--border);border-left:3px solid #22c55e;border-radius:6px;cursor:pointer;text-align:left;transition:border-color .15s,background .15s}._recordRow_qogk5_228:hover{border-color:var(--text-dim);border-left-color:#22c55e}._recordRowSelected_qogk5_248{border-color:var(--accent);border-left-color:var(--accent);background:#6366f114}._recordMain_qogk5_254{display:flex;justify-content:space-between;align-items:center;gap:8px}._recordContent_qogk5_261{font-size:12px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}._scoreBadge_qogk5_271{font-size:10px;font-weight:600;color:var(--accent-hover);background:#6366f11f;padding:1px 6px;border-radius:4px;flex-shrink:0}._recordMeta_qogk5_281{display:flex;justify-content:space-between;align-items:center;gap:6px}._strategyTag_qogk5_288{font-size:10px;color:#4ade80;background:#22c55e1f;padding:1px 6px;border-radius:4px}._recordTime_qogk5_296{font-size:10px;color:var(--text-dim)}._detailBody_qogk5_302{padding:10px;display:flex;flex-direction:column;gap:10px}._detailSection_qogk5_309{display:flex;flex-direction:column;gap:2px}._detailLabel_qogk5_315{font-size:10px;font-weight:600;text-transform:uppercase;color:var(--text-dim)}._detailContent_qogk5_322{font-size:12px;color:var(--text);white-space:pre-wrap;word-break:break-word;line-height:1.5;max-height:200px;overflow-y:auto;background:#00000026;padding:6px 8px;border-radius:4px}._metadataGrid_qogk5_335{display:flex;flex-direction:column;gap:2px}._metadataRow_qogk5_341{display:flex;justify-content:space-between;gap:12px;padding:3px 0;border-bottom:1px solid rgba(42,46,58,.5);font-size:11px}._metadataRow_qogk5_341:last-child{border-bottom:none}._metadataKey_qogk5_354{color:var(--text-dim);flex-shrink:0;font-family:monospace;font-size:10px}._metadataValue_qogk5_361{color:var(--text);text-align:right;overflow:hidden;text-overflow:ellipsis;word-break:break-all;font-size:11px}._detailId_qogk5_370{font-size:10px;color:var(--text-dim);font-family:monospace;word-break:break-all}._namespacesValue_qogk5_377{font-size:11px;color:var(--text);font-family:monospace}._noMetadata_qogk5_383{font-size:11px;color:var(--text-dim)}._panel_lfvg8_1{display:flex;flex-direction:column;min-width:320px;max-width:80vw;height:100%;border-left:1px solid var(--border);background:var(--surface);overflow:hidden;position:relative}._resizeHandle_lfvg8_13{position:absolute;left:0;top:0;bottom:0;width:4px;cursor:col-resize;z-index:10;background:transparent;transition:background .15s}._resizeHandle_lfvg8_13:hover,._resizeHandle_lfvg8_13:active{background:var(--accent)}._header_lfvg8_30{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);flex-shrink:0}._projectName_lfvg8_39{font-size:14px;font-weight:600;color:var(--text)}._headerActions_lfvg8_45{display:flex;gap:4px}._iconBtn_lfvg8_50{background:none;border:1px solid var(--border);color:var(--text-dim);width:28px;height:28px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:color .15s,border-color .15s}._iconBtn_lfvg8_50:hover{color:var(--text);border-color:var(--text-dim)}._tabBar_lfvg8_70{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}._tab_lfvg8_70{flex:1;padding:8px 12px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-dim);font-size:12px;font-weight:500;cursor:pointer;transition:color .15s,border-color .15s}._tab_lfvg8_70:hover{color:var(--text)}._tabActive_lfvg8_93{color:var(--text);border-bottom-color:var(--accent)}._body_lfvg8_98{flex:1;overflow-y:auto;padding:12px}._tabContent_lfvg8_104{display:flex;flex-direction:column;height:100%}._tabContent_lfvg8_104[hidden]{display:none}._status_lfvg8_114{text-align:center;color:var(--text-dim);font-size:13px;padding:24px 0}._error_lfvg8_121{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 12px;color:var(--error);font-size:13px;text-align:center}._retryBtn_lfvg8_132{background:none;border:1px solid var(--error);color:var(--error);padding:4px 12px;border-radius:6px;cursor:pointer;font-size:12px}._retryBtn_lfvg8_132:hover{background:#ef44441a}._graph_lfvg8_146{display:flex;flex-direction:column;gap:16px}._section_lfvg8_152{display:flex;flex-direction:column;gap:6px}._sectionTitle_lfvg8_158{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);padding:0 4px}._childNode_lfvg8_167{margin-left:20px;position:relative}._childNode_lfvg8_167:before{content:"";position:absolute;left:-12px;top:50%;width:8px;height:1px;background:var(--border)}._node_lfvg8_183{display:flex;align-items:flex-start;gap:10px;width:100%;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:8px;cursor:pointer;text-align:left;transition:border-color .15s,background .15s}._node_lfvg8_183:hover{border-color:var(--text-dim)}._nodeSelected_lfvg8_201{border-color:var(--accent);background:#6366f114}._nodeIcon_lfvg8_206{font-size:16px;line-height:1;flex-shrink:0;margin-top:1px;color:var(--text-dim);display:flex;align-items:center}._agent_lfvg8_216 ._nodeIcon_lfvg8_206{color:#818cf8}._harness_lfvg8_220 ._nodeIcon_lfvg8_206{color:#f0abfc}._memory_lfvg8_224 ._nodeIcon_lfvg8_206{color:#4ade80}._credential_lfvg8_228 ._nodeIcon_lfvg8_206{color:#facc15}._gateway_lfvg8_232 ._nodeIcon_lfvg8_206{color:#c084fc}._gatewayTarget_lfvg8_236 ._nodeIcon_lfvg8_206{color:#a78bfa}._mcpTool_lfvg8_240 ._nodeIcon_lfvg8_206{color:#2dd4bf}._evaluator_lfvg8_244 ._nodeIcon_lfvg8_206{color:#f472b6}._onlineEval_lfvg8_248 ._nodeIcon_lfvg8_206{color:#fb923c}._policyEngine_lfvg8_252 ._nodeIcon_lfvg8_206{color:#60a5fa}._policy_lfvg8_252 ._nodeIcon_lfvg8_206{color:#93c5fd}._unassignedTarget_lfvg8_260 ._nodeIcon_lfvg8_206{color:#a1a1aa}._nodeContent_lfvg8_264{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}._nodeName_lfvg8_272{font-size:13px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._nodeNameRow_lfvg8_281{display:flex;align-items:center;gap:6px}._deployBadge_lfvg8_288{font-size:10px;font-weight:600;padding:1px 6px;border-radius:4px;white-space:nowrap;line-height:1.4;flex-shrink:0}._deploy_deployed_lfvg8_298{background:#22c55e26;color:#22c55e}._deploy_local-only_lfvg8_303{background:#eab30826;color:#eab308}._deploy_pending-removal_lfvg8_308{background:#ef444426;color:#ef4444}._nodeSubtitle_lfvg8_313{font-size:11px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._nodeConnections_lfvg8_321{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}._connectionTag_lfvg8_328{font-size:10px;padding:1px 6px;border-radius:4px;background:#6366f11f;color:var(--accent-hover)}._agent_lfvg8_216{border-left:3px solid #6366f1}._harness_lfvg8_220{border-left:3px solid #d946ef}._memory_lfvg8_224{border-left:3px solid #22c55e}._credential_lfvg8_228{border-left:3px solid #eab308}._gateway_lfvg8_232{border-left:3px solid #a855f7}._gatewayTarget_lfvg8_236{border-left:3px solid #c084fc}._mcpTool_lfvg8_240{border-left:3px solid #14b8a6}._evaluator_lfvg8_244{border-left:3px solid #ec4899}._onlineEval_lfvg8_248{border-left:3px solid #f97316}._policyEngine_lfvg8_252{border-left:3px solid #3b82f6}._policy_lfvg8_252{border-left:3px solid #93c5fd}._unassignedTarget_lfvg8_260{border-left:3px solid #71717a}._infoCard_lfvg8_386{margin-top:16px;border:1px solid var(--border);border-radius:8px;overflow:hidden}._infoHeader_lfvg8_393{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--bg);border-bottom:1px solid var(--border)}._kindBadge_lfvg8_402{font-size:10px;font-weight:600;text-transform:uppercase;padding:2px 6px;border-radius:4px;color:#fff}._kindBadge_lfvg8_402._agent_lfvg8_216{background:#6366f1}._kindBadge_lfvg8_402._harness_lfvg8_220{background:#d946ef}._kindBadge_lfvg8_402._memory_lfvg8_224{background:#22c55e}._kindBadge_lfvg8_402._credential_lfvg8_228{background:#eab308;color:#000}._kindBadge_lfvg8_402._gateway_lfvg8_232{background:#a855f7}._kindBadge_lfvg8_402._gatewayTarget_lfvg8_236{background:#c084fc}._kindBadge_lfvg8_402._mcpTool_lfvg8_240{background:#14b8a6}._kindBadge_lfvg8_402._evaluator_lfvg8_244{background:#ec4899}._kindBadge_lfvg8_402._onlineEval_lfvg8_248{background:#f97316}._kindBadge_lfvg8_402._policyEngine_lfvg8_252{background:#3b82f6}._kindBadge_lfvg8_402._policy_lfvg8_252{background:#93c5fd;color:#000}._kindBadge_lfvg8_402._unassignedTarget_lfvg8_260{background:#71717a}._infoName_lfvg8_461{font-size:13px;font-weight:600;color:var(--text)}._infoBody_lfvg8_467{padding:8px 12px}._infoSectionHeader_lfvg8_471{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);padding:8px 0 4px;margin-top:4px}._infoRow_lfvg8_481{display:flex;justify-content:space-between;gap:12px;padding:4px 0;border-bottom:1px solid rgba(42,46,58,.5);font-size:12px}._infoRow_lfvg8_481:last-child{border-bottom:none}._infoKey_lfvg8_494{color:var(--text-dim);flex-shrink:0}._infoValue_lfvg8_499{color:var(--text);text-align:right;overflow:hidden;text-overflow:ellipsis;word-break:break-all}._dimText_1vmqq_1{color:var(--text-dim)}._assistantMsg_1vmqq_5{white-space:pre-wrap}._toolCalls_1vmqq_9{display:flex;flex-direction:column;gap:4px}._toolCall_1vmqq_9{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px}._toolIcon_1vmqq_22{font-size:12px}._toolName_1vmqq_26{font-weight:600;font-size:12px;color:#a78bfa}._toolArgs_1vmqq_32{font-family:monospace;font-size:10px;color:var(--text-dim);background:#0000001f;padding:4px 6px;border-radius:4px;margin:2px 0 0;white-space:pre-wrap;word-break:break-all;width:100%}._toolResult_1vmqq_45{display:flex;flex-direction:column;gap:2px}._toolResultStatus_1vmqq_51{font-size:10px;font-weight:600;text-transform:uppercase;color:#4ade80}._finishReason_1vmqq_58{font-size:10px;color:var(--text-dim);font-style:italic}._genAiContent_1vmqq_64{display:flex;flex-direction:column;gap:4px}._contentText_1vmqq_70{white-space:pre-wrap}._strandsEvent_1vmqq_74{display:flex;flex-direction:column;gap:6px}._strandsSection_1vmqq_80{display:flex;flex-direction:column;gap:2px}._strandsLabel_1vmqq_86{font-size:10px;font-weight:600;text-transform:uppercase;color:var(--text-dim)}._messageList_1vmqq_93{display:flex;flex-direction:column;gap:3px}._msgRow_1vmqq_99{display:flex;gap:6px;align-items:flex-start}._roleBadge_1vmqq_105{font-size:9px;font-weight:600;text-transform:uppercase;padding:1px 5px;border-radius:3px;flex-shrink:0;background:#ffffff14;color:var(--text-dim)}._role_user_1vmqq_116{background:#3b82f626;color:#60a5fa}._role_assistant_1vmqq_121{background:#a855f726;color:#c084fc}._role_system_1vmqq_126{background:#6b728026;color:#9ca3af}._role_tool_1vmqq_131{background:#14b8a626;color:#2dd4bf}._msgText_1vmqq_136{font-size:11px;color:var(--text);word-break:break-word}._msgContent_1vmqq_142{flex:1;min-width:0}._parsedContent_1vmqq_147{display:flex;flex-direction:column;gap:4px}._spanScope_1vmqq_153{font-size:10px;color:var(--text-dim);font-style:italic}._spanRaw_1vmqq_159{font-family:monospace;font-size:10px;color:var(--text-dim);white-space:pre-wrap;word-break:break-all;max-height:200px;overflow-y:auto;background:#00000026;padding:6px 8px;border-radius:4px;line-height:1.4;margin:0}._container_1hcbv_1{display:flex;flex-direction:column}._toggleRow_1hcbv_6{display:flex;align-items:center;gap:4px}._toggle_1hcbv_6{display:flex;align-items:center;gap:6px;flex:1;padding:8px 12px;background:var(--bg);border:1px solid var(--border);border-radius:8px;cursor:pointer;text-align:left;color:var(--text);font-size:13px;font-weight:500;transition:border-color .15s}._toggle_1hcbv_6:hover{border-color:var(--text-dim)}._chevron_1hcbv_32{font-size:11px;color:var(--text-dim);flex-shrink:0}._icon_1hcbv_38{font-size:14px;flex-shrink:0}._label_1hcbv_43{flex:1}._content_1hcbv_47{margin-top:6px;margin-left:12px;display:flex;flex-direction:column;gap:6px}._status_1hcbv_55{text-align:center;color:var(--text-dim);font-size:12px;padding:12px 0}._error_1hcbv_62{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;color:var(--error);font-size:12px;text-align:center}._detail_1hcbv_73,._traceDetail_1hcbv_73{border:1px solid var(--border);border-radius:8px;overflow:hidden;margin-top:4px}._detailHeader_1hcbv_80{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:var(--bg);border-bottom:1px solid var(--border)}._detailTitle_1hcbv_89{font-size:12px;font-weight:600;color:var(--text)}._closeBtn_1hcbv_95{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:12px;padding:2px 4px}._closeBtn_1hcbv_95:hover{color:var(--text)}._content_1hcbv_47{margin-left:0}._controls_1hcbv_111{display:flex;flex-direction:column;gap:6px;margin-bottom:6px}._controlRow_1hcbv_118{display:flex;align-items:flex-end;gap:6px}._refreshBtn_1hcbv_124{background:none;border:1px solid var(--border);color:var(--text-dim);width:22px;height:22px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:color .15s,border-color .15s}._refreshBtn_1hcbv_124:hover{color:var(--text);border-color:var(--text-dim)}._retryBtn_1hcbv_144{background:none;border:1px solid var(--error);color:var(--error);padding:3px 10px;border-radius:6px;cursor:pointer;font-size:11px}._retryBtn_1hcbv_144:hover{background:#ef44441a}._timeFilter_1hcbv_158{display:flex;flex-direction:column;gap:6px}._timeModeToggle_1hcbv_164{display:flex;gap:0;border:1px solid var(--border);border-radius:6px;overflow:hidden;width:fit-content}._timeModeBtn_1hcbv_173{background:none;border:none;color:var(--text-dim);font-size:10px;font-weight:600;padding:3px 10px;cursor:pointer;transition:color .15s,background .15s}._timeModeBtn_1hcbv_173:hover{color:var(--text)}._timeModeBtnActive_1hcbv_188{background:#6366f126;color:var(--accent-hover)}._dateRange_1hcbv_193{display:flex;align-items:flex-end;gap:6px;flex-wrap:wrap}._dateField_1hcbv_200{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}._dateLabel_1hcbv_208{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim)}._dateInput_1hcbv_216{padding:4px 6px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:11px;font-family:inherit;outline:none;transition:border-color .15s;min-width:0}._dateInput_1hcbv_216:focus{border-color:var(--accent)}._dateInput_1hcbv_216::-webkit-calendar-picker-indicator{filter:invert(.7);cursor:pointer}._traceList_1hcbv_238{display:flex;flex-direction:column;gap:4px;max-height:240px;overflow-y:auto;flex-shrink:0}._traceRow_1hcbv_247{display:flex;flex-direction:column;gap:3px;width:100%;padding:8px 10px;background:var(--bg);border:1px solid var(--border);border-left:3px solid #f59e0b;border-radius:6px;cursor:pointer;text-align:left;transition:border-color .15s,background .15s}._traceRow_1hcbv_247:hover{border-color:var(--text-dim);border-left-color:#f59e0b}._traceRowSelected_1hcbv_267{border-color:var(--accent);border-left-color:var(--accent);background:#6366f114}._traceMain_1hcbv_273{display:flex;justify-content:space-between;align-items:center}._traceId_1hcbv_279{font-size:12px;font-weight:500;color:var(--text);font-family:monospace}._spanCount_1hcbv_286{font-size:11px;color:var(--accent-hover);background:#6366f11f;padding:1px 6px;border-radius:4px}._traceMeta_1hcbv_294{display:flex;justify-content:space-between;align-items:center}._traceTime_1hcbv_300{font-size:11px;color:var(--text-dim)}._sessionId_1hcbv_305{font-size:10px;color:var(--text-dim);font-family:monospace}._traceDetail_1hcbv_73{display:flex;flex-direction:column;flex:1;min-height:0}._spanList_1hcbv_319{display:flex;flex-direction:column;flex:1;overflow-y:auto}._spanRow_1hcbv_326{padding:10px;border-bottom:1px solid var(--border);font-size:11px;display:flex;flex-direction:column;gap:4px}._spanRow_1hcbv_326:last-child{border-bottom:none}._spanHeader_1hcbv_339{display:flex;align-items:center;gap:6px;flex-wrap:wrap}._spanTimestamp_1hcbv_346{color:var(--text-dim);font-size:10px}._severityBadge_1hcbv_351{font-size:9px;font-weight:600;text-transform:uppercase;padding:1px 5px;border-radius:3px;background:#6366f126;color:var(--accent-hover)}._sevINFO_1hcbv_361{background:#22c55e26;color:#4ade80}._sevWARN_1hcbv_366{background:#eab30826;color:#facc15}._sevERROR_1hcbv_371{background:#ef444426;color:#f87171}._spanIdTag_1hcbv_376{font-size:9px;font-family:monospace;color:var(--text-dim);background:#ffffff0d;padding:1px 4px;border-radius:3px}._spanScope_1hcbv_385{font-size:10px;color:var(--text-dim);font-style:italic}._spanBody_1hcbv_391{color:var(--text);font-size:12px;line-height:1.4}._rawToggle_1hcbv_397{background:none;border:none;color:var(--text-dim);font-size:10px;cursor:pointer;padding:2px 0;text-align:left;width:fit-content}._rawToggle_1hcbv_397:hover{color:var(--text)}._spanRaw_1hcbv_412{font-family:monospace;font-size:10px;color:var(--text-dim);white-space:pre-wrap;word-break:break-all;max-height:200px;overflow-y:auto;background:#00000026;padding:6px 8px;border-radius:4px;line-height:1.4;margin:0}._body_sadpk_1{display:flex;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}._interactionsList_sadpk_9{width:220px;min-width:180px;border-right:1px solid var(--border);overflow-y:auto;flex-shrink:0}._interactionItem_sadpk_17{display:flex;flex-direction:column;gap:2px;width:100%;padding:8px 10px;background:none;border:none;border-bottom:1px solid var(--border);border-left:3px solid transparent;cursor:pointer;text-align:left;transition:background .15s,border-color .15s;color:var(--text)}._interactionItem_sadpk_17:hover{background:#ffffff08}._interactionItemSelected_sadpk_36{border-left-color:var(--accent);background:#6366f114}._interactionPrompt_sadpk_41{font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._interactionMeta_sadpk_49{display:flex;justify-content:space-between;align-items:center}._interactionTraceId_sadpk_55{font-size:10px;font-family:monospace;color:var(--text-dim)}._interactionTime_sadpk_61{font-size:10px;color:var(--text-dim)}._interactionSpanCount_sadpk_66{font-size:10px;color:var(--accent-hover);background:#6366f11f;padding:0 5px;border-radius:3px}._rightArea_sadpk_75{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}._waterfall_sadpk_84{flex:1;overflow-y:auto;min-height:0}._userPromptRow_sadpk_90{display:flex;align-items:center;gap:8px;padding:6px 10px;font-size:12px;background:#6366f10f;border-bottom:1px solid var(--border);color:var(--text)}._userPromptText_sadpk_101{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}._waterfallRow_sadpk_108{display:flex;align-items:center;gap:6px;padding:4px 10px;font-size:11px;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.03);transition:background .1s}._waterfallRow_sadpk_108:hover{background:#ffffff0a}._waterfallRowSelected_sadpk_122{background:#6366f11a;border-left:2px solid var(--accent);padding-left:8px}._spanIcon_sadpk_128{flex-shrink:0;width:16px;text-align:center;font-size:12px}._spanLabel_sadpk_135{flex-shrink:0;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text);font-size:11px}._barContainer_sadpk_145{flex:1;height:16px;position:relative;min-width:60px}._bar_sadpk_145{position:absolute;top:2px;height:12px;border-radius:2px;min-width:2px}._barInvocation_sadpk_160{background:#6366f180}._barAgent_sadpk_164{background:#22c55e80}._barLlm_sadpk_168{background:#a855f780}._barTool_sadpk_172{background:#f59e0b80}._barOther_sadpk_176{background:#6b728066}._duration_sadpk_180{flex-shrink:0;font-size:10px;color:var(--text-dim);min-width:50px;text-align:right;font-family:monospace}._detailPane_sadpk_190{border-top:1px solid var(--border);max-height:50%;overflow-y:auto;flex-shrink:0}._detailHeader_sadpk_197{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface);z-index:1}._iconBtn_sadpk_209{background:none;border:none;color:var(--text-dim);cursor:pointer;padding:2px;display:flex;align-items:center;border-radius:3px}._iconBtn_sadpk_209:hover{color:var(--text);background:#ffffff0d}._tabBar_sadpk_224{display:flex;gap:0}._tab_sadpk_224{background:none;border:none;color:var(--text-dim);font-size:11px;font-weight:500;padding:4px 12px;cursor:pointer;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}._tab_sadpk_224:hover{color:var(--text)}._tabActive_sadpk_244{color:var(--accent-hover);border-bottom-color:var(--accent)}._detailBody_sadpk_249{padding:8px 10px;font-size:11px}._attrTable_sadpk_254{width:100%;border-collapse:collapse}._attrTable_sadpk_254 td{padding:3px 6px;vertical-align:top;border-bottom:1px solid rgba(255,255,255,.03)}._attrKey_sadpk_265{color:var(--text-dim);font-weight:500;white-space:nowrap;width:1%;padding-right:12px}._attrValue_sadpk_273{color:var(--text);word-break:break-word;font-family:monospace;font-size:10px}._emptyState_sadpk_280{padding:20px;text-align:center;color:var(--text-dim);font-size:12px}._error_1vxci_1{padding:8px 12px;color:var(--error);font-size:12px}._toolListItems_1vxci_7{display:flex;flex-direction:column;gap:2px;padding:8px 12px}._toolItem_1vxci_14{display:flex;align-items:center;gap:12px;padding:6px 8px;background:none;border:1px solid transparent;border-radius:6px;color:var(--text);font-size:13px;font-family:inherit;cursor:pointer;text-align:left;transition:background .1s,border-color .1s}._toolItem_1vxci_14:hover{background:var(--bg)}._toolItemSelected_1vxci_34{background:var(--bg);border-color:var(--accent)}._toolName_1vxci_39{font-weight:500;font-family:SF Mono,Fira Code,Cascadia Code,monospace;flex-shrink:0}._toolDesc_1vxci_45{color:var(--text-dim);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._toolForm_1vxci_53{padding:12px 12px 16px;border-top:1px solid var(--border)}._toolFormHeader_1vxci_58{font-size:13px;font-weight:600;font-family:SF Mono,Fira Code,Cascadia Code,monospace;color:var(--text);margin-bottom:2px}._toolFormDesc_1vxci_66,._noParams_1vxci_72{font-size:12px;color:var(--text-dim);margin-bottom:12px}._field_1vxci_78{margin-bottom:10px}._fieldLabel_1vxci_82{display:flex;align-items:baseline;gap:6px;font-size:12px;font-weight:500;color:var(--text);margin-bottom:4px}._fieldType_1vxci_92{font-size:11px;color:var(--text-dim);font-weight:400}._fieldInput_1vxci_98{width:100%;padding:6px 10px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:13px;font-family:inherit;outline:none;transition:border-color .15s}._fieldInput_1vxci_98:focus{border-color:var(--accent)}._fieldTextarea_1vxci_115{resize:vertical;min-height:60px;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:12px}._fieldHint_1vxci_122{font-size:11px;color:var(--text-dim);margin-top:2px}._callBtn_1vxci_128{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;background:var(--accent);color:#fff;border:none;border-radius:6px;font-size:13px;font-family:inherit;cursor:pointer;transition:background .15s;margin-top:4px}._callBtn_1vxci_128:hover:not(:disabled){background:var(--accent-hover)}._callBtn_1vxci_128:disabled{opacity:.5;cursor:not-allowed}._spinning_1vxci_153{animation:_spin_1vxci_153 1s linear infinite}@keyframes _spin_1vxci_153{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--bg: #0f1117;--surface: #1a1d27;--border: #2a2e3a;--text: #b4b4bc;--text-dim: #71717a;--accent: #6366f1;--accent-hover: #818cf8;--user-bg: #1e293b;--error: #ef4444;--warning: #e0a84e;--green: #22c55e;--radius: 12px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}html,body,#root{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}.cmd{font-family:monospace;font-size:12px;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:2px 6px}.appLayout{display:flex;height:100%;overflow:hidden}.app{display:flex;flex-direction:column;flex:1;min-width:0;height:100%}.startError{padding:8px 16px;background:#dc262626;color:#f87171;font-size:.85rem}.disconnectedView{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:40px 20px;color:var(--text-dim)}.disconnectedIcon{font-size:36px;margin-bottom:8px}.disconnectedTitle{font-size:18px;font-weight:600;color:var(--text)}.disconnectedText{font-size:13px;margin:4px 0 0}.disconnectedCmd{display:block;font-family:monospace;font-size:13px;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:6px 14px;color:var(--text);-webkit-user-select:all;user-select:all}
1
+ ._panel_1gqyj_1{display:flex;flex-direction:column;border-top:1px solid var(--border);background:var(--surface);min-height:0;overflow:hidden;flex-shrink:0}._resizeHandle_1gqyj_11{height:4px;cursor:row-resize;background:var(--bg);flex-shrink:0}._resizeHandle_1gqyj_11:hover{background:var(--accent);opacity:.3}._header_1gqyj_22{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:var(--bg);border-bottom:1px solid var(--border);flex-shrink:0}._headerLeft_1gqyj_32{display:flex;align-items:center;gap:8px}._headerTitle_1gqyj_38{font-size:12px;font-weight:600;color:var(--text)}._headerActions_1gqyj_44{display:flex;align-items:center;gap:4px}._collapseToggle_1gqyj_50{background:none;border:none;color:var(--text-dim);cursor:pointer;padding:2px 4px;display:flex;align-items:center;gap:6px;border-radius:3px}._collapseToggle_1gqyj_50:hover{color:var(--text);background:#ffffff0d}._iconBtn_1gqyj_66{background:none;border:none;color:var(--text-dim);cursor:pointer;padding:2px;display:flex;align-items:center;border-radius:3px}._iconBtn_1gqyj_66:hover{color:var(--text);background:#ffffff0d}._iconBtn_1gqyj_66:disabled{opacity:.4;cursor:not-allowed}._spinning_1gqyj_86{animation:_spin_1gqyj_86 1s linear infinite}@keyframes _spin_1gqyj_86{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._status_1gqyj_98{font-size:11px;color:var(--text-dim)}._body_1gqyj_103{flex:1;overflow:auto;min-height:0;position:relative}._error_1di92_1{padding:8px 12px;color:var(--error);font-size:12px}._version_1di92_7{font-size:11px;color:var(--text-dim);font-weight:400}._body_1di92_13{padding:8px 12px 12px}._cardName_1di92_17{font-size:14px;font-weight:600;color:var(--text);margin-bottom:2px}._cardDesc_1di92_24{font-size:12px;color:var(--text-dim);margin-bottom:10px}._section_1di92_30{margin-bottom:10px}._sectionLabel_1di92_34{font-size:11px;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}._tags_1di92_43{display:flex;flex-wrap:wrap;gap:4px}._tag_1di92_43{padding:2px 8px;background:var(--bg);border:1px solid var(--border);border-radius:4px;font-size:11px;color:var(--text-dim)}._skillList_1di92_58{display:flex;flex-direction:column;gap:4px}._skillItem_1di92_64{display:flex;flex-direction:column;gap:2px;padding:6px 8px;border-radius:6px;background:var(--bg)}._skillName_1di92_73{font-size:13px;font-weight:500;color:var(--text);font-family:SF Mono,Fira Code,Cascadia Code,monospace}._skillDesc_1di92_80{font-size:12px;color:var(--text-dim)}._skillTags_1di92_85{display:flex;flex-wrap:wrap;gap:3px;margin-top:2px}._area_1u9gx_1{padding:16px 20px;border-top:1px solid var(--border);background:var(--surface);flex-shrink:0}._row_1u9gx_8{max-width:780px;margin:0 auto;display:flex;gap:8px;align-items:flex-end}._textarea_1u9gx_16{flex:1;resize:none;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:var(--radius);padding:10px 14px;font-size:14px;font-family:inherit;line-height:1.5;min-height:44px;max-height:160px;outline:none;transition:border-color .15s}._textarea_1u9gx_16:focus{border-color:var(--accent)}._textarea_1u9gx_16::placeholder{color:var(--text-dim)}._textarea_1u9gx_16:disabled{opacity:.5}._sendBtn_1u9gx_45{width:44px;height:44px;border:none;border-radius:var(--radius);background:var(--accent);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0}._sendBtn_1u9gx_45:hover:not(:disabled){background:var(--accent-hover)}._sendBtn_1u9gx_45:disabled{opacity:.4;cursor:not-allowed}._sendBtn_1u9gx_45 svg{width:20px;height:20px}._wrapper_1rkpz_1{position:relative;display:inline-flex}._tooltip_1rkpz_6{position:absolute;top:calc(100% + 6px);font-size:11px;padding:4px 8px;border-radius:6px;white-space:nowrap;box-shadow:0 4px 12px #0003;z-index:10;pointer-events:none}._align_center_1rkpz_18{left:50%;transform:translate(-50%)}._align_left_1rkpz_23{left:0}._align_right_1rkpz_27{right:0}._info_1rkpz_31{background:var(--surface);border:1px solid var(--border);color:var(--text)}._error_1rkpz_37{background:var(--surface);border:1px solid var(--error);color:var(--error-text)}._warning_1rkpz_43{background:var(--surface);border:1px solid var(--warning);color:var(--warning-text)}._toolbar_1lwtu_1{display:flex;align-items:center;gap:12px;padding:8px 20px;border-bottom:1px solid var(--border);background:var(--bg);flex-shrink:0}._agentSection_1lwtu_11{position:relative;display:flex;align-items:center;gap:8px}._agentPicker_1lwtu_18{display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:13px}._agentPicker_1lwtu_18._clickable_1lwtu_30{cursor:pointer;transition:border-color .15s,background .15s}._agentPicker_1lwtu_18._clickable_1lwtu_30:hover{border-color:var(--accent);background:#6366f114}._agentPicker_1lwtu_18:disabled{cursor:default}._agentLabel_1lwtu_44{color:var(--text-dim);font-size:12px}._agentName_1lwtu_49{font-weight:600}._starting_1lwtu_53{font-size:11px;color:var(--text-dim);font-weight:400}._chevron_1lwtu_59{color:var(--text-dim);flex-shrink:0}._dropdown_1lwtu_64{position:absolute;top:calc(100% + 4px);left:0;min-width:280px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0000004d;z-index:100;overflow:hidden}._dropdownItem_1lwtu_77{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;width:100%;padding:10px 14px;background:none;border:none;border-bottom:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;transition:background .1s}._dropdownItem_1lwtu_77:last-child{border-bottom:none}._dropdownItem_1lwtu_77:hover:not(:disabled){background:#6366f114}._dropdownItem_1lwtu_77._active_1lwtu_101{background:#6366f11f}._dropdownItem_1lwtu_77._hasError_1lwtu_105{opacity:.6;cursor:default}._dropdownName_1lwtu_110{font-weight:600;font-size:13px}._statusBadge_1lwtu_115{font-size:10px;font-weight:600;padding:1px 6px;border-radius:9999px;text-transform:uppercase;letter-spacing:.03em;line-height:1.4}._status_running_1lwtu_125{background:#22c55e26;color:#4ade80}._status_starting_1lwtu_130{background:#facc1526;color:#facc15}._status_error_1lwtu_135{background:#f8717126;color:#f87171}._status_idle_1lwtu_140{background:#94a3b826;color:#94a3b8}._dropdownMeta_1lwtu_145{font-size:11px;color:var(--text-dim)}._rightSection_1lwtu_150{display:flex;align-items:center;gap:8px;margin-left:auto}._errorText_1lwtu_157{font-size:12px;color:#f87171}._sessionBadge_1lwtu_162{display:flex;align-items:center;gap:4px;font-size:11px;font-family:monospace;padding:2px 8px;border-radius:9999px;background:#6366f11f;color:var(--accent-hover);border:1px solid rgba(99,102,241,.25);cursor:pointer;transition:background .15s,border-color .15s;white-space:nowrap}._sessionBadge_1lwtu_162:hover{background:#6366f133;border-color:var(--accent)}._newSessionBtn_1lwtu_183{display:flex;align-items:center;justify-content:center;padding:4px;border-radius:6px;border:1px solid var(--border);background:none;color:var(--text-dim);cursor:pointer;transition:color .15s,border-color .15s}._newSessionBtn_1lwtu_183:hover{color:var(--text);border-color:var(--text-dim)}._sessionEditBtn_1lwtu_201{display:flex;align-items:center;justify-content:center;padding:3px;border-radius:4px;border:none;background:none;color:var(--text-dim);cursor:pointer;transition:color .15s}._sessionEditBtn_1lwtu_201:hover{color:var(--accent-hover)}._sessionSetBtn_1lwtu_218{font-size:11px;padding:2px 8px;border-radius:9999px;border:1px dashed var(--accent-border-strong);background:none;color:var(--text-dim);cursor:pointer;transition:color .15s,border-color .15s;white-space:nowrap}._sessionSetBtn_1lwtu_218:hover{color:var(--accent-hover);border-color:var(--accent)}._sessionIdForm_1lwtu_235{display:flex;align-items:center}._sessionIdInput_1lwtu_240{font-size:11px;font-family:monospace;padding:2px 8px;border-radius:9999px;border:1px solid var(--accent);background:var(--surface);color:var(--text);outline:none;width:180px}._sessionIdConfirmBtn_1lwtu_252,._sessionIdCancelBtn_1lwtu_253{display:flex;align-items:center;justify-content:center;padding:3px;border-radius:4px;border:none;background:none;cursor:pointer;transition:color .15s}._sessionIdConfirmBtn_1lwtu_252{color:var(--green);padding-left:10px}._sessionIdConfirmBtn_1lwtu_252:hover{color:var(--green-text)}._sessionIdCancelBtn_1lwtu_253{color:var(--text-dim)}._sessionIdCancelBtn_1lwtu_253:hover{color:var(--error)}._confirmOverlay_1lwtu_282{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:200}._confirmModal_1lwtu_292{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:20px 24px;max-width:380px;box-shadow:0 12px 32px #0006}._confirmTitle_1lwtu_301{font-size:14px;font-weight:600;color:var(--text);margin-bottom:8px}._confirmMessage_1lwtu_308{font-size:13px;color:var(--warning);line-height:1.5;margin-bottom:16px}._confirmActions_1lwtu_315{display:flex;justify-content:flex-end;gap:8px}._confirmBtn_1lwtu_321{padding:6px 14px;border-radius:6px;font-size:13px;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text);transition:background .15s,border-color .15s}._confirmBtn_1lwtu_321:hover{background:#6366f114}._confirmBtnPrimary_1lwtu_336{background:var(--accent);color:#fff;border-color:var(--accent)}._confirmBtnPrimary_1lwtu_336:hover{background:var(--accent-hover)}._dropdownSeparator_1lwtu_346{height:1px;background:var(--border);margin:4px 0}._status_deployed_1lwtu_352{background:#6366f126;color:#818cf8}._targetToggle_1lwtu_357{display:flex;align-items:center;border-radius:6px;border:1px solid var(--border);overflow:hidden}._targetOption_1lwtu_365{padding:3px 10px;font-size:11px;font-weight:500;background:none;border:none;color:var(--text-dim);cursor:pointer;transition:background .15s,color .15s}._targetOption_1lwtu_365:hover:not(._targetOptionActive_1lwtu_376){background:var(--accent-bg);color:var(--text)}._targetOptionActive_1lwtu_376{background:var(--accent-bg-strong);color:var(--accent-hover)}._targetBadge_1lwtu_386{padding:3px 10px;font-size:11px;font-weight:500;border-radius:6px;background:var(--accent-bg);color:var(--text);cursor:default}._field_1my5z_1{display:flex;flex-direction:column;gap:4px;flex:1}._label_1my5z_8{font-size:12px;color:var(--text);font-weight:600}._description_1my5z_14{font-size:12px;color:var(--text-dim);line-height:1.3}._description_1my5z_14 a{color:var(--accent);text-decoration:none}._description_1my5z_14 a:hover{text-decoration:underline}._hint_1my5z_27{font-size:11px;color:var(--text-dim)}._optional_1my5z_32{font-weight:400;font-style:italic;color:var(--text-dim)}._infoIcon_4uj90_1{color:var(--text-dim);cursor:help;flex-shrink:0}._infoIcon_4uj90_1:hover{color:var(--accent)}._sectionLabel_yyel0_1{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text);margin-top:6px;padding-top:8px;border-top:1px solid var(--border)}._fields_1sypp_1{padding:8px 20px 12px;display:flex;flex-direction:column;gap:10px}._input_1sypp_8,._select_1sypp_9,._selectSmall_1sypp_10,._paramValue_1sypp_11,._textarea_1sypp_12{padding:6px 10px;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:13px}._input_1sypp_8:focus,._select_1sypp_9:focus,._selectSmall_1sypp_10:focus,._paramValue_1sypp_11:focus,._textarea_1sypp_12:focus{outline:none;border-color:var(--accent)}._select_1sypp_9{min-width:100px}._fieldRow_1sypp_33{display:flex;gap:12px;align-items:flex-start}._selectSmall_1sypp_10{padding:4px 8px;border-radius:5px;font-size:12px;width:fit-content}._input_1sypp_8{flex:1}._inputError_1sypp_50{border-color:var(--error)!important}._textarea_1sypp_12{font-family:inherit;resize:vertical}._radioGroup_1sypp_59{display:flex;align-items:center;gap:16px}._radioLabel_1sypp_65{display:flex;align-items:center;gap:5px;font-size:13px;color:var(--text);cursor:pointer}._skillRow_1sypp_74{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--border);border-radius:6px;background:var(--bg)}._skillHeader_1sypp_84{display:flex;align-items:center;gap:8px}._skillHint_1sypp_90{flex:1;font-size:12px;color:var(--text-dim)}._skillHint_1sypp_90 a{color:var(--accent);text-decoration:none}._skillHint_1sypp_90 a:hover{text-decoration:underline}._gitFields_1sypp_103{display:flex;flex-direction:column;gap:6px}._paramGrid_1sypp_109{display:flex;flex-direction:column;gap:10px}._paramGrid_1sypp_109 ._input_1sypp_8{max-width:140px}._validationError_1sypp_118{font-size:11px;color:var(--error-text);margin-top:2px}._paramRow_1sypp_124{display:flex;gap:6px;align-items:center}._paramKey_1sypp_130{flex:1;padding:5px 8px;border-radius:5px;font-size:12px;color:var(--text);background:transparent}._paramValue_1sypp_11{flex:2;padding:5px 8px;border-radius:5px;font-size:12px}._addBtn_1sypp_146{align-self:flex-start;padding:4px 10px;border-radius:5px;border:1px dashed var(--border);background:transparent;color:var(--accent);font-size:12px;cursor:pointer;transition:border-color .15s}._addBtn_1sypp_146:hover{border-color:var(--accent)}._removeBtn_1sypp_161{padding:2px 6px;border-radius:4px;border:none;background:transparent;color:var(--text-dim);font-size:16px;line-height:1;cursor:pointer}._removeBtn_1sypp_161:hover{color:var(--error-text)}._toolList_1sypp_175{display:flex;flex-direction:column;gap:4px}._toolItem_1sypp_181{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text);cursor:pointer}._toolName_1sypp_190{-webkit-user-select:none;user-select:none}._emptyTools_1sypp_194{margin:0;font-size:12px;color:var(--text-dim)}._emptyTools_1sypp_194 code{font-size:11px;padding:1px 4px;border-radius:3px;background:var(--border)}._emptyTools_1sypp_194 a{color:var(--accent);text-decoration:none}._emptyTools_1sypp_194 a:hover{text-decoration:underline}._header_lggp3_1{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}._title_lggp3_11{font-size:15px;font-weight:600}._badge_lggp3_16{font-size:12px;padding:2px 8px;border-radius:9999px;background:#eab30826;color:#eab308}._ready_lggp3_24{background:#22c55e26;color:var(--green)}._error_lggp3_29{background:#dc262626;color:#f87171}._rightGroup_lggp3_34{display:flex;align-items:center;gap:10px;margin-left:auto}._iconBtn_lggp3_41{background:none;border:1px solid var(--border);color:var(--text-dim);width:30px;height:30px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:color .15s,border-color .15s}._iconBtn_lggp3_41:hover{color:var(--text);border-color:var(--text-dim)}._iconBtnActive_lggp3_61{color:var(--accent);border-color:var(--accent);background:#6366f11a}._iconBtnActive_lggp3_61:hover{color:var(--accent-hover);border-color:var(--accent-hover);background:#6366f12e}._errorMessage_1up60_1{display:flex;flex-direction:column;gap:6px}._truncated_1up60_7,._full_1up60_12{white-space:pre-wrap;word-wrap:break-word}._toggle_1up60_17{all:unset;cursor:pointer;font-size:12px;color:var(--error);opacity:.8;font-weight:600}._toggle_1up60_17:hover{opacity:1;text-decoration:underline}._root_1x2ve_1{margin-top:8px}._pill_1x2ve_5{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#6366f114;border:1px solid rgba(99,102,241,.2);border-radius:12px;color:#a5b4fc;font-size:12px;font-weight:500}._cards_1x2ve_18{display:flex;flex-direction:column;gap:6px;margin-top:8px}._card_1x2ve_18{padding:8px 10px;background:#ffffff0a;border-radius:6px;border:1px solid rgba(255,255,255,.06);font-size:13px}._cardError_1x2ve_33{border-color:#ef444433}._cardHeader_1x2ve_37{display:flex;align-items:center;gap:6px}._toolIcon_1x2ve_43{color:#a78bfa;flex-shrink:0}._errorIcon_1x2ve_48{color:#ef4444;flex-shrink:0}._toolName_1x2ve_53{font-weight:600;color:#c4b5fd;font-family:monospace;font-size:12px}._preview_1x2ve_60{color:var(--text-dim);font-size:11px;font-family:monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}._spinner_1x2ve_70{margin-left:auto;color:#a5b4fc;animation:_spin_1x2ve_70 1s linear infinite}@keyframes _spin_1x2ve_70{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._toggle_1x2ve_84{display:flex;align-items:center;gap:4px;margin-top:4px;padding:0;background:none;border:none;color:var(--text-dim);font-size:11px;cursor:pointer}._toggle_1x2ve_84:hover{color:var(--text)}._json_1x2ve_100{margin:4px 0 0;padding:6px 8px;background:#00000026;border-radius:4px;font-family:monospace;font-size:11px;color:var(--text-dim);white-space:pre-wrap;word-break:break-all;line-height:1.4;max-height:200px;overflow-y:auto}._jsonError_1x2ve_115{color:#fca5a5}._root_1pdrb_1 h1{font-size:1.4em;font-weight:700;margin:.6em 0 .3em}._root_1pdrb_1 h2{font-size:1.25em;font-weight:700;margin:.5em 0 .25em}._root_1pdrb_1 h3{font-size:1.1em;font-weight:700;margin:.4em 0 .2em}._root_1pdrb_1 p{margin:0 0 .6em}._root_1pdrb_1 ul{margin-left:1.4em;margin-bottom:.6em;list-style-type:disc;padding:0}._root_1pdrb_1 ol{margin-left:1.4em;margin-bottom:.6em;list-style-type:decimal;padding:0}._root_1pdrb_1 li{margin-bottom:.15em}._root_1pdrb_1 code{background-color:#ffffff1a;padding:.15em .35em;border-radius:4px;font-family:monospace;font-size:.9em}._codeBlockWrapper_1pdrb_49{position:relative;margin:0 0 .6em;border-radius:6px;overflow:hidden;background-color:#ffffff14}._codeBlockWrapper_1pdrb_49 pre{margin:0}._codeBlockWrapper_1pdrb_49 pre code{background:none;padding:.6em .8em;border-radius:0;font-size:.85em;display:block;overflow:auto}._codeBlockHeader_1pdrb_70{display:flex;align-items:center;justify-content:space-between;padding:4px 8px;background:#ffffff0a;border-bottom:1px solid rgba(255,255,255,.06);min-height:28px}._codeBlockLang_1pdrb_80{font-size:11px;color:var(--text-dim);font-family:monospace}._copyBtn_1pdrb_86{background:none;border:1px solid rgba(255,255,255,.12);color:var(--text-dim);width:26px;height:26px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;margin-left:auto;transition:color .15s,border-color .15s,background .15s}._copyBtn_1pdrb_86:hover{color:var(--text);border-color:#ffffff40;background:#ffffff0f}._root_1pdrb_1 pre code{background-color:#ffffff14;padding:.6em .8em;border-radius:6px;font-size:.85em;display:block;overflow:auto}._root_1pdrb_1 pre{margin:0 0 .6em}._root_1pdrb_1 hr{border:none;border-top:1px solid rgba(255,255,255,.1);margin:.8em 0}._root_1pdrb_1 table{border-collapse:collapse;width:100%;margin-bottom:.6em;font-size:.9em}._root_1pdrb_1 th{border-bottom:2px solid rgba(255,255,255,.2);padding:.4em .8em;text-align:left;font-weight:700}._root_1pdrb_1 td{border-bottom:1px solid rgba(255,255,255,.08);padding:.35em .8em}._root_1pdrb_1 blockquote{border-left:3px solid rgba(99,102,241,.5);padding-left:.8em;margin:0 0 .6em;opacity:.8}._root_1pdrb_1 a{color:#818cf8;text-decoration:underline}._root_1pdrb_1 strong{font-weight:700}._root_1pdrb_1 em{font-style:italic}._root_11p18_1{display:inline-flex;align-items:center;gap:6px;margin-top:4px}._pill_11p18_8{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;background:#10b98114;border:1px solid rgba(16,185,129,.2);border-radius:12px;color:#6ee7b7;font-size:11px;font-weight:500;font-family:monospace}._icon_11p18_22{flex-shrink:0;color:#34d399}._separator_11p18_27{color:#fff3}._dim_11p18_31{color:#6ee7b799;font-weight:400}._cache_11p18_36{color:#fbbf24}._root_ryrat_1{margin-top:8px}._pill_ryrat_5{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#6366f114;border:1px solid rgba(99,102,241,.2);border-radius:12px;color:#a5b4fc;font-size:12px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s}._pill_ryrat_5:hover{background:#6366f126;border-color:#6366f159}._cards_ryrat_24{display:flex;flex-direction:column;gap:6px;margin-top:8px}._card_ryrat_24{padding:8px 10px;background:#ffffff0a;border-radius:6px;border:1px solid rgba(255,255,255,.06);font-size:13px}._cardHeader_ryrat_39{display:flex;align-items:center;gap:6px}._toolIcon_ryrat_45{color:#a78bfa;flex-shrink:0}._toolName_ryrat_50{font-weight:600;color:#c4b5fd;font-family:monospace;font-size:12px}._duration_ryrat_57{margin-left:auto;color:var(--text-dim);font-size:11px;font-family:monospace}._toggle_ryrat_64{display:flex;align-items:center;gap:4px;margin-top:4px;padding:0;background:none;border:none;color:var(--text-dim);font-size:11px;cursor:pointer}._toggle_ryrat_64:hover{color:var(--text)}._json_ryrat_80{margin:4px 0 0;padding:6px 8px;background:#00000026;border-radius:4px;font-family:monospace;font-size:11px;color:var(--text-dim);white-space:pre-wrap;word-break:break-all;line-height:1.4;max-height:200px;overflow-y:auto}._messages_17zuj_1{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}._emptyState_17zuj_10{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-dim);gap:8px}._emptyStateIcon_17zuj_20{display:flex;align-items:center;justify-content:center}._emptyStateAgent_17zuj_26{font-size:18px;font-weight:600;color:var(--text)}._emptyStateBadge_17zuj_32{font-size:11px;font-weight:600;letter-spacing:.05em;padding:2px 8px;border-radius:4px;margin-top:4px}._emptyStateBadge_17zuj_32._deployed_17zuj_40{background:var(--accent-bg-strong);color:var(--accent-hover)}._emptyStateBadge_17zuj_32._local_17zuj_44{background:var(--green-bg);color:var(--info-text)}._emptyStateDetails_17zuj_49{font-size:13px;color:var(--text-dim)}._emptyStateText_17zuj_54{font-size:14px;margin-top:8px}._msg_17zuj_59{max-width:780px;width:100%;margin:0 auto}._msgUser_17zuj_65{max-width:780px;width:100%;margin:0 auto;display:flex;flex-direction:column;align-items:flex-end}._role_17zuj_74{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;color:var(--text-dim)}._body_17zuj_83{padding:12px 16px;border-radius:var(--radius);font-size:14px;line-height:1.5;word-wrap:break-word}._bodyUser_17zuj_91{white-space:pre-wrap;background:var(--user-bg);padding:8px 12px}._bodyAssistant_17zuj_98{background:transparent;border:none}._bodyError_17zuj_104{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--error)}._thinking_17zuj_111{max-width:780px;width:100%;margin:0 auto;color:var(--text-dim);font-size:14px;display:flex;align-items:baseline}._thinkingDot_17zuj_121{animation:_ellipsisDot_17zuj_1 1.4s infinite}._thinkingDot_17zuj_121:nth-child(2){animation-delay:.2s}._thinkingDot_17zuj_121:nth-child(3){animation-delay:.4s}@keyframes _ellipsisDot_17zuj_1{0%,20%{opacity:0}50%{opacity:1}to{opacity:0}}._spinner_17zuj_144{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:_spin_17zuj_144 .8s linear infinite}._startingText_17zuj_153{font-size:15px;color:var(--text-dim);display:flex;align-items:baseline}@keyframes _spin_17zuj_144{to{transform:rotate(360deg)}}._notice_1isal_1{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;color:var(--error);font-size:12px;text-align:center}._warning_1isal_12{color:var(--warning)}._retryBtn_1isal_16{background:none;border:1px solid var(--error);color:var(--error);padding:3px 10px;border-radius:6px;cursor:pointer;font-size:11px}._retryBtn_1isal_16:hover{background:#ef44441a}._container_qogk5_1{display:flex;flex-direction:column}._toggleRow_qogk5_6{display:flex;align-items:center;gap:4px}._toggle_qogk5_6{display:flex;align-items:center;gap:6px;flex:1;padding:8px 12px;background:var(--bg);border:1px solid var(--border);border-radius:8px;cursor:pointer;text-align:left;color:var(--text);font-size:13px;font-weight:500;transition:border-color .15s}._toggle_qogk5_6:hover{border-color:var(--text-dim)}._chevron_qogk5_32{font-size:11px;color:var(--text-dim);flex-shrink:0}._icon_qogk5_38{font-size:14px;flex-shrink:0}._label_qogk5_43{flex:1}._content_qogk5_47{margin-top:6px;margin-left:12px;display:flex;flex-direction:column;gap:6px}._status_qogk5_55{text-align:center;color:var(--text-dim);font-size:12px;padding:12px 0}._error_qogk5_62{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;color:var(--error);font-size:12px;text-align:center}._detail_qogk5_73{border:1px solid var(--border);border-radius:8px;overflow:hidden;margin-top:4px}._detailHeader_qogk5_80{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:var(--bg);border-bottom:1px solid var(--border)}._detailTitle_qogk5_89{font-size:12px;font-weight:600;color:var(--text)}._closeBtn_qogk5_95{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:12px;padding:2px 4px}._closeBtn_qogk5_95:hover{color:var(--text)}._status_qogk5_55{color:var(--text);display:flex;flex-direction:column;gap:4px}._content_qogk5_47{margin-left:0}._controls_qogk5_118{display:flex;flex-direction:column;gap:6px}._field_qogk5_124{display:flex;flex-direction:column;gap:2px}._fieldLabel_qogk5_130{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim)}._input_qogk5_138{padding:6px 8px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:12px;font-family:inherit;outline:none;transition:border-color .15s}._input_qogk5_138:focus{border-color:var(--accent)}._input_qogk5_138::placeholder{color:var(--text-dim)}._select_qogk5_158{padding:6px 8px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:12px;font-family:inherit;outline:none;cursor:pointer;transition:border-color .15s}._select_qogk5_158:focus{border-color:var(--accent)}._actions_qogk5_175{display:flex;gap:6px}._actionBtn_qogk5_180{flex:1;padding:6px 12px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:12px;font-weight:500;cursor:pointer;transition:border-color .15s,background .15s}._actionBtn_qogk5_180:hover:not(:disabled){border-color:var(--text-dim)}._actionBtn_qogk5_180:disabled{opacity:.4;cursor:not-allowed}._searchBtn_qogk5_202{background:#6366f11f;border-color:#6366f14d;color:var(--accent-hover)}._searchBtn_qogk5_202:hover:not(:disabled){background:#6366f133;border-color:var(--accent)}._resultCount_qogk5_213{font-size:10px;color:var(--text-dim);padding:0 2px 2px}._recordList_qogk5_219{display:flex;flex-direction:column;gap:4px;max-height:320px;overflow-y:auto}._recordRow_qogk5_228{display:flex;flex-direction:column;gap:3px;width:100%;padding:8px 10px;background:var(--bg);border:1px solid var(--border);border-left:3px solid #22c55e;border-radius:6px;cursor:pointer;text-align:left;transition:border-color .15s,background .15s}._recordRow_qogk5_228:hover{border-color:var(--text-dim);border-left-color:#22c55e}._recordRowSelected_qogk5_248{border-color:var(--accent);border-left-color:var(--accent);background:#6366f114}._recordMain_qogk5_254{display:flex;justify-content:space-between;align-items:center;gap:8px}._recordContent_qogk5_261{font-size:12px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}._scoreBadge_qogk5_271{font-size:10px;font-weight:600;color:var(--accent-hover);background:#6366f11f;padding:1px 6px;border-radius:4px;flex-shrink:0}._recordMeta_qogk5_281{display:flex;justify-content:space-between;align-items:center;gap:6px}._strategyTag_qogk5_288{font-size:10px;color:#4ade80;background:#22c55e1f;padding:1px 6px;border-radius:4px}._recordTime_qogk5_296{font-size:10px;color:var(--text-dim)}._detailBody_qogk5_302{padding:10px;display:flex;flex-direction:column;gap:10px}._detailSection_qogk5_309{display:flex;flex-direction:column;gap:2px}._detailLabel_qogk5_315{font-size:10px;font-weight:600;text-transform:uppercase;color:var(--text-dim)}._detailContent_qogk5_322{font-size:12px;color:var(--text);white-space:pre-wrap;word-break:break-word;line-height:1.5;max-height:200px;overflow-y:auto;background:#00000026;padding:6px 8px;border-radius:4px}._metadataGrid_qogk5_335{display:flex;flex-direction:column;gap:2px}._metadataRow_qogk5_341{display:flex;justify-content:space-between;gap:12px;padding:3px 0;border-bottom:1px solid rgba(42,46,58,.5);font-size:11px}._metadataRow_qogk5_341:last-child{border-bottom:none}._metadataKey_qogk5_354{color:var(--text-dim);flex-shrink:0;font-family:monospace;font-size:10px}._metadataValue_qogk5_361{color:var(--text);text-align:right;overflow:hidden;text-overflow:ellipsis;word-break:break-all;font-size:11px}._detailId_qogk5_370{font-size:10px;color:var(--text-dim);font-family:monospace;word-break:break-all}._namespacesValue_qogk5_377{font-size:11px;color:var(--text);font-family:monospace}._noMetadata_qogk5_383{font-size:11px;color:var(--text-dim)}._panel_lfvg8_1{display:flex;flex-direction:column;min-width:320px;max-width:80vw;height:100%;border-left:1px solid var(--border);background:var(--surface);overflow:hidden;position:relative}._resizeHandle_lfvg8_13{position:absolute;left:0;top:0;bottom:0;width:4px;cursor:col-resize;z-index:10;background:transparent;transition:background .15s}._resizeHandle_lfvg8_13:hover,._resizeHandle_lfvg8_13:active{background:var(--accent)}._header_lfvg8_30{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);flex-shrink:0}._projectName_lfvg8_39{font-size:14px;font-weight:600;color:var(--text)}._headerActions_lfvg8_45{display:flex;gap:4px}._iconBtn_lfvg8_50{background:none;border:1px solid var(--border);color:var(--text-dim);width:28px;height:28px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:color .15s,border-color .15s}._iconBtn_lfvg8_50:hover{color:var(--text);border-color:var(--text-dim)}._tabBar_lfvg8_70{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}._tab_lfvg8_70{flex:1;padding:8px 12px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-dim);font-size:12px;font-weight:500;cursor:pointer;transition:color .15s,border-color .15s}._tab_lfvg8_70:hover{color:var(--text)}._tabActive_lfvg8_93{color:var(--text);border-bottom-color:var(--accent)}._body_lfvg8_98{flex:1;overflow-y:auto;padding:12px}._tabContent_lfvg8_104{display:flex;flex-direction:column;height:100%}._tabContent_lfvg8_104[hidden]{display:none}._status_lfvg8_114{text-align:center;color:var(--text-dim);font-size:13px;padding:24px 0}._error_lfvg8_121{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 12px;color:var(--error);font-size:13px;text-align:center}._retryBtn_lfvg8_132{background:none;border:1px solid var(--error);color:var(--error);padding:4px 12px;border-radius:6px;cursor:pointer;font-size:12px}._retryBtn_lfvg8_132:hover{background:#ef44441a}._graph_lfvg8_146{display:flex;flex-direction:column;gap:16px}._section_lfvg8_152{display:flex;flex-direction:column;gap:6px}._sectionTitle_lfvg8_158{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);padding:0 4px}._childNode_lfvg8_167{margin-left:20px;position:relative}._childNode_lfvg8_167:before{content:"";position:absolute;left:-12px;top:50%;width:8px;height:1px;background:var(--border)}._node_lfvg8_183{display:flex;align-items:flex-start;gap:10px;width:100%;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:8px;cursor:pointer;text-align:left;transition:border-color .15s,background .15s}._node_lfvg8_183:hover{border-color:var(--text-dim)}._nodeSelected_lfvg8_201{border-color:var(--accent);background:#6366f114}._nodeIcon_lfvg8_206{font-size:16px;line-height:1;flex-shrink:0;margin-top:1px;color:var(--text-dim);display:flex;align-items:center}._agent_lfvg8_216 ._nodeIcon_lfvg8_206{color:#818cf8}._harness_lfvg8_220 ._nodeIcon_lfvg8_206{color:#f0abfc}._memory_lfvg8_224 ._nodeIcon_lfvg8_206{color:#4ade80}._credential_lfvg8_228 ._nodeIcon_lfvg8_206{color:#facc15}._gateway_lfvg8_232 ._nodeIcon_lfvg8_206{color:#c084fc}._gatewayTarget_lfvg8_236 ._nodeIcon_lfvg8_206{color:#a78bfa}._mcpTool_lfvg8_240 ._nodeIcon_lfvg8_206{color:#2dd4bf}._evaluator_lfvg8_244 ._nodeIcon_lfvg8_206{color:#f472b6}._onlineEval_lfvg8_248 ._nodeIcon_lfvg8_206{color:#fb923c}._policyEngine_lfvg8_252 ._nodeIcon_lfvg8_206{color:#60a5fa}._policy_lfvg8_252 ._nodeIcon_lfvg8_206{color:#93c5fd}._unassignedTarget_lfvg8_260 ._nodeIcon_lfvg8_206{color:#a1a1aa}._nodeContent_lfvg8_264{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}._nodeName_lfvg8_272{font-size:13px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._nodeNameRow_lfvg8_281{display:flex;align-items:center;gap:6px}._deployBadge_lfvg8_288{font-size:10px;font-weight:600;padding:1px 6px;border-radius:4px;white-space:nowrap;line-height:1.4;flex-shrink:0}._deploy_deployed_lfvg8_298{background:#22c55e26;color:#22c55e}._deploy_local-only_lfvg8_303{background:#eab30826;color:#eab308}._deploy_pending-removal_lfvg8_308{background:#ef444426;color:#ef4444}._nodeSubtitle_lfvg8_313{font-size:11px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._nodeConnections_lfvg8_321{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}._connectionTag_lfvg8_328{font-size:10px;padding:1px 6px;border-radius:4px;background:#6366f11f;color:var(--accent-hover)}._agent_lfvg8_216{border-left:3px solid #6366f1}._harness_lfvg8_220{border-left:3px solid #d946ef}._memory_lfvg8_224{border-left:3px solid #22c55e}._credential_lfvg8_228{border-left:3px solid #eab308}._gateway_lfvg8_232{border-left:3px solid #a855f7}._gatewayTarget_lfvg8_236{border-left:3px solid #c084fc}._mcpTool_lfvg8_240{border-left:3px solid #14b8a6}._evaluator_lfvg8_244{border-left:3px solid #ec4899}._onlineEval_lfvg8_248{border-left:3px solid #f97316}._policyEngine_lfvg8_252{border-left:3px solid #3b82f6}._policy_lfvg8_252{border-left:3px solid #93c5fd}._unassignedTarget_lfvg8_260{border-left:3px solid #71717a}._infoCard_lfvg8_386{margin-top:16px;border:1px solid var(--border);border-radius:8px;overflow:hidden}._infoHeader_lfvg8_393{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--bg);border-bottom:1px solid var(--border)}._kindBadge_lfvg8_402{font-size:10px;font-weight:600;text-transform:uppercase;padding:2px 6px;border-radius:4px;color:#fff}._kindBadge_lfvg8_402._agent_lfvg8_216{background:#6366f1}._kindBadge_lfvg8_402._harness_lfvg8_220{background:#d946ef}._kindBadge_lfvg8_402._memory_lfvg8_224{background:#22c55e}._kindBadge_lfvg8_402._credential_lfvg8_228{background:#eab308;color:#000}._kindBadge_lfvg8_402._gateway_lfvg8_232{background:#a855f7}._kindBadge_lfvg8_402._gatewayTarget_lfvg8_236{background:#c084fc}._kindBadge_lfvg8_402._mcpTool_lfvg8_240{background:#14b8a6}._kindBadge_lfvg8_402._evaluator_lfvg8_244{background:#ec4899}._kindBadge_lfvg8_402._onlineEval_lfvg8_248{background:#f97316}._kindBadge_lfvg8_402._policyEngine_lfvg8_252{background:#3b82f6}._kindBadge_lfvg8_402._policy_lfvg8_252{background:#93c5fd;color:#000}._kindBadge_lfvg8_402._unassignedTarget_lfvg8_260{background:#71717a}._infoName_lfvg8_461{font-size:13px;font-weight:600;color:var(--text)}._infoBody_lfvg8_467{padding:8px 12px}._infoSectionHeader_lfvg8_471{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);padding:8px 0 4px;margin-top:4px}._infoRow_lfvg8_481{display:flex;justify-content:space-between;gap:12px;padding:4px 0;border-bottom:1px solid rgba(42,46,58,.5);font-size:12px}._infoRow_lfvg8_481:last-child{border-bottom:none}._infoKey_lfvg8_494{color:var(--text-dim);flex-shrink:0}._infoValue_lfvg8_499{color:var(--text);text-align:right;overflow:hidden;text-overflow:ellipsis;word-break:break-all}._dimText_rs5f0_1{color:var(--text-dim)}._assistantMsg_rs5f0_5{white-space:pre-wrap}._toolCalls_rs5f0_9{display:flex;flex-direction:column;gap:4px}._toolCall_rs5f0_9{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px}._toolIcon_rs5f0_22{font-size:12px}._toolName_rs5f0_26{font-weight:600;font-size:12px;color:#a78bfa}._toolArgs_rs5f0_32{font-family:monospace;font-size:10px;color:var(--text-dim);background:#0000001f;padding:4px 6px;border-radius:4px;margin:2px 0 0;white-space:pre-wrap;word-break:break-all;width:100%}._toolResult_rs5f0_45{display:flex;flex-direction:column;gap:2px}._toolResultStatus_rs5f0_51{font-size:10px;font-weight:600;text-transform:uppercase;color:var(--info-text)}._toolResultError_rs5f0_58{color:var(--error-text)}._finishReason_rs5f0_62{font-size:10px;color:var(--text-dim);font-style:italic}._genAiContent_rs5f0_68{display:flex;flex-direction:column;gap:4px}._contentText_rs5f0_74{white-space:pre-wrap}._strandsEvent_rs5f0_78{display:flex;flex-direction:column;gap:6px}._strandsSection_rs5f0_84{display:flex;flex-direction:column;gap:2px}._strandsLabel_rs5f0_90{font-size:10px;font-weight:600;text-transform:uppercase;color:var(--text-dim)}._messageList_rs5f0_97{display:flex;flex-direction:column;gap:3px}._msgRow_rs5f0_103{display:flex;gap:6px;align-items:flex-start}._roleBadge_rs5f0_109{font-size:9px;font-weight:600;text-transform:uppercase;padding:1px 5px;border-radius:3px;flex-shrink:0;background:#ffffff14;color:var(--text-dim)}._role_user_rs5f0_120{background:#3b82f626;color:#60a5fa}._role_assistant_rs5f0_125{background:#a855f726;color:#c084fc}._role_system_rs5f0_130{background:#6b728026;color:#9ca3af}._role_tool_rs5f0_135{background:#14b8a626;color:#2dd4bf}._msgText_rs5f0_140{font-size:11px;color:var(--text);word-break:break-word}._msgContent_rs5f0_146{flex:1;min-width:0}._parsedContent_rs5f0_151{display:flex;flex-direction:column;gap:4px}._spanScope_rs5f0_157{font-size:10px;color:var(--text-dim);font-style:italic}._spanRaw_rs5f0_163{font-family:monospace;font-size:10px;color:var(--text-dim);white-space:pre-wrap;word-break:break-all;max-height:200px;overflow-y:auto;background:#00000026;padding:6px 8px;border-radius:4px;line-height:1.4;margin:0}._container_c3i5z_1{display:flex;flex-direction:column}._toggleRow_c3i5z_6{display:flex;align-items:center;gap:4px}._toggle_c3i5z_6{display:flex;align-items:center;gap:6px;flex:1;padding:8px 12px;background:var(--bg);border:1px solid var(--border);border-radius:8px;cursor:pointer;text-align:left;color:var(--text);font-size:13px;font-weight:500;transition:border-color .15s}._toggle_c3i5z_6:hover{border-color:var(--text-dim)}._chevron_c3i5z_32{font-size:11px;color:var(--text-dim);flex-shrink:0}._icon_c3i5z_38{font-size:14px;flex-shrink:0}._label_c3i5z_43{flex:1}._content_c3i5z_47{margin-top:6px;margin-left:12px;display:flex;flex-direction:column;gap:6px}._status_c3i5z_55{text-align:center;color:var(--text-dim);font-size:12px;padding:12px 0}._error_c3i5z_62{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;color:var(--error);font-size:12px;text-align:center}._detail_c3i5z_73,._logPanel_c3i5z_73,._traceDetail_c3i5z_73{border:1px solid var(--border);border-radius:8px;overflow:hidden;margin-top:4px}._detailHeader_c3i5z_80{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:var(--bg);border-bottom:1px solid var(--border)}._detailTitle_c3i5z_89{font-size:12px;font-weight:600;color:var(--text)}._closeBtn_c3i5z_95{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:12px;padding:2px 4px}._closeBtn_c3i5z_95:hover{color:var(--text)}._container_c3i5z_1{overflow-y:auto}._content_c3i5z_47{margin-left:0}._controls_c3i5z_115{display:flex;flex-direction:column;gap:6px;margin-bottom:6px}._controlRow_c3i5z_122{display:flex;align-items:flex-end;gap:6px}._refreshBtn_c3i5z_128{background:none;border:1px solid var(--border);color:var(--text-dim);width:22px;height:22px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:color .15s,border-color .15s}._refreshBtn_c3i5z_128:hover{color:var(--text);border-color:var(--text-dim)}._retryBtn_c3i5z_148{background:none;border:1px solid var(--error);color:var(--error);padding:3px 10px;border-radius:6px;cursor:pointer;font-size:11px}._retryBtn_c3i5z_148:hover{background:var(--error-bg)}._timeFilter_c3i5z_162{display:flex;flex-direction:column;gap:6px}._timeFilterHeader_c3i5z_168{display:flex;align-items:center;gap:8px}._timeModeToggle_c3i5z_174{display:flex;gap:0;border:1px solid var(--border);border-radius:6px;overflow:hidden;width:fit-content}._timeModeBtn_c3i5z_183{background:none;border:none;color:var(--text-dim);font-size:10px;font-weight:600;padding:3px 10px;cursor:pointer;transition:color .15s,background .15s}._timeModeBtn_c3i5z_183:hover{color:var(--text)}._timeModeBtnActive_c3i5z_198{background:var(--accent-bg-strong);color:var(--accent-hover)}._dateRange_c3i5z_203{display:flex;align-items:flex-end;gap:6px;flex-wrap:wrap}._dateField_c3i5z_210{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}._dateLabel_c3i5z_218{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim)}._dateInput_c3i5z_226{padding:4px 6px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:11px;font-family:inherit;outline:none;transition:border-color .15s;min-width:0}._dateInput_c3i5z_226:focus{border-color:var(--accent)}._dateInput_c3i5z_226::-webkit-calendar-picker-indicator{filter:invert(.7);cursor:pointer}._cloudwatchNote_c3i5z_248{font-size:11px;color:var(--text-dim);opacity:.75;margin-bottom:4px}._traceList_c3i5z_255{display:flex;flex-direction:column;gap:4px;max-height:240px;overflow-y:auto;flex-shrink:0}._traceRow_c3i5z_264{display:flex;flex-direction:column;gap:3px;width:100%;padding:8px 10px;background:var(--bg);border:1px solid var(--border);border-left:3px solid var(--amber);border-radius:6px;cursor:pointer;text-align:left;transition:border-color .15s,background .15s}._traceRow_c3i5z_264:hover{border-color:var(--text-dim);border-left-color:var(--amber)}._traceRowSelected_c3i5z_284{border-color:var(--accent);border-left-color:var(--accent);background:var(--accent-bg)}._traceMain_c3i5z_290{display:flex;justify-content:space-between;align-items:center}._traceId_c3i5z_296{font-size:12px;font-weight:500;color:var(--text);font-family:monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;-webkit-user-select:text;user-select:text}._spanCount_c3i5z_308{font-size:11px;color:var(--accent-hover);background:var(--accent-bg-medium);padding:1px 6px;border-radius:4px}._traceMeta_c3i5z_316{display:flex;justify-content:space-between;align-items:center}._traceTime_c3i5z_322{font-size:11px;color:var(--text-dim)}._sessionId_c3i5z_327{font-size:10px;color:var(--text-dim);font-family:monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;-webkit-user-select:text;user-select:text}._traceDetail_c3i5z_73{display:flex;flex-direction:column}._detailControls_c3i5z_344{display:flex;align-items:center;gap:6px}._quickFilter_c3i5z_350{padding:2px 6px;background:var(--bg);border:1px solid var(--border);border-radius:4px;color:var(--text);font-size:10px;font-family:inherit;outline:none;transition:border-color .15s}._quickFilter_c3i5z_350:focus{border-color:var(--accent)}._spanList_c3i5z_365{display:flex;flex-direction:column}._tokenPill_c3i5z_370{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;background:var(--green-bg);border:1px solid var(--green-border);border-radius:10px;color:var(--green-text);font-size:10px;font-weight:500;font-family:monospace;white-space:nowrap}._tokenIcon_c3i5z_385{flex-shrink:0;color:var(--green-icon)}._tokenSep_c3i5z_390{color:var(--separator)}._tokenDim_c3i5z_394{color:var(--green-text-dim);font-weight:400}._durationPill_c3i5z_399{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;background:var(--accent-bg);border:1px solid var(--accent-border);border-radius:10px;color:var(--accent-hover);font-size:10px;font-weight:500;font-family:monospace;white-space:nowrap}._spanTimestamp_c3i5z_414{color:var(--text-dim);font-size:10px}._severityBadge_c3i5z_419{font-size:9px;font-weight:600;text-transform:uppercase;padding:1px 5px;border-radius:3px;background:var(--accent-bg-strong);color:var(--accent-hover)}._sevINFO_c3i5z_429{background:var(--info-bg);color:var(--info-text)}._sevWARN_c3i5z_434{background:var(--warning-bg);color:var(--warning-text)}._sevERROR_c3i5z_439{background:var(--error-bg);color:var(--error-text)}._spanScope_c3i5z_444{font-size:10px;color:var(--text-dim);font-style:italic}._spanBody_c3i5z_450{color:var(--text);font-size:12px;line-height:1.4}._rawToggle_c3i5z_456{background:none;border:none;color:var(--text-dim);font-size:10px;cursor:pointer;padding:2px 0;text-align:left;width:fit-content}._rawToggle_c3i5z_456:hover{color:var(--text)}._spanRaw_c3i5z_471{font-family:monospace;font-size:10px;color:var(--text-dim);white-space:pre-wrap;word-break:break-all;max-height:200px;overflow-y:auto;background:var(--raw-bg);padding:6px 8px;border-radius:4px;line-height:1.4;margin:0}._treeNode_c3i5z_486{border-bottom:1px solid var(--border)}._treeNode_c3i5z_486:last-child{border-bottom:none}._treeRow_c3i5z_493{display:flex;align-items:center;gap:6px;padding:6px 8px;font-size:11px;min-height:28px}._treeRowExpandable_c3i5z_502{cursor:pointer}._treeRowExpandable_c3i5z_502:hover{background:var(--hover-bg)}._treeRowSelected_c3i5z_509{background:var(--accent-bg-medium);border-left:2px solid var(--accent)}._treeToggle_c3i5z_514{flex-shrink:0;display:flex;align-items:center;color:var(--text-dim)}._treeName_c3i5z_521{font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}._treeError_c3i5z_530{font-size:9px;font-weight:600;padding:1px 4px;border-radius:3px;background:var(--error-bg);color:var(--error-text);flex-shrink:0}._treeMetrics_c3i5z_540{display:flex;align-items:center;gap:6px;margin-left:auto;flex-shrink:0}._treeChildren_c3i5z_548{position:relative}._treeLogRow_c3i5z_552{display:flex;flex-direction:column;gap:3px;padding:5px 8px;font-size:10px;color:var(--text-dim);border-top:1px solid var(--hover-bg)}._treeLogHeader_c3i5z_562{display:flex;align-items:center;gap:6px}._logPanel_c3i5z_73{display:flex;flex-direction:column;margin-top:0}._body_sadpk_1{display:flex;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}._interactionsList_sadpk_9{width:220px;min-width:180px;border-right:1px solid var(--border);overflow-y:auto;flex-shrink:0}._interactionItem_sadpk_17{display:flex;flex-direction:column;gap:2px;width:100%;padding:8px 10px;background:none;border:none;border-bottom:1px solid var(--border);border-left:3px solid transparent;cursor:pointer;text-align:left;transition:background .15s,border-color .15s;color:var(--text)}._interactionItem_sadpk_17:hover{background:#ffffff08}._interactionItemSelected_sadpk_36{border-left-color:var(--accent);background:#6366f114}._interactionPrompt_sadpk_41{font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._interactionMeta_sadpk_49{display:flex;justify-content:space-between;align-items:center}._interactionTraceId_sadpk_55{font-size:10px;font-family:monospace;color:var(--text-dim)}._interactionTime_sadpk_61{font-size:10px;color:var(--text-dim)}._interactionSpanCount_sadpk_66{font-size:10px;color:var(--accent-hover);background:#6366f11f;padding:0 5px;border-radius:3px}._rightArea_sadpk_75{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}._waterfall_sadpk_84{flex:1;overflow-y:auto;min-height:0}._userPromptRow_sadpk_90{display:flex;align-items:center;gap:8px;padding:6px 10px;font-size:12px;background:#6366f10f;border-bottom:1px solid var(--border);color:var(--text)}._userPromptText_sadpk_101{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}._waterfallRow_sadpk_108{display:flex;align-items:center;gap:6px;padding:4px 10px;font-size:11px;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.03);transition:background .1s}._waterfallRow_sadpk_108:hover{background:#ffffff0a}._waterfallRowSelected_sadpk_122{background:#6366f11a;border-left:2px solid var(--accent);padding-left:8px}._spanIcon_sadpk_128{flex-shrink:0;width:16px;text-align:center;font-size:12px}._spanLabel_sadpk_135{flex-shrink:0;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text);font-size:11px}._barContainer_sadpk_145{flex:1;height:16px;position:relative;min-width:60px}._bar_sadpk_145{position:absolute;top:2px;height:12px;border-radius:2px;min-width:2px}._barInvocation_sadpk_160{background:#6366f180}._barAgent_sadpk_164{background:#22c55e80}._barLlm_sadpk_168{background:#a855f780}._barTool_sadpk_172{background:#f59e0b80}._barOther_sadpk_176{background:#6b728066}._duration_sadpk_180{flex-shrink:0;font-size:10px;color:var(--text-dim);min-width:50px;text-align:right;font-family:monospace}._detailPane_sadpk_190{border-top:1px solid var(--border);max-height:50%;overflow-y:auto;flex-shrink:0}._detailHeader_sadpk_197{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface);z-index:1}._iconBtn_sadpk_209{background:none;border:none;color:var(--text-dim);cursor:pointer;padding:2px;display:flex;align-items:center;border-radius:3px}._iconBtn_sadpk_209:hover{color:var(--text);background:#ffffff0d}._tabBar_sadpk_224{display:flex;gap:0}._tab_sadpk_224{background:none;border:none;color:var(--text-dim);font-size:11px;font-weight:500;padding:4px 12px;cursor:pointer;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}._tab_sadpk_224:hover{color:var(--text)}._tabActive_sadpk_244{color:var(--accent-hover);border-bottom-color:var(--accent)}._detailBody_sadpk_249{padding:8px 10px;font-size:11px}._attrTable_sadpk_254{width:100%;border-collapse:collapse}._attrTable_sadpk_254 td{padding:3px 6px;vertical-align:top;border-bottom:1px solid rgba(255,255,255,.03)}._attrKey_sadpk_265{color:var(--text-dim);font-weight:500;white-space:nowrap;width:1%;padding-right:12px}._attrValue_sadpk_273{color:var(--text);word-break:break-word;font-family:monospace;font-size:10px}._emptyState_sadpk_280{padding:20px;text-align:center;color:var(--text-dim);font-size:12px}._error_1vxci_1{padding:8px 12px;color:var(--error);font-size:12px}._toolListItems_1vxci_7{display:flex;flex-direction:column;gap:2px;padding:8px 12px}._toolItem_1vxci_14{display:flex;align-items:center;gap:12px;padding:6px 8px;background:none;border:1px solid transparent;border-radius:6px;color:var(--text);font-size:13px;font-family:inherit;cursor:pointer;text-align:left;transition:background .1s,border-color .1s}._toolItem_1vxci_14:hover{background:var(--bg)}._toolItemSelected_1vxci_34{background:var(--bg);border-color:var(--accent)}._toolName_1vxci_39{font-weight:500;font-family:SF Mono,Fira Code,Cascadia Code,monospace;flex-shrink:0}._toolDesc_1vxci_45{color:var(--text-dim);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._toolForm_1vxci_53{padding:12px 12px 16px;border-top:1px solid var(--border)}._toolFormHeader_1vxci_58{font-size:13px;font-weight:600;font-family:SF Mono,Fira Code,Cascadia Code,monospace;color:var(--text);margin-bottom:2px}._toolFormDesc_1vxci_66,._noParams_1vxci_72{font-size:12px;color:var(--text-dim);margin-bottom:12px}._field_1vxci_78{margin-bottom:10px}._fieldLabel_1vxci_82{display:flex;align-items:baseline;gap:6px;font-size:12px;font-weight:500;color:var(--text);margin-bottom:4px}._fieldType_1vxci_92{font-size:11px;color:var(--text-dim);font-weight:400}._fieldInput_1vxci_98{width:100%;padding:6px 10px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:13px;font-family:inherit;outline:none;transition:border-color .15s}._fieldInput_1vxci_98:focus{border-color:var(--accent)}._fieldTextarea_1vxci_115{resize:vertical;min-height:60px;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:12px}._fieldHint_1vxci_122{font-size:11px;color:var(--text-dim);margin-top:2px}._callBtn_1vxci_128{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;background:var(--accent);color:#fff;border:none;border-radius:6px;font-size:13px;font-family:inherit;cursor:pointer;transition:background .15s;margin-top:4px}._callBtn_1vxci_128:hover:not(:disabled){background:var(--accent-hover)}._callBtn_1vxci_128:disabled{opacity:.5;cursor:not-allowed}._spinning_1vxci_153{animation:_spin_1vxci_153 1s linear infinite}@keyframes _spin_1vxci_153{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--bg: #0f1117;--surface: #1a1d27;--border: #2a2e3a;--text: #b4b4bc;--text-dim: #71717a;--accent: #6366f1;--accent-hover: #818cf8;--user-bg: #1e293b;--error: #ef4444;--warning: #e0a84e;--green: #22c55e;--green-text: #6ee7b7;--green-text-dim: rgba(110, 231, 183, .6);--green-bg: rgba(16, 185, 129, .08);--green-border: rgba(16, 185, 129, .2);--green-icon: #34d399;--accent-bg: rgba(99, 102, 241, .08);--accent-bg-medium: rgba(99, 102, 241, .12);--accent-bg-strong: rgba(99, 102, 241, .15);--accent-border: rgba(99, 102, 241, .2);--accent-border-strong: rgba(99, 102, 241, .4);--separator: rgba(255, 255, 255, .2);--error-text: #f87171;--error-bg: rgba(239, 68, 68, .15);--warning-text: #facc15;--warning-bg: rgba(234, 179, 8, .15);--info-text: #4ade80;--info-bg: rgba(34, 197, 94, .15);--amber: #f59e0b;--hover-bg: rgba(255, 255, 255, .03);--raw-bg: rgba(0, 0, 0, .15);--radius: 12px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}html,body,#root{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}.cmd{font-family:monospace;font-size:12px;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:2px 6px}.appLayout{display:flex;height:100%;overflow:hidden}.app{display:flex;flex-direction:column;flex:1;min-width:0;height:100%}.startError{padding:8px 16px;background:#dc262626;color:#f87171;font-size:.85rem}.warningBanner{padding:8px 16px;background:var(--warning-bg);color:var(--warning-text);font-size:.85rem;display:flex;align-items:flex-start;gap:8px}.warningBannerContent{flex:1}.warningBannerTitle{font-weight:600;margin-bottom:2px}.warningBannerClose{background:none;border:none;color:var(--warning-text);cursor:pointer;padding:2px;opacity:.7;flex-shrink:0}.warningBannerClose:hover{opacity:1}.disconnectedView{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:40px 20px;color:var(--text-dim)}.disconnectedIcon{font-size:36px;margin-bottom:8px}.disconnectedTitle{font-size:18px;font-weight:600;color:var(--text)}.disconnectedText{font-size:13px;margin:4px 0 0}.disconnectedCmd{display:block;font-family:monospace;font-size:13px;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:6px 14px;color:var(--text);-webkit-user-select:all;user-select:all}