neural-loom 0.2.48 → 0.2.49

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 (123) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +4 -0
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/cache/.previewinfo +1 -1
  5. package/.next/cache/.rscinfo +1 -1
  6. package/.next/cache/.tsbuildinfo +1 -1
  7. package/.next/diagnostics/route-bundle-stats.json +1 -1
  8. package/.next/fallback-build-manifest.json +3 -3
  9. package/.next/prerender-manifest.json +3 -3
  10. package/.next/routes-manifest.json +24 -0
  11. package/.next/server/app/_global-error.html +1 -1
  12. package/.next/server/app/_global-error.rsc +1 -1
  13. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  14. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  15. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  16. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  17. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  18. package/.next/server/app/_not-found.html +1 -1
  19. package/.next/server/app/_not-found.rsc +1 -1
  20. package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  21. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  22. package/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  23. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  24. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  25. package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  26. package/.next/server/app/api/context/aider/route.js.nft.json +1 -1
  27. package/.next/server/app/api/context/claude/route.js.nft.json +1 -1
  28. package/.next/server/app/api/context/route.js.nft.json +1 -1
  29. package/.next/server/app/api/context/ssh/route.js.nft.json +1 -1
  30. package/.next/server/app/api/recents/route.js.nft.json +1 -1
  31. package/.next/server/app/api/sessions/inject/route.js.nft.json +1 -1
  32. package/.next/server/app/api/sessions/input/route.js.nft.json +1 -1
  33. package/.next/server/app/api/sessions/launch/route.js.nft.json +1 -1
  34. package/.next/server/app/api/sessions/route.js.nft.json +1 -1
  35. package/.next/server/app/api/sessions/scope/route.js.nft.json +1 -1
  36. package/.next/server/app/api/sessions/start/route.js.nft.json +1 -1
  37. package/.next/server/app/api/sessions/stats/route.js.nft.json +1 -1
  38. package/.next/server/app/api/sessions/stop/route.js.nft.json +1 -1
  39. package/.next/server/app/api/sql/connections/route/app-paths-manifest.json +3 -0
  40. package/.next/server/app/api/sql/connections/route/build-manifest.json +9 -0
  41. package/.next/server/app/api/sql/connections/route/server-reference-manifest.json +4 -0
  42. package/.next/server/app/api/sql/connections/route.js +6 -0
  43. package/.next/server/app/api/sql/connections/route.js.map +5 -0
  44. package/.next/server/app/api/sql/connections/route.js.nft.json +1 -0
  45. package/.next/server/app/api/sql/connections/route_client-reference-manifest.js +3 -0
  46. package/.next/server/app/api/sql/mcp/route/app-paths-manifest.json +3 -0
  47. package/.next/server/app/api/sql/mcp/route/build-manifest.json +9 -0
  48. package/.next/server/app/api/sql/mcp/route/server-reference-manifest.json +4 -0
  49. package/.next/server/app/api/sql/mcp/route.js +6 -0
  50. package/.next/server/app/api/sql/mcp/route.js.map +5 -0
  51. package/.next/server/app/api/sql/mcp/route.js.nft.json +1 -0
  52. package/.next/server/app/api/sql/mcp/route_client-reference-manifest.js +3 -0
  53. package/.next/server/app/api/sql/query/route/app-paths-manifest.json +3 -0
  54. package/.next/server/app/api/sql/query/route/build-manifest.json +9 -0
  55. package/.next/server/app/api/sql/query/route/server-reference-manifest.json +4 -0
  56. package/.next/server/app/api/sql/query/route.js +6 -0
  57. package/.next/server/app/api/sql/query/route.js.map +5 -0
  58. package/.next/server/app/api/sql/query/route.js.nft.json +1 -0
  59. package/.next/server/app/api/sql/query/route_client-reference-manifest.js +3 -0
  60. package/.next/server/app/api/sql/schema/route/app-paths-manifest.json +3 -0
  61. package/.next/server/app/api/sql/schema/route/build-manifest.json +9 -0
  62. package/.next/server/app/api/sql/schema/route/server-reference-manifest.json +4 -0
  63. package/.next/server/app/api/sql/schema/route.js +6 -0
  64. package/.next/server/app/api/sql/schema/route.js.map +5 -0
  65. package/.next/server/app/api/sql/schema/route.js.nft.json +1 -0
  66. package/.next/server/app/api/sql/schema/route_client-reference-manifest.js +3 -0
  67. package/.next/server/app/index.html +1 -1
  68. package/.next/server/app/index.rsc +2 -2
  69. package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  70. package/.next/server/app/index.segments/_full.segment.rsc +2 -2
  71. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  72. package/.next/server/app/index.segments/_index.segment.rsc +1 -1
  73. package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  74. package/.next/server/app/page/react-loadable-manifest.json +1 -1
  75. package/.next/server/app/page_client-reference-manifest.js +1 -1
  76. package/.next/server/app-paths-manifest.json +4 -0
  77. package/.next/server/chunks/[root-of-the-server]__0.ptwor._.js +86 -0
  78. package/.next/server/chunks/[root-of-the-server]__0.ptwor._.js.map +1 -0
  79. package/.next/server/chunks/[root-of-the-server]__00l5btc._.js +74 -0
  80. package/.next/server/chunks/[root-of-the-server]__00l5btc._.js.map +1 -0
  81. package/.next/server/chunks/[root-of-the-server]__06men8g._.js +74 -0
  82. package/.next/server/chunks/[root-of-the-server]__06men8g._.js.map +1 -0
  83. package/.next/server/chunks/[root-of-the-server]__0_o7_jj._.js +1 -1
  84. package/.next/server/chunks/[root-of-the-server]__0_o7_jj._.js.map +1 -1
  85. package/.next/server/chunks/[root-of-the-server]__0co.g5k._.js +74 -0
  86. package/.next/server/chunks/[root-of-the-server]__0co.g5k._.js.map +1 -0
  87. package/.next/server/chunks/_next-internal_server_app_api_sql_connections_route_actions_11cib8~.js +3 -0
  88. package/.next/server/chunks/_next-internal_server_app_api_sql_connections_route_actions_11cib8~.js.map +1 -0
  89. package/.next/server/chunks/_next-internal_server_app_api_sql_mcp_route_actions_0wihfps.js +3 -0
  90. package/.next/server/chunks/_next-internal_server_app_api_sql_mcp_route_actions_0wihfps.js.map +1 -0
  91. package/.next/server/chunks/_next-internal_server_app_api_sql_query_route_actions_11x3q3c.js +3 -0
  92. package/.next/server/chunks/_next-internal_server_app_api_sql_query_route_actions_11x3q3c.js.map +1 -0
  93. package/.next/server/chunks/_next-internal_server_app_api_sql_schema_route_actions_015okwb.js +3 -0
  94. package/.next/server/chunks/_next-internal_server_app_api_sql_schema_route_actions_015okwb.js.map +1 -0
  95. package/.next/server/middleware-build-manifest.js +3 -3
  96. package/.next/server/pages/404.html +1 -1
  97. package/.next/server/pages/500.html +1 -1
  98. package/.next/server/server-reference-manifest.js +1 -1
  99. package/.next/server/server-reference-manifest.json +1 -1
  100. package/.next/static/chunks/03f4bqk_d65hs.js +6 -0
  101. package/.next/static/chunks/{15zf~gqr_i8s1.js → 0~6gm~u8rgtpd.js} +1 -1
  102. package/.next/trace +1 -1
  103. package/.next/trace-build +1 -1
  104. package/.next/types/routes.d.ts +5 -1
  105. package/.next/types/validator.ts +36 -0
  106. package/bin/cli.js +76 -0
  107. package/package.json +2 -2
  108. package/src/app/api/sql/connections/route.ts +60 -0
  109. package/src/app/api/sql/mcp/route.ts +27 -0
  110. package/src/app/api/sql/query/route.ts +56 -0
  111. package/src/app/api/sql/schema/route.ts +42 -0
  112. package/src/app/components/DbExplorer.tsx +1279 -0
  113. package/src/app/components/IdeLayout.tsx +27 -1
  114. package/src/lib/sql/ConnectionManager.ts +207 -0
  115. package/src/lib/sql/DbAdapter.ts +62 -0
  116. package/src/lib/sql/McpServer.ts +278 -0
  117. package/src/lib/sql/adapters/MysqlAdapter.ts +120 -0
  118. package/src/lib/sql/adapters/PostgresAdapter.ts +139 -0
  119. package/src/lib/sql/adapters/SqliteAdapter.ts +111 -0
  120. package/.next/static/chunks/0bclk7hf35ac4.js +0 -1
  121. /package/.next/static/{V3HKuGO63wx4G9xwdUktP → BoncS4SNz6CDpSdR8oY-K}/_buildManifest.js +0 -0
  122. /package/.next/static/{V3HKuGO63wx4G9xwdUktP → BoncS4SNz6CDpSdR8oY-K}/_clientMiddlewareManifest.js +0 -0
  123. /package/.next/static/{V3HKuGO63wx4G9xwdUktP → BoncS4SNz6CDpSdR8oY-K}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":1,"files":["../../../../../../.ai/neural-loom/aider.json","../../../../../../.ai/neural-loom/ccontext.md","../../../../../../.ai/neural-loom/claude.json","../../../../../../.ai/neural-loom/cprompt.md","../../../../../../.ai/neural-loom/recents.json","../../../../../../.ai/neural-loom/sessions/5c326543-9d40-4d56-b6df-6196d3b223b1.json","../../../../../../.ai/neural-loom/sessions/9fcd4a9e-153e-4f5b-8744-39facde2c213.json","../../../../../../.ai/neural-loom/sessions/a04f9a4e-beed-46c9-80d5-eff86e2e6511.json","../../../../../../AGENTS.md","../../../../../../CLAUDE.md","../../../../../../README.md","../../../../../../bin/cli.js","../../../../../../docs/walkthroughs/aider-launch-panel/aider_wizard_verification.webp","../../../../../../docs/walkthroughs/aider-launch-panel/walkthrough.md","../../../../../../docs/walkthroughs/claude-pty-runner/walkthrough.md","../../../../../../docs/walkthroughs/multi-session-and-split/walkthrough.md","../../../../../../docs/walkthroughs/platform-compatibility/walkthrough.md","../../../../../../docs/walkthroughs/session-persistence-and-layout/layout_verified.png","../../../../../../docs/walkthroughs/session-persistence-and-layout/walkthrough.md","../../../../../../docs/walkthroughs/sql-mcp-explorer/db_explorer_ui_mockup.png","../../../../../../docs/walkthroughs/sql-mcp-explorer/walkthrough.md","../../../../../../docs/walkthroughs/ssh-wizard/dashboard_loaded_1780970747730.png","../../../../../../docs/walkthroughs/ssh-wizard/ssh_test_connection_result_1780970785743.png","../../../../../../docs/walkthroughs/ssh-wizard/ssh_wizard_inputs_filled_1780970773379.png","../../../../../../docs/walkthroughs/ssh-wizard/ssh_wizard_modal_closed_1780970799993.png","../../../../../../docs/walkthroughs/ssh-wizard/ssh_wizard_modal_open_1780970759288.png","../../../../../../docs/walkthroughs/ssh-wizard/ssh_wizard_verification_1780970740396.webp","../../../../../../docs/walkthroughs/ssh-wizard/walkthrough.md","../../../../../../docs/walkthroughs/telemetry-and-commands/walkthrough.md","../../../../../../eslint.config.mjs","../../../../../../neural-loom.code-workspace","../../../../../../next.config.ts","../../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../../node_modules/@swc/helpers/package.json","../../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../../node_modules/next/dist/client/lib/console.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/next-server/app-route-turbo.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../../node_modules/next/dist/server/node-environment.js","../../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../../node_modules/next/dist/server/require-hook.js","../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../node_modules/next/package.json","../../../../../../node_modules/react/cjs/react.development.js","../../../../../../node_modules/react/cjs/react.production.js","../../../../../../node_modules/react/index.js","../../../../../../node_modules/react/package.json","../../../../../../package-lock.json","../../../../../../package.json","../../../../../../public/file.svg","../../../../../../public/globe.svg","../../../../../../public/logo.png","../../../../../../public/manifest.json","../../../../../../public/next.svg","../../../../../../public/sw.js","../../../../../../public/vercel.svg","../../../../../../public/window.svg","../../../../../../src/app/api/context/aider/route.ts","../../../../../../src/app/api/context/claude/route.ts","../../../../../../src/app/api/context/route.ts","../../../../../../src/app/api/context/ssh/route.ts","../../../../../../src/app/api/files/route.ts","../../../../../../src/app/api/git/route.ts","../../../../../../src/app/api/recents/route.ts","../../../../../../src/app/api/sessions/inject/route.ts","../../../../../../src/app/api/sessions/input/route.ts","../../../../../../src/app/api/sessions/launch/route.ts","../../../../../../src/app/api/sessions/route.ts","../../../../../../src/app/api/sessions/scope/route.ts","../../../../../../src/app/api/sessions/start/route.ts","../../../../../../src/app/api/sessions/stats/route.ts","../../../../../../src/app/api/sessions/stop/route.ts","../../../../../../src/app/api/sql/connections/route.ts","../../../../../../src/app/api/sql/mcp/route.ts","../../../../../../src/app/api/sql/query/route.ts","../../../../../../src/app/api/sql/schema/route.ts","../../../../../../src/app/components/AiderWizard.tsx","../../../../../../src/app/components/ClaudeWizard.tsx","../../../../../../src/app/components/ContextEditor.tsx","../../../../../../src/app/components/DbExplorer.tsx","../../../../../../src/app/components/DirectoryBrowserModal.tsx","../../../../../../src/app/components/IdeLayout.tsx","../../../../../../src/app/components/MarkdownPreview.tsx","../../../../../../src/app/components/SshWizard.tsx","../../../../../../src/app/components/TerminalConsole.tsx","../../../../../../src/app/globals.css","../../../../../../src/app/layout.tsx","../../../../../../src/app/page.module.css","../../../../../../src/app/page.tsx","../../../../../../src/lib/agents/AgentRunner.ts","../../../../../../src/lib/agents/AiderRunner.ts","../../../../../../src/lib/agents/ClaudeRunner.ts","../../../../../../src/lib/agents/ContextManager.ts","../../../../../../src/lib/agents/DockerRunner.ts","../../../../../../src/lib/agents/MockRunner.ts","../../../../../../src/lib/agents/SSHRunner.ts","../../../../../../src/lib/agents/SessionManager.ts","../../../../../../src/lib/agents/SessionPersister.ts","../../../../../../src/lib/agents/ShellRunner.ts","../../../../../../src/lib/agents/WebSocketServer.ts","../../../../../../src/lib/config.ts","../../../../../../src/lib/recents.ts","../../../../../../src/lib/sql/ConnectionManager.ts","../../../../../../src/lib/sql/DbAdapter.ts","../../../../../../src/lib/sql/McpServer.ts","../../../../../../src/lib/sql/adapters/MysqlAdapter.ts","../../../../../../src/lib/sql/adapters/PostgresAdapter.ts","../../../../../../src/lib/sql/adapters/SqliteAdapter.ts","../../../../../../src/lib/workspaceParser.ts","../../../../../../tsconfig.json","../../../../../../tsconfig.tsbuildinfo","../../../../chunks/[root-of-the-server]__06men8g._.js","../../../../chunks/[root-of-the-server]__0i83~95._.js","../../../../chunks/[turbopack]_runtime.js","../../../../chunks/_next-internal_server_app_api_sql_schema_route_actions_015okwb.js","./route_client-reference-manifest.js"]}
