sparkecoder 0.1.36 → 0.1.37

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 (125) hide show
  1. package/dist/agent/index.d.ts +2 -2
  2. package/dist/agent/index.js +4 -4
  3. package/dist/agent/index.js.map +1 -1
  4. package/dist/cli.js +92 -4
  5. package/dist/cli.js.map +1 -1
  6. package/dist/{index-BSbFzE22.d.ts → index-D2eLXP9V.d.ts} +1 -1
  7. package/dist/index.d.ts +3 -3
  8. package/dist/index.js +92 -4
  9. package/dist/index.js.map +1 -1
  10. package/dist/{search-CrICQDSa.d.ts → search-D3Wtf7TJ.d.ts} +1 -1
  11. package/dist/server/index.js +92 -4
  12. package/dist/server/index.js.map +1 -1
  13. package/dist/tools/index.d.ts +2 -2
  14. package/dist/tools/index.js +4 -4
  15. package/dist/tools/index.js.map +1 -1
  16. package/package.json +1 -1
  17. package/web/.next/BUILD_ID +1 -1
  18. package/web/.next/standalone/web/.next/BUILD_ID +1 -1
  19. package/web/.next/standalone/web/.next/build-manifest.json +2 -2
  20. package/web/.next/standalone/web/.next/prerender-manifest.json +3 -3
  21. package/web/.next/standalone/web/.next/server/app/(main)/page_client-reference-manifest.js +1 -1
  22. package/web/.next/standalone/web/.next/server/app/(main)/session/[id]/page.js.nft.json +1 -1
  23. package/web/.next/standalone/web/.next/server/app/(main)/session/[id]/page_client-reference-manifest.js +1 -1
  24. package/web/.next/standalone/web/.next/server/app/_global-error.html +2 -2
  25. package/web/.next/standalone/web/.next/server/app/_global-error.rsc +1 -1
  26. package/web/.next/standalone/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  27. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  28. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  29. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  30. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  31. package/web/.next/standalone/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  32. package/web/.next/standalone/web/.next/server/app/_not-found.html +1 -1
  33. package/web/.next/standalone/web/.next/server/app/_not-found.rsc +2 -2
  34. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  35. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  36. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  37. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  38. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  39. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  40. package/web/.next/standalone/web/.next/server/app/docs/installation/page_client-reference-manifest.js +1 -1
  41. package/web/.next/standalone/web/.next/server/app/docs/installation.html +2 -2
  42. package/web/.next/standalone/web/.next/server/app/docs/installation.rsc +2 -2
  43. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_full.segment.rsc +2 -2
  44. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_head.segment.rsc +1 -1
  45. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_index.segment.rsc +2 -2
  46. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_tree.segment.rsc +2 -2
  47. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation/__PAGE__.segment.rsc +1 -1
  48. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation.segment.rsc +1 -1
  49. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs.segment.rsc +1 -1
  50. package/web/.next/standalone/web/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  51. package/web/.next/standalone/web/.next/server/app/docs/skills/page_client-reference-manifest.js +1 -1
  52. package/web/.next/standalone/web/.next/server/app/docs/skills.html +2 -2
  53. package/web/.next/standalone/web/.next/server/app/docs/skills.rsc +2 -2
  54. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_full.segment.rsc +2 -2
  55. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_head.segment.rsc +1 -1
  56. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_index.segment.rsc +2 -2
  57. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_tree.segment.rsc +2 -2
  58. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills/__PAGE__.segment.rsc +1 -1
  59. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills.segment.rsc +1 -1
  60. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs.segment.rsc +1 -1
  61. package/web/.next/standalone/web/.next/server/app/docs/tools/page_client-reference-manifest.js +1 -1
  62. package/web/.next/standalone/web/.next/server/app/docs/tools.html +2 -2
  63. package/web/.next/standalone/web/.next/server/app/docs/tools.rsc +2 -2
  64. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_full.segment.rsc +2 -2
  65. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_head.segment.rsc +1 -1
  66. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_index.segment.rsc +2 -2
  67. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_tree.segment.rsc +2 -2
  68. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools/__PAGE__.segment.rsc +1 -1
  69. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools.segment.rsc +1 -1
  70. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs.segment.rsc +1 -1
  71. package/web/.next/standalone/web/.next/server/app/docs.html +2 -2
  72. package/web/.next/standalone/web/.next/server/app/docs.rsc +2 -2
  73. package/web/.next/standalone/web/.next/server/app/docs.segments/_full.segment.rsc +2 -2
  74. package/web/.next/standalone/web/.next/server/app/docs.segments/_head.segment.rsc +1 -1
  75. package/web/.next/standalone/web/.next/server/app/docs.segments/_index.segment.rsc +2 -2
  76. package/web/.next/standalone/web/.next/server/app/docs.segments/_tree.segment.rsc +2 -2
  77. package/web/.next/standalone/web/.next/server/app/docs.segments/docs/__PAGE__.segment.rsc +1 -1
  78. package/web/.next/standalone/web/.next/server/app/docs.segments/docs.segment.rsc +1 -1
  79. package/web/.next/standalone/web/.next/server/app/index.html +1 -1
  80. package/web/.next/standalone/web/.next/server/app/index.rsc +4 -4
  81. package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p/__PAGE__.segment.rsc +2 -2
  82. package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p.segment.rsc +2 -2
  83. package/web/.next/standalone/web/.next/server/app/index.segments/_full.segment.rsc +4 -4
  84. package/web/.next/standalone/web/.next/server/app/index.segments/_head.segment.rsc +1 -1
  85. package/web/.next/standalone/web/.next/server/app/index.segments/_index.segment.rsc +2 -2
  86. package/web/.next/standalone/web/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  87. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_184c536d._.js → 2374f_147b1db0._.js} +1 -1
  88. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_be7e7ab5._.js → 2374f_36dd81aa._.js} +1 -1
  89. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_4efa2a34._.js → 2374f_3eca1553._.js} +1 -1
  90. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_d3aec1c3._.js → 2374f_4d1accac._.js} +1 -1
  91. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_ced8bc96._.js → 2374f_4e2c9d06._.js} +2 -2
  92. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_75261269._.js → 2374f_b30bed04._.js} +1 -1
  93. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_84476e55._.js → 2374f_c99180da._.js} +1 -1
  94. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_d7e5f4a0._.js → 2374f_f5998fca._.js} +1 -1
  95. package/web/.next/standalone/web/.next/server/chunks/ssr/[root-of-the-server]__a7aab2da._.js +4 -2
  96. package/web/.next/standalone/web/.next/server/chunks/ssr/web_76ccf09f._.js +1 -1
  97. package/web/.next/standalone/web/.next/server/pages/404.html +1 -1
  98. package/web/.next/standalone/web/.next/server/pages/500.html +2 -2
  99. package/web/.next/standalone/web/.next/server/server-reference-manifest.js +1 -1
  100. package/web/.next/standalone/web/.next/server/server-reference-manifest.json +1 -1
  101. package/web/.next/standalone/web/.next/static/chunks/{6407c045dfc908fe.js → 1e9fdac31c7fd474.js} +3 -3
  102. package/web/.next/standalone/web/.next/static/chunks/{165f43d544d3a988.js → 6b8642759b62770c.js} +6 -4
  103. package/web/.next/standalone/web/.next/static/chunks/f81a19eca278424b.css +1 -0
  104. package/web/.next/{static/chunks/6407c045dfc908fe.js → standalone/web/.next/static/static/chunks/1e9fdac31c7fd474.js} +3 -3
  105. package/web/.next/standalone/web/.next/static/static/chunks/{165f43d544d3a988.js → 6b8642759b62770c.js} +6 -4
  106. package/web/.next/standalone/web/.next/static/static/chunks/f81a19eca278424b.css +1 -0
  107. package/web/.next/standalone/web/src/components/ai-elements/search-tool.tsx +107 -59
  108. package/web/.next/standalone/web/src/components/ai-elements/subagent-modal.tsx +116 -172
  109. package/web/.next/standalone/web/src/components/chat-interface.tsx +68 -3
  110. package/web/.next/standalone/web/src/lib/api.ts +33 -0
  111. package/web/.next/{standalone/web/.next/static/static/chunks/6407c045dfc908fe.js → static/chunks/1e9fdac31c7fd474.js} +3 -3
  112. package/web/.next/static/chunks/{165f43d544d3a988.js → 6b8642759b62770c.js} +6 -4
  113. package/web/.next/static/chunks/f81a19eca278424b.css +1 -0
  114. package/web/.next/standalone/web/.next/static/chunks/971d802e445eb147.css +0 -1
  115. package/web/.next/standalone/web/.next/static/static/chunks/971d802e445eb147.css +0 -1
  116. package/web/.next/static/chunks/971d802e445eb147.css +0 -1
  117. /package/web/.next/standalone/web/.next/static/{IF96MaB6ualjuLVOykhqq → Px4gKJACBDiCG6uNwuICG}/_buildManifest.js +0 -0
  118. /package/web/.next/standalone/web/.next/static/{IF96MaB6ualjuLVOykhqq → Px4gKJACBDiCG6uNwuICG}/_clientMiddlewareManifest.json +0 -0
  119. /package/web/.next/standalone/web/.next/static/{IF96MaB6ualjuLVOykhqq → Px4gKJACBDiCG6uNwuICG}/_ssgManifest.js +0 -0
  120. /package/web/.next/standalone/web/.next/static/static/{IF96MaB6ualjuLVOykhqq → Px4gKJACBDiCG6uNwuICG}/_buildManifest.js +0 -0
  121. /package/web/.next/standalone/web/.next/static/static/{IF96MaB6ualjuLVOykhqq → Px4gKJACBDiCG6uNwuICG}/_clientMiddlewareManifest.json +0 -0
  122. /package/web/.next/standalone/web/.next/static/static/{IF96MaB6ualjuLVOykhqq → Px4gKJACBDiCG6uNwuICG}/_ssgManifest.js +0 -0
  123. /package/web/.next/static/{IF96MaB6ualjuLVOykhqq → Px4gKJACBDiCG6uNwuICG}/_buildManifest.js +0 -0
  124. /package/web/.next/static/{IF96MaB6ualjuLVOykhqq → Px4gKJACBDiCG6uNwuICG}/_clientMiddlewareManifest.json +0 -0
  125. /package/web/.next/static/{IF96MaB6ualjuLVOykhqq → Px4gKJACBDiCG6uNwuICG}/_ssgManifest.js +0 -0