@@ -0,0 +1,3 @@
1
+ globalThis.__RSC_MANIFEST = globalThis.__RSC_MANIFEST || {};
2
+ globalThis.__RSC_MANIFEST["/api/sql/schema/route"] = {"moduleLoading":{"prefix":"","crossOrigin":null},"clientModules":{},"ssrModuleMapping":{},"edgeSSRModuleMapping":{},"rscModuleMapping":{},"edgeRscModuleMapping":{},"entryCSSFiles":{},"entryJSFiles":{}};
3
+
@@ -1 +1 @@
1
- <!DOCTYPE html><html lang="en" class="geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/797e433ab948586e-s.p.08e28id.o-okb.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" as="image" href="/logo.png"/><link rel="stylesheet" href="/_next/static/chunks/139c54uo1w7.4.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/0m-_sw1425nkp.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0fpki3y6aj230.js"/><script src="/_next/static/chunks/140ovxvjat1ch.js" async=""></script><script src="/_next/static/chunks/07lhk_q6pmm3r.js" async=""></script><script src="/_next/static/chunks/turbopack-08fpdsd.-ns2y.js" async=""></script><script src="/_next/static/chunks/0dbhjjzl8qfwv.js" async=""></script><script src="/_next/static/chunks/15zf~gqr_i8s1.js" async=""></script><meta name="next-size-adjust" content=""/><title>NeuralLoom - Unified AI Agent Orchestrator &amp; Context Bridge</title><meta name="description" content="Advanced console dashboard and context staging manager for Claude Code and simulated AI agents."/><link rel="manifest" href="/manifest.json"/><link rel="shortcut icon" href="/logo.png"/><link rel="icon" href="/logo.png"/><link rel="apple-touch-icon" href="/logo.png"/><script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div class="page-module___8aEwW__container "><header class="page-module___8aEwW__header"><div style="display:flex;align-items:center;gap:1.5rem"><img src="/logo.png" alt="NeuralLoom Logo" style="width:160px;height:160px;border-radius:16px;object-fit:contain"/><div class="page-module___8aEwW__logoArea"><h1 class="page-module___8aEwW__title" style="margin:0;line-height:1.1">NeuralLoom</h1><span class="page-module___8aEwW__subtitle">Unified AI Orchestrator &amp; Context Bridge</span></div></div><div class="page-module___8aEwW__statusIndicator"><span class="page-module___8aEwW__pulseDot"></span><span>Orchestrator Online</span></div></header><div class="page-module___8aEwW__dashboardGrid"><main class="page-module___8aEwW__mainPanel"><section><h2 class="page-module___8aEwW__sectionTitle">Active AI Agents</h2><div class="card" style="padding:3rem 1.5rem;text-align:center"><p style="color:var(--muted);margin-bottom:1.5rem">No active agent sessions in this workspace. Launch a Claude or Aider agent session to begin.</p><div style="display:flex;gap:1rem;justify-content:center;flex-wrap:wrap"><button class="page-module___8aEwW__quickLaunchBtn" style="background:linear-gradient(135deg, hsl(262, 83%, 60%) 0%, hsl(195, 100%, 45%) 100%);border:none;max-width:200px">Launch Claude PTY</button><button class="page-module___8aEwW__quickLaunchBtn" style="background:linear-gradient(135deg, hsl(210, 80%, 45%) 0%, hsl(262, 80%, 55%) 100%);border:none;max-width:200px">Launch Aider PTY</button></div><div style="margin-top:1.5rem;font-size:0.75rem;color:var(--muted)">Want to verify layout features first?<!-- --> <span style="color:var(--primary);cursor:pointer;text-decoration:underline">Start simulated sandbox session</span></div></div></section><section><h2 class="page-module___8aEwW__sectionTitle">Workspace Shell Terminal</h2><div class="card" style="display:flex;flex-direction:column;border:1px solid var(--border);padding:0"><div class="page-module___8aEwW__agentHeader" style="justify-content:space-between;background:rgba(255, 255, 255, 0.02)"><span style="font-weight:600;display:flex;align-items:center;gap:0.5rem;font-size:0.85rem">💻 Local Workspace Shell (CWD: <!-- -->root<!-- -->)</span><span style="font-size:0.7rem;color:var(--muted)">Pre-configured environment</span></div><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><div style="height:400px;display:flex;align-items:center;justify-content:center;background-color:#05070a;color:var(--muted);border:1px solid var(--border);border-bottom-left-radius:12px;border-bottom-right-radius:12px"><span>Initializing terminal emulator...</span></div><!--/$--></div></section><section style="margin-top:2rem"><h2 class="page-module___8aEwW__sectionTitle">Shared Context Hub &amp; Slash Commands</h2><div class="page-module___8aEwW__contextList"><div class="page-module___8aEwW__contextItem card"><div class="page-module___8aEwW__contextMeta"><span class="page-module___8aEwW__contextTitle">Staged Context &amp; System Rules (/ccc)</span><span class="page-module___8aEwW__contextDetails">Compiles AGENTS.md guidelines and project files folder hierarchy map.</span></div><button disabled="" style="padding:0.4rem 0.8rem;border-radius:6px;border:1px solid var(--primary);background-color:transparent;color:var(--primary);font-size:0.75rem;font-weight:600;opacity:0.5;cursor:not-allowed">🚀 Mount Context (/ccc)</button></div><div class="page-module___8aEwW__contextItem card"><div class="page-module___8aEwW__contextMeta"><span class="page-module___8aEwW__contextTitle">Staged Developer Prompt (/ccp)</span><span class="page-module___8aEwW__contextDetails">Executes instructions written in .ai/neural-loom/cprompt.md.</span></div><button disabled="" style="padding:0.4rem 0.8rem;border-radius:6px;border:1px solid var(--success);background-color:transparent;color:var(--success);font-size:0.75rem;font-weight:600;opacity:0.5;cursor:not-allowed">⚡ Trigger Prompt (/ccp)</button></div></div><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><div style="height:280px;display:flex;align-items:center;justify-content:center;background-color:var(--card);border:1px solid var(--border);border-radius:12px;margin-top:1.5rem"><span style="color:var(--muted)">Initializing prompt editor...</span></div><!--/$--></section></main><aside class="page-module___8aEwW__sidePanel"><section><h2 class="page-module___8aEwW__sectionTitle">Execution Environments</h2><div class="page-module___8aEwW__envGrid"><div class="page-module___8aEwW__envRow"><span class="page-module___8aEwW__envName">💻 Local host OS</span><span class="page-module___8aEwW__envStatus" style="color:var(--success)">Active</span></div><div class="page-module___8aEwW__envRow" style="opacity:0.6"><span class="page-module___8aEwW__envName">🐳 Docker Sandbox</span><span class="page-module___8aEwW__envStatus" style="color:var(--muted)">Not Mounted</span></div><div class="page-module___8aEwW__envRow" style="opacity:0.6"><span class="page-module___8aEwW__envName">🌐 Remote VM (SSH)</span><span class="page-module___8aEwW__envStatus" style="color:var(--muted)">Disconnected</span></div></div></section><section style="display:flex;flex-direction:column;gap:0.75rem"><button class="page-module___8aEwW__quickLaunchBtn" style="background:linear-gradient(135deg, hsl(262, 83%, 60%) 0%, hsl(195, 100%, 45%) 100%);border:none"><span>🤖</span><span>Launch Claude PTY</span></button><button class="page-module___8aEwW__quickLaunchBtn" style="background:linear-gradient(135deg, hsl(170, 72%, 40%) 0%, hsl(195, 100%, 40%) 100%);border:none"><span>🐳</span><span>Launch Docker PTY</span></button><button class="page-module___8aEwW__quickLaunchBtn" style="background:linear-gradient(135deg, hsl(38, 92%, 50%) 0%, hsl(0, 84%, 60%) 100%);border:none"><span>🌐</span><span>Launch SSH PTY</span></button><button class="page-module___8aEwW__quickLaunchBtn" style="background:linear-gradient(135deg, hsl(210, 80%, 45%) 0%, hsl(262, 80%, 55%) 100%);border:none"><span>🐍</span><span>Launch Aider PTY</span></button><button class="page-module___8aEwW__quickLaunchBtn" style="background:linear-gradient(135deg, hsl(195, 100%, 40%) 0%, hsl(262, 80%, 55%) 100%);border:none"><span>🐳</span><span>Launch Aider Docker</span></button></section><section class="card" style="padding:1.5rem;display:flex;flex-direction:column;gap:0.75rem"><h3 style="font-size:1rem;font-weight:700">Quick Actions</h3><ul style="list-style:none;font-size:0.875rem;display:flex;flex-direction:column;gap:0.5rem;color:var(--muted)"><li style="display:flex;justify-content:space-between"><span>Configure global API Keys</span><span style="color:var(--primary);cursor:pointer">→</span></li><li style="display:flex;justify-content:space-between"><span>Edit rules templates</span><span style="color:var(--primary);cursor:pointer">→</span></li><li style="display:flex;justify-content:space-between"><span>Inspect process locks</span><span style="color:var(--primary);cursor:pointer">→</span></li></ul><div style="margin-top:1.2rem;text-align:center;font-size:0.72rem;color:var(--muted)">Need to troubleshoot?<!-- --> <span style="color:var(--primary);cursor:pointer;text-decoration:underline">Launch simulated playground sandbox</span></div></section></aside></div><footer class="page-module___8aEwW__footer"><span>NeuralLoom v<!-- -->0.2.19<!-- --> — Experimental AI Orchestrator Bridge</span><span>Directory: <!-- -->Loading...</span></footer></div><!--$--><!--/$--><script src="/_next/static/chunks/0fpki3y6aj230.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\"],\"default\"]\n4:I[47257,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\"],\"ClientPageRoot\"]\n5:I[52683,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\",\"/_next/static/chunks/15zf~gqr_i8s1.js\"],\"default\"]\n8:I[97367,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\"],\"OutletBoundary\"]\n9:\"$Sreact.suspense\"\nb:I[97367,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\"],\"ViewportBoundary\"]\nd:I[97367,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\"],\"MetadataBoundary\"]\nf:I[68027,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/139c54uo1w7.4.css\",\"style\"]\n:HL[\"/_next/static/media/797e433ab948586e-s.p.08e28id.o-okb.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/chunks/0m-_sw1425nkp.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/139c54uo1w7.4.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0dbhjjzl8qfwv.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable\",\"children\":[\"$\",\"body\",null,{\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L4\",null,{\"Component\":\"$5\",\"serverProvidedParams\":{\"searchParams\":{},\"params\":{},\"promises\":[\"$@6\",\"$@7\"]}}],[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0m-_sw1425nkp.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/15zf~gqr_i8s1.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L8\",null,{\"children\":[\"$\",\"$9\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@a\"}]}]]}],{},null,false,null]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$Lb\",null,{\"children\":\"$Lc\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Ld\",null,{\"children\":[\"$\",\"$9\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Le\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$f\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/139c54uo1w7.4.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"V3HKuGO63wx4G9xwdUktP\"}\n"])</script><script>self.__next_f.push([1,"6:{}\n7:\"$0:f:0:1:1:children:0:props:children:0:props:serverProvidedParams:params\"\n"])</script><script>self.__next_f.push([1,"c:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"10:I[27201,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\"],\"IconMark\"]\na:null\ne:[[\"$\",\"title\",\"0\",{\"children\":\"NeuralLoom - Unified AI Agent Orchestrator \u0026 Context Bridge\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Advanced console dashboard and context staging manager for Claude Code and simulated AI agents.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"manifest\",\"href\":\"/manifest.json\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"shortcut icon\",\"href\":\"/logo.png\"}],[\"$\",\"link\",\"4\",{\"rel\":\"icon\",\"href\":\"/logo.png\"}],[\"$\",\"link\",\"5\",{\"rel\":\"apple-touch-icon\",\"href\":\"/logo.png\"}],[\"$\",\"$L10\",\"6\",{}]]\n"])</script></body></html>
1
+ <!DOCTYPE html><html lang="en" class="geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/797e433ab948586e-s.p.08e28id.o-okb.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" as="image" href="/logo.png"/><link rel="stylesheet" href="/_next/static/chunks/139c54uo1w7.4.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/0m-_sw1425nkp.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0fpki3y6aj230.js"/><script src="/_next/static/chunks/140ovxvjat1ch.js" async=""></script><script src="/_next/static/chunks/07lhk_q6pmm3r.js" async=""></script><script src="/_next/static/chunks/turbopack-08fpdsd.-ns2y.js" async=""></script><script src="/_next/static/chunks/0dbhjjzl8qfwv.js" async=""></script><script src="/_next/static/chunks/0~6gm~u8rgtpd.js" async=""></script><meta name="next-size-adjust" content=""/><title>NeuralLoom - Unified AI Agent Orchestrator &amp; Context Bridge</title><meta name="description" content="Advanced console dashboard and context staging manager for Claude Code and simulated AI agents."/><link rel="manifest" href="/manifest.json"/><link rel="shortcut icon" href="/logo.png"/><link rel="icon" href="/logo.png"/><link rel="apple-touch-icon" href="/logo.png"/><script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div class="page-module___8aEwW__container "><header class="page-module___8aEwW__header"><div style="display:flex;align-items:center;gap:1.5rem"><img src="/logo.png" alt="NeuralLoom Logo" style="width:160px;height:160px;border-radius:16px;object-fit:contain"/><div class="page-module___8aEwW__logoArea"><h1 class="page-module___8aEwW__title" style="margin:0;line-height:1.1">NeuralLoom</h1><span class="page-module___8aEwW__subtitle">Unified AI Orchestrator &amp; Context Bridge</span></div></div><div class="page-module___8aEwW__statusIndicator"><span class="page-module___8aEwW__pulseDot"></span><span>Orchestrator Online</span></div></header><div class="page-module___8aEwW__dashboardGrid"><main class="page-module___8aEwW__mainPanel"><section><h2 class="page-module___8aEwW__sectionTitle">Active AI Agents</h2><div class="card" style="padding:3rem 1.5rem;text-align:center"><p style="color:var(--muted);margin-bottom:1.5rem">No active agent sessions in this workspace. Launch a Claude or Aider agent session to begin.</p><div style="display:flex;gap:1rem;justify-content:center;flex-wrap:wrap"><button class="page-module___8aEwW__quickLaunchBtn" style="background:linear-gradient(135deg, hsl(262, 83%, 60%) 0%, hsl(195, 100%, 45%) 100%);border:none;max-width:200px">Launch Claude PTY</button><button class="page-module___8aEwW__quickLaunchBtn" style="background:linear-gradient(135deg, hsl(210, 80%, 45%) 0%, hsl(262, 80%, 55%) 100%);border:none;max-width:200px">Launch Aider PTY</button></div><div style="margin-top:1.5rem;font-size:0.75rem;color:var(--muted)">Want to verify layout features first?<!-- --> <span style="color:var(--primary);cursor:pointer;text-decoration:underline">Start simulated sandbox session</span></div></div></section><section><h2 class="page-module___8aEwW__sectionTitle">Workspace Shell Terminal</h2><div class="card" style="display:flex;flex-direction:column;border:1px solid var(--border);padding:0"><div class="page-module___8aEwW__agentHeader" style="justify-content:space-between;background:rgba(255, 255, 255, 0.02)"><span style="font-weight:600;display:flex;align-items:center;gap:0.5rem;font-size:0.85rem">💻 Local Workspace Shell (CWD: <!-- -->root<!-- -->)</span><span style="font-size:0.7rem;color:var(--muted)">Pre-configured environment</span></div><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><div style="height:400px;display:flex;align-items:center;justify-content:center;background-color:#05070a;color:var(--muted);border:1px solid var(--border);border-bottom-left-radius:12px;border-bottom-right-radius:12px"><span>Initializing terminal emulator...</span></div><!--/$--></div></section><section style="margin-top:2rem"><h2 class="page-module___8aEwW__sectionTitle">Shared Context Hub &amp; Slash Commands</h2><div class="page-module___8aEwW__contextList"><div class="page-module___8aEwW__contextItem card"><div class="page-module___8aEwW__contextMeta"><span class="page-module___8aEwW__contextTitle">Staged Context &amp; System Rules (/ccc)</span><span class="page-module___8aEwW__contextDetails">Compiles AGENTS.md guidelines and project files folder hierarchy map.</span></div><button disabled="" style="padding:0.4rem 0.8rem;border-radius:6px;border:1px solid var(--primary);background-color:transparent;color:var(--primary);font-size:0.75rem;font-weight:600;opacity:0.5;cursor:not-allowed">🚀 Mount Context (/ccc)</button></div><div class="page-module___8aEwW__contextItem card"><div class="page-module___8aEwW__contextMeta"><span class="page-module___8aEwW__contextTitle">Staged Developer Prompt (/ccp)</span><span class="page-module___8aEwW__contextDetails">Executes instructions written in .ai/neural-loom/cprompt.md.</span></div><button disabled="" style="padding:0.4rem 0.8rem;border-radius:6px;border:1px solid var(--success);background-color:transparent;color:var(--success);font-size:0.75rem;font-weight:600;opacity:0.5;cursor:not-allowed">⚡ Trigger Prompt (/ccp)</button></div></div><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><div style="height:280px;display:flex;align-items:center;justify-content:center;background-color:var(--card);border:1px solid var(--border);border-radius:12px;margin-top:1.5rem"><span style="color:var(--muted)">Initializing prompt editor...</span></div><!--/$--></section></main><aside class="page-module___8aEwW__sidePanel"><section><h2 class="page-module___8aEwW__sectionTitle">Execution Environments</h2><div class="page-module___8aEwW__envGrid"><div class="page-module___8aEwW__envRow"><span class="page-module___8aEwW__envName">💻 Local host OS</span><span class="page-module___8aEwW__envStatus" style="color:var(--success)">Active</span></div><div class="page-module___8aEwW__envRow" style="opacity:0.6"><span class="page-module___8aEwW__envName">🐳 Docker Sandbox</span><span class="page-module___8aEwW__envStatus" style="color:var(--muted)">Not Mounted</span></div><div class="page-module___8aEwW__envRow" style="opacity:0.6"><span class="page-module___8aEwW__envName">🌐 Remote VM (SSH)</span><span class="page-module___8aEwW__envStatus" style="color:var(--muted)">Disconnected</span></div></div></section><section style="display:flex;flex-direction:column;gap:0.75rem"><button class="page-module___8aEwW__quickLaunchBtn" style="background:linear-gradient(135deg, hsl(262, 83%, 60%) 0%, hsl(195, 100%, 45%) 100%);border:none"><span>🤖</span><span>Launch Claude PTY</span></button><button class="page-module___8aEwW__quickLaunchBtn" style="background:linear-gradient(135deg, hsl(170, 72%, 40%) 0%, hsl(195, 100%, 40%) 100%);border:none"><span>🐳</span><span>Launch Docker PTY</span></button><button class="page-module___8aEwW__quickLaunchBtn" style="background:linear-gradient(135deg, hsl(38, 92%, 50%) 0%, hsl(0, 84%, 60%) 100%);border:none"><span>🌐</span><span>Launch SSH PTY</span></button><button class="page-module___8aEwW__quickLaunchBtn" style="background:linear-gradient(135deg, hsl(210, 80%, 45%) 0%, hsl(262, 80%, 55%) 100%);border:none"><span>🐍</span><span>Launch Aider PTY</span></button><button class="page-module___8aEwW__quickLaunchBtn" style="background:linear-gradient(135deg, hsl(195, 100%, 40%) 0%, hsl(262, 80%, 55%) 100%);border:none"><span>🐳</span><span>Launch Aider Docker</span></button></section><section class="card" style="padding:1.5rem;display:flex;flex-direction:column;gap:0.75rem"><h3 style="font-size:1rem;font-weight:700">Quick Actions</h3><ul style="list-style:none;font-size:0.875rem;display:flex;flex-direction:column;gap:0.5rem;color:var(--muted)"><li style="display:flex;justify-content:space-between"><span>Configure global API Keys</span><span style="color:var(--primary);cursor:pointer">→</span></li><li style="display:flex;justify-content:space-between"><span>Edit rules templates</span><span style="color:var(--primary);cursor:pointer">→</span></li><li style="display:flex;justify-content:space-between"><span>Inspect process locks</span><span style="color:var(--primary);cursor:pointer">→</span></li></ul><div style="margin-top:1.2rem;text-align:center;font-size:0.72rem;color:var(--muted)">Need to troubleshoot?<!-- --> <span style="color:var(--primary);cursor:pointer;text-decoration:underline">Launch simulated playground sandbox</span></div></section></aside></div><footer class="page-module___8aEwW__footer"><span>NeuralLoom v<!-- -->0.2.19<!-- --> — Experimental AI Orchestrator Bridge</span><span>Directory: <!-- -->Loading...</span></footer></div><!--$--><!--/$--><script src="/_next/static/chunks/0fpki3y6aj230.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\"],\"default\"]\n4:I[47257,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\"],\"ClientPageRoot\"]\n5:I[52683,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\",\"/_next/static/chunks/0~6gm~u8rgtpd.js\"],\"default\"]\n8:I[97367,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\"],\"OutletBoundary\"]\n9:\"$Sreact.suspense\"\nb:I[97367,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\"],\"ViewportBoundary\"]\nd:I[97367,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\"],\"MetadataBoundary\"]\nf:I[68027,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/139c54uo1w7.4.css\",\"style\"]\n:HL[\"/_next/static/media/797e433ab948586e-s.p.08e28id.o-okb.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/chunks/0m-_sw1425nkp.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/139c54uo1w7.4.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0dbhjjzl8qfwv.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable\",\"children\":[\"$\",\"body\",null,{\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L4\",null,{\"Component\":\"$5\",\"serverProvidedParams\":{\"searchParams\":{},\"params\":{},\"promises\":[\"$@6\",\"$@7\"]}}],[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0m-_sw1425nkp.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0~6gm~u8rgtpd.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L8\",null,{\"children\":[\"$\",\"$9\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@a\"}]}]]}],{},null,false,null]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$Lb\",null,{\"children\":\"$Lc\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Ld\",null,{\"children\":[\"$\",\"$9\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Le\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$f\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/139c54uo1w7.4.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"BoncS4SNz6CDpSdR8oY-K\"}\n"])</script><script>self.__next_f.push([1,"6:{}\n7:\"$0:f:0:1:1:children:0:props:children:0:props:serverProvidedParams:params\"\n"])</script><script>self.__next_f.push([1,"c:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"10:I[27201,[\"/_next/static/chunks/0dbhjjzl8qfwv.js\"],\"IconMark\"]\na:null\ne:[[\"$\",\"title\",\"0\",{\"children\":\"NeuralLoom - Unified AI Agent Orchestrator \u0026 Context Bridge\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Advanced console dashboard and context staging manager for Claude Code and simulated AI agents.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"manifest\",\"href\":\"/manifest.json\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"shortcut icon\",\"href\":\"/logo.png\"}],[\"$\",\"link\",\"4\",{\"rel\":\"icon\",\"href\":\"/logo.png\"}],[\"$\",\"link\",\"5\",{\"rel\":\"apple-touch-icon\",\"href\":\"/logo.png\"}],[\"$\",\"$L10\",\"6\",{}]]\n"])</script></body></html>
@@ -2,7 +2,7 @@
2
2
  2:I[39756,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"default"]
3
3
  3:I[37457,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"default"]
4
4
  4:I[47257,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"ClientPageRoot"]
5
- 5:I[52683,["/_next/static/chunks/0dbhjjzl8qfwv.js","/_next/static/chunks/15zf~gqr_i8s1.js"],"default"]
5
+ 5:I[52683,["/_next/static/chunks/0dbhjjzl8qfwv.js","/_next/static/chunks/0~6gm~u8rgtpd.js"],"default"]
6
6
  8:I[97367,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"OutletBoundary"]
7
7
  9:"$Sreact.suspense"
8
8
  b:I[97367,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"ViewportBoundary"]
@@ -12,7 +12,7 @@ f:I[68027,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"default",1]
12
12
  :HL["/_next/static/media/797e433ab948586e-s.p.08e28id.o-okb.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
13
13
  :HL["/_next/static/media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
14
14
  :HL["/_next/static/chunks/0m-_sw1425nkp.css","style"]
15
- 0:{"P":null,"c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/139c54uo1w7.4.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/0dbhjjzl8qfwv.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en","className":"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable","children":["$","body",null,{"children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]]}],{"children":[["$","$1","c",{"children":[["$","$L4",null,{"Component":"$5","serverProvidedParams":{"searchParams":{},"params":{},"promises":["$@6","$@7"]}}],[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0m-_sw1425nkp.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/15zf~gqr_i8s1.js","async":true,"nonce":"$undefined"}]],["$","$L8",null,{"children":["$","$9",null,{"name":"Next.MetadataOutlet","children":"$@a"}]}]]}],{},null,false,null]},null,false,null],["$","$1","h",{"children":[null,["$","$Lb",null,{"children":"$Lc"}],["$","div",null,{"hidden":true,"children":["$","$Ld",null,{"children":["$","$9",null,{"name":"Next.Metadata","children":"$Le"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$f",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/139c54uo1w7.4.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"V3HKuGO63wx4G9xwdUktP"}
15
+ 0:{"P":null,"c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/139c54uo1w7.4.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/0dbhjjzl8qfwv.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en","className":"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable","children":["$","body",null,{"children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]]}],{"children":[["$","$1","c",{"children":[["$","$L4",null,{"Component":"$5","serverProvidedParams":{"searchParams":{},"params":{},"promises":["$@6","$@7"]}}],[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0m-_sw1425nkp.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/0~6gm~u8rgtpd.js","async":true,"nonce":"$undefined"}]],["$","$L8",null,{"children":["$","$9",null,{"name":"Next.MetadataOutlet","children":"$@a"}]}]]}],{},null,false,null]},null,false,null],["$","$1","h",{"children":[null,["$","$Lb",null,{"children":"$Lc"}],["$","div",null,{"hidden":true,"children":["$","$Ld",null,{"children":["$","$9",null,{"name":"Next.Metadata","children":"$Le"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$f",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/139c54uo1w7.4.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"BoncS4SNz6CDpSdR8oY-K"}
16
16
  6:{}
17
17
  7:"$0:f:0:1:1:children:0:props:children:0:props:serverProvidedParams:params"
18
18
  c:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
@@ -1,10 +1,10 @@
1
1
  1:"$Sreact.fragment"
2
2
  2:I[47257,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"ClientPageRoot"]
3
- 3:I[52683,["/_next/static/chunks/0dbhjjzl8qfwv.js","/_next/static/chunks/15zf~gqr_i8s1.js"],"default"]
3
+ 3:I[52683,["/_next/static/chunks/0dbhjjzl8qfwv.js","/_next/static/chunks/0~6gm~u8rgtpd.js"],"default"]
4
4
  6:I[97367,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"OutletBoundary"]
5
5
  7:"$Sreact.suspense"
6
6
  :HL["/_next/static/chunks/0m-_sw1425nkp.css","style"]
7
- 0:{"rsc":["$","$1","c",{"children":[["$","$L2",null,{"Component":"$3","serverProvidedParams":{"searchParams":{},"params":{},"promises":["$@4","$@5"]}}],[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0m-_sw1425nkp.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/15zf~gqr_i8s1.js","async":true}]],["$","$L6",null,{"children":["$","$7",null,{"name":"Next.MetadataOutlet","children":"$@8"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"V3HKuGO63wx4G9xwdUktP"}
7
+ 0:{"rsc":["$","$1","c",{"children":[["$","$L2",null,{"Component":"$3","serverProvidedParams":{"searchParams":{},"params":{},"promises":["$@4","$@5"]}}],[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0m-_sw1425nkp.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/0~6gm~u8rgtpd.js","async":true}]],["$","$L6",null,{"children":["$","$7",null,{"name":"Next.MetadataOutlet","children":"$@8"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"BoncS4SNz6CDpSdR8oY-K"}
8
8
  4:{}
9
9
  5:"$0:rsc:props:children:0:props:serverProvidedParams:params"
10
10
  8:null
@@ -2,7 +2,7 @@
2
2
  2:I[39756,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"default"]
3
3
  3:I[37457,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"default"]
4
4
  4:I[47257,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"ClientPageRoot"]
5
- 5:I[52683,["/_next/static/chunks/0dbhjjzl8qfwv.js","/_next/static/chunks/15zf~gqr_i8s1.js"],"default"]
5
+ 5:I[52683,["/_next/static/chunks/0dbhjjzl8qfwv.js","/_next/static/chunks/0~6gm~u8rgtpd.js"],"default"]
6
6
  8:I[97367,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"OutletBoundary"]
7
7
  9:"$Sreact.suspense"
8
8
  b:I[97367,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"ViewportBoundary"]
@@ -12,7 +12,7 @@ f:I[68027,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"default",1]
12
12
  :HL["/_next/static/media/797e433ab948586e-s.p.08e28id.o-okb.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
13
13
  :HL["/_next/static/media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
14
14
  :HL["/_next/static/chunks/0m-_sw1425nkp.css","style"]
15
- 0:{"P":null,"c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/139c54uo1w7.4.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/0dbhjjzl8qfwv.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en","className":"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable","children":["$","body",null,{"children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]]}],{"children":[["$","$1","c",{"children":[["$","$L4",null,{"Component":"$5","serverProvidedParams":{"searchParams":{},"params":{},"promises":["$@6","$@7"]}}],[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0m-_sw1425nkp.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/15zf~gqr_i8s1.js","async":true,"nonce":"$undefined"}]],["$","$L8",null,{"children":["$","$9",null,{"name":"Next.MetadataOutlet","children":"$@a"}]}]]}],{},null,false,null]},null,false,null],["$","$1","h",{"children":[null,["$","$Lb",null,{"children":"$Lc"}],["$","div",null,{"hidden":true,"children":["$","$Ld",null,{"children":["$","$9",null,{"name":"Next.Metadata","children":"$Le"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$f",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/139c54uo1w7.4.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"V3HKuGO63wx4G9xwdUktP"}
15
+ 0:{"P":null,"c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/139c54uo1w7.4.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/0dbhjjzl8qfwv.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en","className":"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable","children":["$","body",null,{"children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]]}],{"children":[["$","$1","c",{"children":[["$","$L4",null,{"Component":"$5","serverProvidedParams":{"searchParams":{},"params":{},"promises":["$@6","$@7"]}}],[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0m-_sw1425nkp.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/0~6gm~u8rgtpd.js","async":true,"nonce":"$undefined"}]],["$","$L8",null,{"children":["$","$9",null,{"name":"Next.MetadataOutlet","children":"$@a"}]}]]}],{},null,false,null]},null,false,null],["$","$1","h",{"children":[null,["$","$Lb",null,{"children":"$Lc"}],["$","div",null,{"hidden":true,"children":["$","$Ld",null,{"children":["$","$9",null,{"name":"Next.Metadata","children":"$Le"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$f",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/139c54uo1w7.4.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"BoncS4SNz6CDpSdR8oY-K"}
16
16
  6:{}
17
17
  7:"$0:f:0:1:1:children:0:props:children:0:props:serverProvidedParams:params"
18
18
  c:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
@@ -3,4 +3,4 @@
3
3
  3:I[97367,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"MetadataBoundary"]
4
4
  4:"$Sreact.suspense"
5
5
  5:I[27201,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"IconMark"]
6
- 0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"NeuralLoom - Unified AI Agent Orchestrator & Context Bridge"}],["$","meta","1",{"name":"description","content":"Advanced console dashboard and context staging manager for Claude Code and simulated AI agents."}],["$","link","2",{"rel":"manifest","href":"/manifest.json"}],["$","link","3",{"rel":"shortcut icon","href":"/logo.png"}],["$","link","4",{"rel":"icon","href":"/logo.png"}],["$","link","5",{"rel":"apple-touch-icon","href":"/logo.png"}],["$","$L5","6",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"V3HKuGO63wx4G9xwdUktP"}
6
+ 0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"NeuralLoom - Unified AI Agent Orchestrator & Context Bridge"}],["$","meta","1",{"name":"description","content":"Advanced console dashboard and context staging manager for Claude Code and simulated AI agents."}],["$","link","2",{"rel":"manifest","href":"/manifest.json"}],["$","link","3",{"rel":"shortcut icon","href":"/logo.png"}],["$","link","4",{"rel":"icon","href":"/logo.png"}],["$","link","5",{"rel":"apple-touch-icon","href":"/logo.png"}],["$","$L5","6",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"BoncS4SNz6CDpSdR8oY-K"}
@@ -2,4 +2,4 @@
2
2
  2:I[39756,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"default"]
3
3
  3:I[37457,["/_next/static/chunks/0dbhjjzl8qfwv.js"],"default"]
4
4
  :HL["/_next/static/chunks/139c54uo1w7.4.css","style"]
5
- 0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/139c54uo1w7.4.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/0dbhjjzl8qfwv.js","async":true}]],["$","html",null,{"lang":"en","className":"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable","children":["$","body",null,{"children":["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"V3HKuGO63wx4G9xwdUktP"}
5
+ 0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/139c54uo1w7.4.css","precedence":"next"}],["$","script","script-0",{"src":"/_next/static/chunks/0dbhjjzl8qfwv.js","async":true}]],["$","html",null,{"lang":"en","className":"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable","children":["$","body",null,{"children":["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"BoncS4SNz6CDpSdR8oY-K"}
@@ -2,4 +2,4 @@
2
2
  :HL["/_next/static/media/797e433ab948586e-s.p.08e28id.o-okb.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
3
3
  :HL["/_next/static/media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
4
4
  :HL["/_next/static/chunks/0m-_sw1425nkp.css","style"]
5
- 0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}},"staleTime":300,"buildId":"V3HKuGO63wx4G9xwdUktP"}
5
+ 0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}},"staleTime":300,"buildId":"BoncS4SNz6CDpSdR8oY-K"}
@@ -36,7 +36,7 @@
36
36
  "files": [
37
37
  "static/chunks/0eidfx-s54367.js",
38
38
  "static/chunks/070hz362~_h8n.js",
39
- "static/chunks/0bclk7hf35ac4.js",
39
+ "static/chunks/03f4bqk_d65hs.js",
40
40
  "static/chunks/0ga14ztvrhau2.css"
41
41
  ]
42
42
  }
@@ -1,3 +1,3 @@
1
1
  globalThis.__RSC_MANIFEST = globalThis.__RSC_MANIFEST || {};
2
- globalThis.__RSC_MANIFEST["/page"] = {"moduleLoading":{"prefix":"","crossOrigin":null},"clientModules":{"[project]/node_modules/next/dist/esm/client/components/layout-router.js <module evaluation>":{"id":39756,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/layout-router.js":{"id":39756,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js <module evaluation>":{"id":37457,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":37457,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js <module evaluation>":{"id":47257,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js":{"id":47257,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js <module evaluation>":{"id":92825,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js":{"id":92825,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js <module evaluation>":{"id":68017,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":68017,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js <module evaluation>":{"id":97367,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":97367,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js <module evaluation>":{"id":27201,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":27201,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/client/components/builtin/global-error.js <module evaluation>":{"id":68027,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/client/components/builtin/global-error.js":{"id":68027,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/src/app/page.tsx <module evaluation>":{"id":52683,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js","/_next/static/chunks/15zf~gqr_i8s1.js"],"async":false},"[project]/src/app/page.tsx":{"id":52683,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js","/_next/static/chunks/15zf~gqr_i8s1.js"],"async":false}},"ssrModuleMapping":{"39756":{"*":{"id":2420,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js"],"async":false}},"37457":{"*":{"id":24017,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js"],"async":false}},"47257":{"*":{"id":77682,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js"],"async":false}},"92825":{"*":{"id":97296,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js"],"async":false}},"68017":{"*":{"id":61660,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js"],"async":false}},"97367":{"*":{"id":90574,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js"],"async":false}},"27201":{"*":{"id":60704,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js"],"async":false}},"68027":{"*":{"id":40622,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js","server/chunks/ssr/node_modules_09w7yel._.js"],"async":false}},"52683":{"*":{"id":40777,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js","server/chunks/ssr/node_modules_@swc_helpers_cjs__interop_require_default_cjs_11~q6fv._.js","server/chunks/ssr/_0t7oqy6._.js"],"async":false}}},"edgeSSRModuleMapping":{},"rscModuleMapping":{"39756":{"*":{"id":26768,"name":"*","chunks":[],"async":false}},"37457":{"*":{"id":17910,"name":"*","chunks":[],"async":false}},"47257":{"*":{"id":92977,"name":"*","chunks":[],"async":false}},"92825":{"*":{"id":48552,"name":"*","chunks":[],"async":false}},"68017":{"*":{"id":83919,"name":"*","chunks":[],"async":false}},"97367":{"*":{"id":24150,"name":"*","chunks":[],"async":false}},"27201":{"*":{"id":40771,"name":"*","chunks":[],"async":false}},"68027":{"*":{"id":82509,"name":"*","chunks":[],"async":false}},"52683":{"*":{"id":56983,"name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{},"entryCSSFiles":{"[project]/src/app/layout":[{"path":"static/chunks/139c54uo1w7.4.css","inlined":false}],"[project]/node_modules/next/dist/client/components/builtin/global-error":[{"path":"static/chunks/139c54uo1w7.4.css","inlined":false}],"[project]/src/app/page":[{"path":"static/chunks/139c54uo1w7.4.css","inlined":false},{"path":"static/chunks/0m-_sw1425nkp.css","inlined":false}]},"entryJSFiles":{"[project]/src/app/layout":["static/chunks/0dbhjjzl8qfwv.js"],"[project]/node_modules/next/dist/client/components/builtin/global-error":["static/chunks/0dbhjjzl8qfwv.js"],"[project]/src/app/page":["static/chunks/0dbhjjzl8qfwv.js","static/chunks/15zf~gqr_i8s1.js"]}};
2
+ globalThis.__RSC_MANIFEST["/page"] = {"moduleLoading":{"prefix":"","crossOrigin":null},"clientModules":{"[project]/node_modules/next/dist/esm/client/components/layout-router.js <module evaluation>":{"id":39756,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/layout-router.js":{"id":39756,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js <module evaluation>":{"id":37457,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":37457,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js <module evaluation>":{"id":47257,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js":{"id":47257,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js <module evaluation>":{"id":92825,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js":{"id":92825,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js <module evaluation>":{"id":68017,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":68017,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js <module evaluation>":{"id":97367,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":97367,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js <module evaluation>":{"id":27201,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":27201,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/client/components/builtin/global-error.js <module evaluation>":{"id":68027,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/node_modules/next/dist/client/components/builtin/global-error.js":{"id":68027,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js"],"async":false},"[project]/src/app/page.tsx <module evaluation>":{"id":52683,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js","/_next/static/chunks/0~6gm~u8rgtpd.js"],"async":false},"[project]/src/app/page.tsx":{"id":52683,"name":"*","chunks":["/_next/static/chunks/0dbhjjzl8qfwv.js","/_next/static/chunks/0~6gm~u8rgtpd.js"],"async":false}},"ssrModuleMapping":{"39756":{"*":{"id":2420,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js"],"async":false}},"37457":{"*":{"id":24017,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js"],"async":false}},"47257":{"*":{"id":77682,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js"],"async":false}},"92825":{"*":{"id":97296,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js"],"async":false}},"68017":{"*":{"id":61660,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js"],"async":false}},"97367":{"*":{"id":90574,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js"],"async":false}},"27201":{"*":{"id":60704,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js"],"async":false}},"68027":{"*":{"id":40622,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js","server/chunks/ssr/node_modules_09w7yel._.js"],"async":false}},"52683":{"*":{"id":40777,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0uk0awy._.js","server/chunks/ssr/node_modules_next_dist_0qoh8ry._.js","server/chunks/ssr/node_modules_@swc_helpers_cjs__interop_require_default_cjs_11~q6fv._.js","server/chunks/ssr/_0t7oqy6._.js"],"async":false}}},"edgeSSRModuleMapping":{},"rscModuleMapping":{"39756":{"*":{"id":26768,"name":"*","chunks":[],"async":false}},"37457":{"*":{"id":17910,"name":"*","chunks":[],"async":false}},"47257":{"*":{"id":92977,"name":"*","chunks":[],"async":false}},"92825":{"*":{"id":48552,"name":"*","chunks":[],"async":false}},"68017":{"*":{"id":83919,"name":"*","chunks":[],"async":false}},"97367":{"*":{"id":24150,"name":"*","chunks":[],"async":false}},"27201":{"*":{"id":40771,"name":"*","chunks":[],"async":false}},"68027":{"*":{"id":82509,"name":"*","chunks":[],"async":false}},"52683":{"*":{"id":56983,"name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{},"entryCSSFiles":{"[project]/src/app/layout":[{"path":"static/chunks/139c54uo1w7.4.css","inlined":false}],"[project]/node_modules/next/dist/client/components/builtin/global-error":[{"path":"static/chunks/139c54uo1w7.4.css","inlined":false}],"[project]/src/app/page":[{"path":"static/chunks/139c54uo1w7.4.css","inlined":false},{"path":"static/chunks/0m-_sw1425nkp.css","inlined":false}]},"entryJSFiles":{"[project]/src/app/layout":["static/chunks/0dbhjjzl8qfwv.js"],"[project]/node_modules/next/dist/client/components/builtin/global-error":["static/chunks/0dbhjjzl8qfwv.js"],"[project]/src/app/page":["static/chunks/0dbhjjzl8qfwv.js","static/chunks/0~6gm~u8rgtpd.js"]}};
3
3
 
@@ -16,5 +16,9 @@
16
16
  "/api/sessions/start/route": "app/api/sessions/start/route.js",
17
17
  "/api/sessions/stats/route": "app/api/sessions/stats/route.js",
18
18
  "/api/sessions/stop/route": "app/api/sessions/stop/route.js",
19
+ "/api/sql/connections/route": "app/api/sql/connections/route.js",
20
+ "/api/sql/mcp/route": "app/api/sql/mcp/route.js",
21
+ "/api/sql/query/route": "app/api/sql/query/route.js",
22
+ "/api/sql/schema/route": "app/api/sql/schema/route.js",
19
23
  "/page": "app/page.js"
20
24
  }
@@ -0,0 +1,86 @@
1
+ module.exports=[93695,(e,t,a)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},18622,(e,t,a)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,a)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,a)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,a)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},70406,(e,t,a)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},14747,(e,t,a)=>{t.exports=e.x("path",()=>require("path"))},46786,(e,t,a)=>{t.exports=e.x("os",()=>require("os"))},98003,e=>{"use strict";var t=e.i(22734),a=e.i(14747),n=e.i(46786);let r=null;function s(e){try{t.default.existsSync(e)||t.default.mkdirSync(e,{recursive:!0});let n=a.default.join(e,".write-test-"+Math.random().toString(36).substring(7));return t.default.writeFileSync(n,"test"),t.default.unlinkSync(n),!0}catch{return!1}}e.s(["getConfigDir",0,function(){if(r)return r;let e=a.default.join(process.env.ORIGINAL_CWD||process.cwd(),".ai","neural-loom");try{t.default.existsSync(e)||t.default.mkdirSync(e,{recursive:!0});let n=a.default.join(e,".write-test-"+Math.random().toString(36).substring(7));return t.default.writeFileSync(n,"test"),t.default.unlinkSync(n),r=e,e}catch(i){console.warn(`[Config] Primary config dir is not writable (${e}). Falling back to home directory.`);let s=a.default.join(n.default.homedir(),".ai","neural-loom");try{return t.default.existsSync(s)||t.default.mkdirSync(s,{recursive:!0}),r=s,s}catch(t){return console.error("[Config] Fallback config dir is also not writable!",t),r=e,e}}},"getDefaultWorkspaceRoot",0,function(){let e,r=process.env.ORIGINAL_CWD||process.cwd();if(s(r)&&!((e=r.toLowerCase().replace(/\\/g,"/")).includes("/program files")||e.includes("/windows/system32")||e.includes("/winnt")||e.startsWith("/usr/")||e.startsWith("/bin/")||e.startsWith("/sbin/")||e.startsWith("/etc/")||e.startsWith("/var/")))return r.replace(/\\/g,"/");let i=n.default.homedir();for(let e of[a.default.join(i,"OneDrive","Projects"),a.default.join(i,"Projects"),a.default.join(i,"source","repos"),a.default.join(i,"Documents"),i])try{if(t.default.existsSync(e)&&s(e))return e.replace(/\\/g,"/")}catch{}return i.replace(/\\/g,"/")},"isDirWritable",0,s])},41230,e=>{"use strict";var t=e.i(22734),a=e.i(14747),n=e.i(98003);class r{config;constructor(e){this.config=e}async getSchemaSummary(){try{let e=await this.listTables(),t=`### Database Schema Summary
2
+
3
+ `;if(0===e.length)return t+"*No tables found in this database.*";for(let a of e){t+=`#### Table: \`${a.name}\` (${a.type})
4
+ `;let e=await this.describeTable(a.name);for(let a of(t+=`| Column | Type | Nullable | Key | References |
5
+ |---|---|---|---|---|
6
+ `,e)){let e=a.isPrimaryKey?"PK":a.isForeignKey?"FK":"",n=a.isForeignKey?`\`${a.referencedTable}.${a.referencedColumn}\``:"";t+=`| \`${a.name}\` | \`${a.type}\` | ${a.nullable?"Yes":"No"} | ${e} | ${n} |
7
+ `}t+=`
8
+ `}return t}catch(e){return`Failed to reflect schema summary: ${e instanceof Error?e.message:String(e)}`}}}class s extends r{db=null;resolvedPath="";constructor(e,t){super(e);const n=e.filepath||"dev.db";if(a.default.isAbsolute(n))this.resolvedPath=n.replace(/\\/g,"/");else{const e=t||process.cwd();this.resolvedPath=a.default.resolve(e,n).replace(/\\/g,"/")}}async connect(){if(this.db)return;let e=a.default.dirname(this.resolvedPath);t.default.existsSync(e)||t.default.mkdirSync(e,{recursive:!0});try{let e;try{e=(()=>{let e=Error("Cannot find module 'better-sqlite3'");throw e.code="MODULE_NOT_FOUND",e})()}catch(e){throw Error("SQLite driver 'better-sqlite3' is not installed. Please run `npm install better-sqlite3` in the neural-loom environment.")}this.db=new e(this.resolvedPath)}catch(e){throw console.error("[SqliteAdapter] Connect failed:",e),e}}async query(e,t=[]){await this.connect();try{if(e.trim().toLowerCase().startsWith("select")||e.trim().toLowerCase().startsWith("pragma")||e.trim().toLowerCase().startsWith("explain")){let a=this.db.prepare(e).all(t),n=a.length>0?Object.keys(a[0]):[];return{rows:a,fields:n}}{let a=this.db.prepare(e).run(t);return{rows:[],affectedRows:a.changes}}}catch(e){throw console.error("[SqliteAdapter] Query execution failed:",e),e}}async listTables(){return(await this.query("SELECT name, type FROM sqlite_master WHERE type IN ('table', 'view') AND name NOT LIKE 'sqlite_%'")).rows.map(e=>({name:e.name,type:"table"===e.type?"table":"view"}))}async describeTable(e){await this.connect();let t=this.db.prepare(`PRAGMA table_info(\`${e}\`)`).all(),a=this.db.prepare(`PRAGMA foreign_key_list(\`${e}\`)`).all();return t.map(e=>{let t=a.find(t=>t.from===e.name);return{name:e.name,type:e.type||"TEXT",nullable:0===e.notnull,defaultValue:e.dflt_value,isPrimaryKey:e.pk>0,isForeignKey:!!t,referencedTable:t?t.table:null,referencedColumn:t?t.to:null}})}async disconnect(){this.db&&(this.db.close(),this.db=null)}}class i extends r{client=null;schema="public";constructor(e){super(e),this.schema=e.schema||"public"}async connect(){if(!this.client)try{let e;try{e=(()=>{let e=Error("Cannot find module 'pg'");throw e.code="MODULE_NOT_FOUND",e})().Client}catch(e){throw Error("PostgreSQL driver 'pg' is not installed. Please run `npm install pg` in the neural-loom environment.")}this.client=new e({host:this.config.host||"localhost",port:this.config.port||5432,database:this.config.database||"postgres",user:this.config.username||"postgres",password:this.config.password||"",ssl:this.config.ssl?this.config.ssl:void 0}),await this.client.connect()}catch(e){throw console.error("[PostgresAdapter] Connect failed:",e),this.client=null,e}}async query(e,t=[]){await this.connect();try{let a=await this.client.query(e,t),n=a.rows||[],r=a.fields?a.fields.map(e=>e.name):[];return{rows:n,fields:r,affectedRows:null!==a.rowCount?a.rowCount:void 0}}catch(e){throw console.error("[PostgresAdapter] Query failed:",e),e}}async listTables(){let e=`
9
+ SELECT table_name as name, table_type as type
10
+ FROM information_schema.tables
11
+ WHERE table_schema = $1 AND table_type IN ('BASE TABLE', 'VIEW')
12
+ ORDER BY table_name
13
+ `;return(await this.query(e,[this.schema])).rows.map(e=>({name:e.name,type:"BASE TABLE"===e.type?"table":"view"}))}async describeTable(e){let t=`
14
+ SELECT
15
+ c.column_name as name,
16
+ c.data_type as type,
17
+ c.is_nullable as nullable,
18
+ c.column_default as default_value,
19
+ (
20
+ SELECT COUNT(*)
21
+ FROM information_schema.table_constraints tc
22
+ JOIN information_schema.key_column_usage kcu
23
+ ON tc.constraint_name = kcu.constraint_name
24
+ AND tc.table_schema = kcu.table_schema
25
+ WHERE tc.constraint_type = 'PRIMARY KEY'
26
+ AND tc.table_name = c.table_name
27
+ AND kcu.column_name = c.column_name
28
+ AND tc.table_schema = c.table_schema
29
+ ) > 0 as is_pk
30
+ FROM information_schema.columns c
31
+ WHERE c.table_schema = $1 AND c.table_name = $2
32
+ ORDER BY c.ordinal_position
33
+ `,a=`
34
+ SELECT
35
+ kcu.column_name AS local_column,
36
+ ccu.table_name AS foreign_table,
37
+ ccu.column_name AS foreign_column
38
+ FROM information_schema.table_constraints AS tc
39
+ JOIN information_schema.key_column_usage AS kcu
40
+ ON tc.constraint_name = kcu.constraint_name
41
+ AND tc.table_schema = kcu.table_schema
42
+ JOIN information_schema.constraint_column_usage AS ccu
43
+ ON ccu.constraint_name = tc.constraint_name
44
+ AND ccu.table_schema = tc.table_schema
45
+ WHERE tc.constraint_type = 'FOREIGN KEY'
46
+ AND tc.table_schema = $1
47
+ AND tc.table_name = $2
48
+ `,n=await this.query(t,[this.schema,e]),r=await this.query(a,[this.schema,e]);return n.rows.map(e=>{let t=r.rows.find(t=>t.local_column===e.name);return{name:e.name,type:e.type,nullable:"YES"===e.nullable,defaultValue:e.default_value,isPrimaryKey:e.is_pk,isForeignKey:!!t,referencedTable:t?t.foreign_table:null,referencedColumn:t?t.foreign_column:null}})}async disconnect(){this.client&&(await this.client.end(),this.client=null)}}class o extends r{connection=null;dbName="";constructor(e){super(e),this.dbName=e.database||""}async connect(){if(!this.connection)try{let e;try{e=(()=>{let e=Error("Cannot find module 'mysql2/promise'");throw e.code="MODULE_NOT_FOUND",e})()}catch(e){throw Error("MySQL driver 'mysql2' is not installed. Please run `npm install mysql2` in the neural-loom environment.")}this.connection=await e.createConnection({host:this.config.host||"localhost",port:this.config.port||3306,database:this.dbName,user:this.config.username||"root",password:this.config.password||"",ssl:this.config.ssl?this.config.ssl:void 0})}catch(e){throw console.error("[MysqlAdapter] Connect failed:",e),this.connection=null,e}}async query(e,t=[]){await this.connect();try{let[a,n]=await this.connection.execute(e,t),r=Array.isArray(a);return{rows:r?a:[],fields:n?n.map(e=>e.name):[],affectedRows:r||void 0===a.affectedRows?void 0:a.affectedRows}}catch(e){throw console.error("[MysqlAdapter] Query failed:",e),e}}async listTables(){let e=`
49
+ SELECT table_name as name, table_type as type
50
+ FROM information_schema.tables
51
+ WHERE table_schema = ? AND table_type IN ('BASE TABLE', 'VIEW')
52
+ ORDER BY table_name
53
+ `;return(await this.query(e,[this.dbName])).rows.map(e=>({name:e.name,type:"BASE TABLE"===e.type?"table":"view"}))}async describeTable(e){let t=`
54
+ SELECT
55
+ column_name as name,
56
+ column_type as type,
57
+ is_nullable as nullable,
58
+ column_default as default_value,
59
+ column_key as col_key
60
+ FROM information_schema.columns
61
+ WHERE table_schema = ? AND table_name = ?
62
+ ORDER BY ordinal_position
63
+ `,a=`
64
+ SELECT
65
+ column_name AS local_column,
66
+ referenced_table_name AS foreign_table,
67
+ referenced_column_name AS foreign_column
68
+ FROM information_schema.key_column_usage
69
+ WHERE table_schema = ?
70
+ AND table_name = ?
71
+ AND referenced_table_name IS NOT NULL
72
+ `,n=await this.query(t,[this.dbName,e]),r=await this.query(a,[this.dbName,e]);return n.rows.map(e=>{let t=r.rows.find(t=>t.local_column===e.name);return{name:e.name,type:e.type||"VARCHAR",nullable:"YES"===e.nullable,defaultValue:e.default_value,isPrimaryKey:"PRI"===e.col_key,isForeignKey:!!t,referencedTable:t?t.foreign_table:null,referencedColumn:t?t.foreign_column:null}})}async disconnect(){this.connection&&(await this.connection.end(),this.connection=null)}}class l{static activeInstances=new Map;static getGlobalConfigPath(){return a.default.join((0,n.getConfigDir)(),"global-sql.json")}static getWorkspaceConfigPath(e){return e?a.default.join(e,".ai","neural-loom","sql-config.json"):null}static loadConfig(e){try{if(t.default.existsSync(e)){let a=t.default.readFileSync(e,"utf8");return JSON.parse(a)}}catch(t){console.error(`[ConnectionManager] Failed to load config from ${e}:`,t)}return{connections:{},activeConnection:null}}static saveConfig(e,n){try{let r=a.default.dirname(e);t.default.existsSync(r)||t.default.mkdirSync(r,{recursive:!0}),t.default.writeFileSync(e,JSON.stringify(n,null,2),"utf8")}catch(t){console.error(`[ConnectionManager] Failed to save config to ${e}:`,t)}}static async getProfiles(e){let t=this.loadConfig(this.getGlobalConfigPath()),a=Object.values(t.connections),n=[],r=t.activeConnection,s=!0;if(e){let t=this.getWorkspaceConfigPath(e);if(t){let e=this.loadConfig(t);n=Object.values(e.connections),e.activeConnection&&(r=e.activeConnection,s=!1)}}return{global:a,workspace:n,activeId:r,isActiveGlobal:s}}static async saveProfile(e,t,a){let n=t?this.getGlobalConfigPath():this.getWorkspaceConfigPath(a);if(!n)throw Error("Invalid workspace root path for saving connection profile.");let r=this.loadConfig(n);r.connections[e.id]=e,this.saveConfig(n,r)}static async deleteProfile(e,t,a){let n=t?this.getGlobalConfigPath():this.getWorkspaceConfigPath(a);if(!n)throw Error("Invalid workspace root path for deleting connection profile.");let r=this.loadConfig(n);r.connections[e]&&(delete r.connections[e],r.activeConnection===e&&(r.activeConnection=null),this.saveConfig(n,r));let s=`${t?"global":"ws"}:${e}`,i=this.activeInstances.get(s);i&&(await i.disconnect().catch(console.error),this.activeInstances.delete(s))}static async setActiveProfile(e,t,a){let n=t?this.getGlobalConfigPath():this.getWorkspaceConfigPath(a);if(!n)throw Error("Invalid workspace root path for setting active profile.");let r=this.loadConfig(n);r.activeConnection=e,this.saveConfig(n,r)}static createAdapter(e,t){switch(e.type){case"sqlite":return new s(e,t);case"postgres":return new i(e);case"mysql":return new o(e);default:throw Error(`Unsupported database type: ${e.type}`)}}static async getActiveAdapter(e){let{global:t,workspace:a,activeId:n,isActiveGlobal:r}=await this.getProfiles(e);if(!n)return null;let s=`${r?"global":"ws"}:${n}`,i=this.activeInstances.get(s);if(i){let e=(r?t:a).find(e=>e.id===n);if(e)return{adapter:i,profile:e}}let o=(r?t:a).find(e=>e.id===n);if(!o)return null;let l=this.createAdapter(o,e);return this.activeInstances.set(s,l),{adapter:l,profile:o}}static async closeAll(){for(let[,e]of this.activeInstances.entries())await e.disconnect().catch(console.error);this.activeInstances.clear()}}e.s(["ConnectionManager",0,l],41230)},19668,(e,t,a)=>{t.exports=e.x("readline",()=>require("readline"))},53869,e=>{"use strict";var t=e.i(47909),a=e.i(74017),n=e.i(96250),r=e.i(59756),s=e.i(61916),i=e.i(74677),o=e.i(69741),l=e.i(16795),c=e.i(87718),u=e.i(95169),d=e.i(47587),p=e.i(66012),h=e.i(70101),m=e.i(26937),f=e.i(10372),y=e.i(93695);e.i(52474);var g=e.i(220),b=e.i(89171),w=e.i(19668),v=e.i(41230);class _{workspaceRoot;constructor(e){this.workspaceRoot=e,console.log=(...e)=>{console.error("[LOG]",...e)}}start(){w.default.createInterface({input:process.stdin,output:process.stdout,terminal:!1}).on("line",async e=>{if(e.trim())try{let t=JSON.parse(e);if(t.method){let e=await this.handleMessage(t);e&&process.stdout.write(JSON.stringify(e)+"\n")}}catch(e){this.sendError(null,-32700,"Parse error: "+(e instanceof Error?e.message:String(e)))}}),console.error("[McpServer] SQL Model Context Protocol Server listening on stdio..."),this.workspaceRoot&&console.error(`[McpServer] Workspace Root Context resolved to: ${this.workspaceRoot}`)}async handleMessage(e){let{id:t,method:a,params:n}=e;switch(a){case"initialize":return{jsonrpc:"2.0",id:t,result:{protocolVersion:"2024-11-05",capabilities:{tools:{}},serverInfo:{name:"neural-loom-sql-mcp",version:"1.0.0"}}};case"notifications/initialized":return null;case"tools/list":return{jsonrpc:"2.0",id:t,result:{tools:[{name:"sql_list_connections",description:"Lists all configured global and workspace database connection profiles, and identifies which one is active.",inputSchema:{type:"object",properties:{}}},{name:"sql_list_tables",description:"Lists all tables and views in the currently active database.",inputSchema:{type:"object",properties:{}}},{name:"sql_describe_table",description:"Provides column names, types, primary keys, foreign keys, and nullability information for a specific table.",inputSchema:{type:"object",properties:{table:{type:"string",description:"The name of the table to describe."}},required:["table"]}},{name:"sql_get_schema_summary",description:"Returns a complete Markdown representation of the database schema, detailing all tables, columns, constraints, and relationships.",inputSchema:{type:"object",properties:{}}},{name:"sql_query",description:"Executes a SQL query on the active database connection. Select queries return matching rows; modifying queries return affected row count. If readOnly is set on the connection, modifying statements will fail.",inputSchema:{type:"object",properties:{sql:{type:"string",description:"The SQL statement to execute."}},required:["sql"]}}]}};case"tools/call":return await this.handleToolCall(t,n);default:return{jsonrpc:"2.0",id:t,error:{code:-32601,message:`Method not found: ${a}`}}}}async handleRequest(e){let t=await this.handleMessage(e);t&&process.stdout.write(JSON.stringify(t)+"\n")}async handleToolCall(e,t){let a=t.name,n=t.arguments||{};try{if("sql_list_connections"===a){let t=await v.ConnectionManager.getProfiles(this.workspaceRoot),a=t.isActiveGlobal?t.global.find(e=>e.id===t.activeId):t.workspace.find(e=>e.id===t.activeId),n=`Active Connection Profile: ${a?`${a.name} (${a.type})`:"None"}
73
+
74
+ Global Profiles:
75
+ `+(t.global.length>0?t.global.map(e=>`- [${e.id}] ${e.name} (${e.type}) ${t.activeId===e.id&&t.isActiveGlobal?"(Active)":""}`).join("\n"):"None")+"\n\n"+`Workspace Profiles:
76
+ `+(t.workspace.length>0?t.workspace.map(e=>`- [${e.id}] ${e.name} (${e.type}) ${t.activeId===e.id&&!t.isActiveGlobal?"(Active)":""}`).join("\n"):"None");this.sendToolResult(e,n);return}let t=await v.ConnectionManager.getActiveAdapter(this.workspaceRoot);if(!t)return void this.sendToolResult(e,"Error: No active database connection is selected. Please configure and activate a database connection in the NeuralLoom workspace dashboard UI.",!0);let{adapter:r,profile:s}=t;switch(a){case"sql_list_tables":{let t=await r.listTables(),a=t.length>0?t.map(e=>`- \`${e.name}\` (${e.type})`).join("\n"):"*No tables found in the active database.*";this.sendToolResult(e,`Active Database: ${s.name} (${s.type})
77
+
78
+ ### Tables:
79
+ ${a}`);break}case"sql_describe_table":{let t=n.table;if(!t)return void this.sendToolResult(e,"Error: Missing required argument 'table'.",!0);let a=await r.describeTable(t),i=`### Table Structure: \`${t}\` (Active Connection: ${s.name})
80
+
81
+ `;for(let e of(i+=`| Column | Type | Nullable | Key | References |
82
+ |---|---|---|---|---|
83
+ `,a)){let t=e.isPrimaryKey?"PK":e.isForeignKey?"FK":"",a=e.isForeignKey?`\`${e.referencedTable}.${e.referencedColumn}\``:"";i+=`| \`${e.name}\` | \`${e.type}\` | ${e.nullable?"Yes":"No"} | ${t} | ${a} |
84
+ `}this.sendToolResult(e,i);break}case"sql_get_schema_summary":{let t=await r.getSchemaSummary();this.sendToolResult(e,t);break}case"sql_query":{let t=n.sql;if(!t||!t.trim())return void this.sendToolResult(e,"Error: Missing required argument 'sql'.",!0);let a=t.trim().toLowerCase(),i=a.startsWith("insert")||a.startsWith("update")||a.startsWith("delete")||a.startsWith("drop")||a.startsWith("alter")||a.startsWith("create")||a.startsWith("truncate")||a.startsWith("replace");if(s.readOnly&&i)return void this.sendToolResult(e,"Error: Access Denied. This database connection is configured as Read-Only.",!0);let o=await r.query(t);void 0!==o.affectedRows?this.sendToolResult(e,`Query completed successfully. Affected rows: ${o.affectedRows}`):this.sendToolResult(e,JSON.stringify(o.rows,null,2));break}default:this.sendError(e,-32601,`Tool not implemented: ${a}`)}}catch(t){this.sendToolResult(e,`Exception executing tool: ${t.message||String(t)}`,!0)}}sendResponse(e,t){process.stdout.write(JSON.stringify({jsonrpc:"2.0",id:e,result:t})+"\n")}sendToolResult(e,t,a=!1){process.stdout.write(JSON.stringify({jsonrpc:"2.0",id:e,result:{content:[{type:"text",text:t}],isError:a}})+"\n")}sendError(e,t,a){process.stdout.write(JSON.stringify({jsonrpc:"2.0",id:e,error:{code:t,message:a}})+"\n")}}async function R(e){try{let t=e.headers.get("x-workspace-root")||void 0,a=await e.json(),n=new _(t),r=await n.handleMessage(a);if(null===r)return new Response("",{status:204});return b.NextResponse.json(r)}catch(e){return b.NextResponse.json({jsonrpc:"2.0",id:null,error:{code:-32603,message:"Internal server error: "+(e.message||String(e))}},{status:500})}}e.s(["POST",0,R],37730);var E=e.i(37730);let C=new t.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/sql/mcp/route",pathname:"/api/sql/mcp",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/sql/mcp/route.ts",nextConfigOutput:"",userland:E,...{}}),{workAsyncStorage:S,workUnitAsyncStorage:A,serverHooks:x}=C;async function N(e,t,n){n.requestMeta&&(0,r.setRequestMeta)(e,n.requestMeta),C.isDev&&(0,r.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let b="/api/sql/mcp/route";b=b.replace(/\/index$/,"")||"/";let w=await C.prepare(e,t,{srcPage:b,multiZoneDraftMode:!1});if(!w)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:v,deploymentId:_,params:R,nextConfig:E,parsedUrl:S,isDraftMode:A,prerenderManifest:x,routerServerContext:N,isOnDemandRevalidate:q,revalidateOnlyGenerated:T,resolvedPathname:k,clientReferenceManifest:P,serverActionsManifest:O}=w,$=(0,o.normalizeAppPath)(b),j=!!(x.dynamicRoutes[$]||x.routes[k]),I=async()=>((null==N?void 0:N.render404)?await N.render404(e,t,S,!1):t.end("This page could not be found"),null);if(j&&!A){let e=!!x.routes[k],t=x.dynamicRoutes[$];if(t&&!1===t.fallback&&!e){if(E.adapterPath)return await I();throw new y.NoFallbackError}}let M=null;!j||C.isDev||A||(M="/index"===(M=k)?"/":M);let D=!0===C.isDev||!j,L=j&&!D;O&&P&&(0,i.setManifestsSingleton)({page:b,clientReferenceManifest:P,serverActionsManifest:O});let W=e.method||"GET",F=(0,s.getTracer)(),K=F.getActiveScopeSpan(),H=!!(null==N?void 0:N.isWrappedByNextServer),U=!!(0,r.getRequestMeta)(e,"minimalMode"),B=(0,r.getRequestMeta)(e,"incrementalCache")||await C.getIncrementalCache(e,E,x,U);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let G={params:R,previewProps:x.preview,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:D,incrementalCache:B,cacheLifeProfiles:E.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,n,r)=>C.onRequestError(e,t,n,r,N)},sharedContext:{buildId:v,deploymentId:_}},J=new l.NodeNextRequest(e),Y=new l.NodeNextResponse(t),Q=c.NextRequestAdapter.fromNodeNextRequest(J,(0,c.signalFromNodeResponse)(t));try{let r,i=async e=>C.handle(Q,G).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=F.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=a.get("next.route");if(n){let t=`${W} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),r&&r!==e&&(r.setAttribute("http.route",n),r.updateName(t))}else e.updateName(`${W} ${b}`)}),o=async r=>{var s,o;let l=async({previousCacheEntry:a})=>{try{if(!U&&q&&T&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(r);e.fetchMetrics=G.renderOpts.fetchMetrics;let o=G.renderOpts.pendingWaitUntil;o&&n.waitUntil&&(n.waitUntil(o),o=void 0);let l=G.renderOpts.collectedTags;if(!j)return await (0,p.sendResponse)(J,Y,s,G.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[f.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,n=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:G.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:n}}}}catch(t){throw(null==a?void 0:a.isStale)&&await C.onRequestError(e,t,{routerKind:"App Router",routePath:b,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:q})},!1,N),t}},c=await C.handleResponse({req:e,nextConfig:E,cacheKey:M,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:x,isRoutePPREnabled:!1,isOnDemandRevalidate:q,revalidateOnlyGenerated:T,responseGenerator:l,waitUntil:n.waitUntil,isMinimalMode:U});if(!j)return null;if((null==c||null==(s=c.value)?void 0:s.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(o=c.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});U||t.setHeader("x-nextjs-cache",q?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,h.fromNodeOutgoingHttpHeaders)(c.value.headers);return U&&j||u.delete(f.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,m.getCacheControlHeader)(c.cacheControl)),await (0,p.sendResponse)(J,Y,new Response(c.value.body,{headers:u,status:c.value.status||200})),null};H&&K?await o(K):(r=F.getActiveScopeSpan(),await F.withPropagatedContext(e.headers,()=>F.trace(u.BaseServerSpan.handleRequest,{spanName:`${W} ${b}`,kind:s.SpanKind.SERVER,attributes:{"http.method":W,"http.target":e.url}},o),void 0,!H))}catch(t){if(t instanceof y.NoFallbackError||await C.onRequestError(e,t,{routerKind:"App Router",routePath:$,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:q})},!1,N),j)throw t;return await (0,p.sendResponse)(J,Y,new Response(null,{status:500})),null}}e.s(["handler",0,N,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:S,workUnitAsyncStorage:A})},"routeModule",0,C,"serverHooks",0,x,"workAsyncStorage",0,S,"workUnitAsyncStorage",0,A],53869)}];
85
+
86
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0.ptwor._.js.map