package/dist/cli.js CHANGED
@@ -866,9 +866,9 @@ function resolveModel(modelId) {
866
866
  return gateway(modelId.trim());
867
867
  }
868
868
  var SUBAGENT_MODELS = {
869
- search: "google/gemini-2.0-flash",
870
- analyze: "google/gemini-2.0-flash",
871
- default: "google/gemini-2.0-flash"
869
+ search: "google/gemini-3-flash-preview",
870
+ analyze: "google/gemini-3-flash-preview",
871
+ default: "google/gemini-3-flash-preview"
872
872
  };
873
873
 
874
874
  // src/agent/index.ts
@@ -3253,7 +3253,7 @@ import {
3253
3253
  } from "ai";
3254
3254
  import { nanoid as nanoid2 } from "nanoid";
3255
3255
  var Subagent = class {
3256
- /** Model to use (defaults to gemini-2.0-flash) */
3256
+ /** Model to use (defaults to gemini-3-flash-preview) */
3257
3257
  model;
3258
3258
  /** Maximum steps before stopping */
3259
3259
  maxSteps = 20;
@@ -5724,6 +5724,24 @@ ${prompt}` });
5724
5724
 
5725
5725
  // src/server/routes/sessions.ts
5726
5726
  var sessions = new Hono();
5727
+ var pendingInputStore = /* @__PURE__ */ new Map();
5728
+ var devtoolsContextStore = /* @__PURE__ */ new Map();
5729
+ function cleanupPendingInputs() {
5730
+ const now = Date.now();
5731
+ for (const [sessionId, entry] of pendingInputStore) {
5732
+ if (now - entry.createdAt.getTime() > 5 * 60 * 1e3) {
5733
+ pendingInputStore.delete(sessionId);
5734
+ }
5735
+ }
5736
+ }
5737
+ function cleanupDevtoolsContexts() {
5738
+ const now = Date.now();
5739
+ for (const [sessionId, ctx] of devtoolsContextStore) {
5740
+ if (now - ctx.lastHeartbeat.getTime() > 30 * 1e3) {
5741
+ devtoolsContextStore.delete(sessionId);
5742
+ }
5743
+ }
5744
+ }
5727
5745
  var createSessionSchema = z12.object({
5728
5746
  name: z12.string().optional(),
5729
5747
  workingDirectory: z12.string().optional(),
@@ -5947,6 +5965,76 @@ sessions.post("/:id/clear", async (c) => {
5947
5965
  await agent.clearContext();
5948
5966
  return c.json({ success: true, sessionId: id });
5949
5967
  });
5968
+ var pendingInputSchema = z12.object({
5969
+ text: z12.string()
5970
+ });
5971
+ sessions.post(
5972
+ "/:id/pending-input",
5973
+ zValidator("json", pendingInputSchema),
5974
+ async (c) => {
5975
+ const id = c.req.param("id");
5976
+ const { text } = c.req.valid("json");
5977
+ const session = await sessionQueries.getById(id);
5978
+ if (!session) {
5979
+ return c.json({ error: "Session not found" }, 404);
5980
+ }
5981
+ pendingInputStore.set(id, { text, createdAt: /* @__PURE__ */ new Date() });
5982
+ cleanupPendingInputs();
5983
+ return c.json({ success: true, sessionId: id });
5984
+ }
5985
+ );
5986
+ sessions.get("/:id/pending-input", async (c) => {
5987
+ const id = c.req.param("id");
5988
+ cleanupPendingInputs();
5989
+ const pending = pendingInputStore.get(id);
5990
+ if (!pending) {
5991
+ return c.json({ hasPendingInput: false, text: null });
5992
+ }
5993
+ pendingInputStore.delete(id);
5994
+ return c.json({
5995
+ hasPendingInput: true,
5996
+ text: pending.text,
5997
+ createdAt: pending.createdAt.toISOString()
5998
+ });
5999
+ });
6000
+ var devtoolsContextSchema = z12.object({
6001
+ url: z12.string(),
6002
+ path: z12.string(),
6003
+ pageName: z12.string().optional()
6004
+ });
6005
+ sessions.post(
6006
+ "/:id/devtools-context",
6007
+ zValidator("json", devtoolsContextSchema),
6008
+ async (c) => {
6009
+ const id = c.req.param("id");
6010
+ const body = c.req.valid("json");
6011
+ devtoolsContextStore.set(id, {
6012
+ url: body.url,
6013
+ path: body.path,
6014
+ pageName: body.pageName || body.path,
6015
+ lastHeartbeat: /* @__PURE__ */ new Date()
6016
+ });
6017
+ cleanupDevtoolsContexts();
6018
+ return c.json({ success: true, sessionId: id });
6019
+ }
6020
+ );
6021
+ sessions.get("/:id/devtools-context", async (c) => {
6022
+ const id = c.req.param("id");
6023
+ cleanupDevtoolsContexts();
6024
+ const ctx = devtoolsContextStore.get(id);
6025
+ if (!ctx) {
6026
+ return c.json({ connected: false, context: null });
6027
+ }
6028
+ return c.json({
6029
+ connected: true,
6030
+ context: {
6031
+ url: ctx.url,
6032
+ path: ctx.path,
6033
+ pageName: ctx.pageName,
6034
+ lastHeartbeat: ctx.lastHeartbeat.toISOString()
6035
+ }
6036
+ });
6037
+ });
5950
6038
  sessions.get("/:id/todos", async (c) => {
5951
6039
  const id = c.req.param("id");
5952
6040
  const session = await sessionQueries.getById(id);