sparkecoder 0.1.105 → 0.1.106
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.
- package/dist/agent/index.d.ts +3 -3
- package/dist/cli.js +15 -4
- package/dist/cli.js.map +1 -1
- package/dist/db/index.d.ts +2 -2
- package/dist/{index-Ba7GUFvL.d.ts → index--JjYcERz.d.ts} +51 -51
- package/dist/index.d.ts +5 -5
- package/dist/{schema-CYSKJZ3m.d.ts → schema-BQ3Wfu-a.d.ts} +3 -3
- package/dist/{search-CVVfuBPZ.d.ts → search-BRnGaIl-.d.ts} +4 -4
- package/dist/tools/index.d.ts +3 -3
- package/package.json +1 -1
- package/web/.next/BUILD_ID +1 -1
- package/web/.next/standalone/web/.next/BUILD_ID +1 -1
- package/web/.next/standalone/web/.next/build-manifest.json +2 -2
- package/web/.next/standalone/web/.next/prerender-manifest.json +3 -3
- package/web/.next/standalone/web/.next/server/app/_global-error.html +2 -2
- package/web/.next/standalone/web/.next/server/app/_global-error.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_not-found.html +1 -1
- package/web/.next/standalone/web/.next/server/app/_not-found.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/agents.html +1 -1
- package/web/.next/standalone/web/.next/server/app/agents.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/agents.segments/!KG1haW4p/agents/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/agents.segments/!KG1haW4p/agents.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/agents.segments/!KG1haW4p.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/agents.segments/_full.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/agents.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/agents.segments/_index.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/agents.segments/_tree.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/installation.html +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/installation.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_full.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_index.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_tree.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/skills.html +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/skills.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_full.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_index.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_tree.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/tools.html +2 -2
- package/web/.next/standalone/web/.next/server/app/docs/tools.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_full.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_index.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_tree.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs.html +2 -2
- package/web/.next/standalone/web/.next/server/app/docs.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs.segments/_full.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs.segments/_index.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs.segments/_tree.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs.segments/docs/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/docs.segments/docs.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/index.html +1 -1
- package/web/.next/standalone/web/.next/server/app/index.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/index.segments/_full.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/index.segments/_index.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/settings.html +1 -1
- package/web/.next/standalone/web/.next/server/app/settings.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/settings.segments/!KG1haW4p/settings/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/settings.segments/!KG1haW4p/settings.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/settings.segments/!KG1haW4p.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/settings.segments/_full.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/settings.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/settings.segments/_index.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
- package/web/.next/standalone/web/.next/server/pages/404.html +1 -1
- package/web/.next/standalone/web/.next/server/pages/500.html +2 -2
- package/web/.next/standalone/web/.next/server/server-reference-manifest.js +1 -1
- package/web/.next/standalone/web/.next/server/server-reference-manifest.json +1 -1
- /package/web/.next/standalone/web/.next/static/{DBWUfpm5AXF1O5Rh2hlWx → gBMaoIWuyMCzyJoRerJkB}/_buildManifest.js +0 -0
- /package/web/.next/standalone/web/.next/static/{DBWUfpm5AXF1O5Rh2hlWx → gBMaoIWuyMCzyJoRerJkB}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/standalone/web/.next/static/{DBWUfpm5AXF1O5Rh2hlWx → gBMaoIWuyMCzyJoRerJkB}/_ssgManifest.js +0 -0
- /package/web/.next/standalone/web/.next/static/static/{DBWUfpm5AXF1O5Rh2hlWx → gBMaoIWuyMCzyJoRerJkB}/_buildManifest.js +0 -0
- /package/web/.next/standalone/web/.next/static/static/{DBWUfpm5AXF1O5Rh2hlWx → gBMaoIWuyMCzyJoRerJkB}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/standalone/web/.next/static/static/{DBWUfpm5AXF1O5Rh2hlWx → gBMaoIWuyMCzyJoRerJkB}/_ssgManifest.js +0 -0
- /package/web/.next/static/{DBWUfpm5AXF1O5Rh2hlWx → gBMaoIWuyMCzyJoRerJkB}/_buildManifest.js +0 -0
- /package/web/.next/static/{DBWUfpm5AXF1O5Rh2hlWx → gBMaoIWuyMCzyJoRerJkB}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/static/{DBWUfpm5AXF1O5Rh2hlWx → gBMaoIWuyMCzyJoRerJkB}/_ssgManifest.js +0 -0
package/dist/agent/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import 'ai';
|
|
2
|
-
import '../schema-
|
|
3
|
-
export { A as Agent, a as AgentOptions, b as AgentRunOptions, c as AgentStreamResult, C as ContextManager, M as MessageAttachment, d as buildSystemPrompt, e as buildTaskPromptAddendum } from '../index
|
|
4
|
-
import '../search-
|
|
2
|
+
import '../schema-BQ3Wfu-a.js';
|
|
3
|
+
export { A as Agent, a as AgentOptions, b as AgentRunOptions, c as AgentStreamResult, C as ContextManager, M as MessageAttachment, d as buildSystemPrompt, e as buildTaskPromptAddendum } from '../index--JjYcERz.js';
|
|
4
|
+
import '../search-BRnGaIl-.js';
|
|
5
5
|
import 'drizzle-orm/sqlite-core';
|
|
6
6
|
import 'zod';
|
package/dist/cli.js
CHANGED
|
@@ -16909,7 +16909,7 @@ program.command("slack-setup").description("Interactively configure Slack integr
|
|
|
16909
16909
|
process.exit(1);
|
|
16910
16910
|
}
|
|
16911
16911
|
});
|
|
16912
|
-
program.command("cloudflared-setup").description("Auto-detect cloudflared + set up a tunnel to this sparkecoder (interactive)").option("--port <port>", "Local sparkecoder web UI port", "6969").option("--api-port <port>", "Local sparkecoder API port", "3141").option("--hostname <host>", "Public hostname you want to assign (e.g. sf-mac-1.example.com)").option("--tunnel-name <name>", "Tunnel name to reuse or create", "sparkecoder").option("--team <team>", "Your Cloudflare Access team subdomain (e.g. studyfetch -> studyfetch.cloudflareaccess.com)").option("--allowed-emails <emails>", "Comma-separated allow-listed emails").option("-y, --yes", "Skip confirmations and do everything non-interactively", false).option("--print-only", "Skip auto-setup and just print the copy/paste recipe", false).option("--cf-api-token <token>", "Cloudflare API token (Account: Cloudflare Tunnel: Edit + Zone: DNS: Edit). Or set CF_API_TOKEN env").option("--cf-account-id <id>", "Cloudflare account ID. Or set CF_ACCOUNT_ID env").option("--cf-zone-id <id>", "Cloudflare zone ID for the hostname. Or set CF_ZONE_ID env").option("--remote", "Provision the tunnel via the remote sparkecoder server (server holds the Cloudflare credentials)", false).option("--setup-secret <secret>", "Tunnel setup secret (required when server has TUNNEL_SETUP_SECRET set). Or set SPARKECODER_TUNNEL_SECRET env").action(async (options) => {
|
|
16912
|
+
program.command("cloudflared-setup").description("Auto-detect cloudflared + set up a tunnel to this sparkecoder (interactive)").option("--port <port>", "Local sparkecoder web UI port", "6969").option("--api-port <port>", "Local sparkecoder API port", "3141").option("--hostname <host>", "Public hostname you want to assign (e.g. sf-mac-1.example.com)").option("--tunnel-name <name>", "Tunnel name to reuse or create", "sparkecoder").option("--team <team>", "Your Cloudflare Access team subdomain (e.g. studyfetch -> studyfetch.cloudflareaccess.com)").option("--allowed-emails <emails>", "Comma-separated allow-listed emails").option("-y, --yes", "Skip confirmations and do everything non-interactively", false).option("--print-only", "Skip auto-setup and just print the copy/paste recipe", false).option("--cf-api-token <token>", "Cloudflare API token (Account: Cloudflare Tunnel: Edit + Zone: DNS: Edit). Or set CF_API_TOKEN env").option("--cf-account-id <id>", "Cloudflare account ID. Or set CF_ACCOUNT_ID env").option("--cf-zone-id <id>", "Cloudflare zone ID for the hostname. Or set CF_ZONE_ID env").option("--remote", "Provision the tunnel via the remote sparkecoder server (server holds the Cloudflare credentials)", false).option("--setup-secret <secret>", "Tunnel setup secret (required when server has TUNNEL_SETUP_SECRET set). Or set SPARKECODER_TUNNEL_SECRET env").option("--new-tunnel", "In --remote mode: force a new tunnel even if this user already has one (default: re-use existing)", false).action(async (options) => {
|
|
16913
16913
|
const { execSync: execSync2, spawnSync } = await import("child_process");
|
|
16914
16914
|
const { homedir: homedir2 } = await import("os");
|
|
16915
16915
|
const { copyFileSync } = await import("fs");
|
|
@@ -16942,7 +16942,14 @@ program.command("cloudflared-setup").description("Auto-detect cloudflared + set
|
|
|
16942
16942
|
}
|
|
16943
16943
|
return cfPath;
|
|
16944
16944
|
};
|
|
16945
|
+
const uninstallService = () => {
|
|
16946
|
+
spawnSync("cloudflared", ["service", "uninstall"], { stdio: "ignore" });
|
|
16947
|
+
if (process.platform !== "win32") {
|
|
16948
|
+
spawnSync("sudo", ["cloudflared", "service", "uninstall"], { stdio: "ignore" });
|
|
16949
|
+
}
|
|
16950
|
+
};
|
|
16945
16951
|
const installAsService = (token) => {
|
|
16952
|
+
uninstallService();
|
|
16946
16953
|
let r = spawnSync("cloudflared", ["service", "install", token], { stdio: "inherit" });
|
|
16947
16954
|
if (r.status !== 0 && process.platform !== "win32") {
|
|
16948
16955
|
console.log(chalk.dim("Retrying with sudo..."));
|
|
@@ -16965,8 +16972,9 @@ program.command("cloudflared-setup").description("Auto-detect cloudflared + set
|
|
|
16965
16972
|
}
|
|
16966
16973
|
const setupSecret = options.setupSecret || process.env.SPARKECODER_TUNNEL_SECRET;
|
|
16967
16974
|
const hostname = options.hostname;
|
|
16975
|
+
const path = options.newTunnel ? "/tunnels" : "/tunnels/ensure";
|
|
16968
16976
|
console.log(chalk.bold(
|
|
16969
|
-
hostname ? `Requesting tunnel for ${hostname} from remote server...` : "Requesting auto-generated tunnel from remote server..."
|
|
16977
|
+
options.newTunnel ? hostname ? `Requesting NEW tunnel for ${hostname} from remote server...` : "Requesting NEW auto-generated tunnel from remote server..." : "Ensuring tunnel exists on remote server (re-using if present)..."
|
|
16970
16978
|
));
|
|
16971
16979
|
const reqBody = {
|
|
16972
16980
|
port: Number(apiPort),
|
|
@@ -16974,7 +16982,7 @@ program.command("cloudflared-setup").description("Auto-detect cloudflared + set
|
|
|
16974
16982
|
name: tunnelName
|
|
16975
16983
|
};
|
|
16976
16984
|
if (hostname) reqBody.hostname = hostname;
|
|
16977
|
-
const res = await fetch(`${remoteUrl.replace(/\/$/, "")}
|
|
16985
|
+
const res = await fetch(`${remoteUrl.replace(/\/$/, "")}${path}`, {
|
|
16978
16986
|
method: "POST",
|
|
16979
16987
|
headers: {
|
|
16980
16988
|
"Content-Type": "application/json",
|
|
@@ -16989,7 +16997,10 @@ program.command("cloudflared-setup").description("Auto-detect cloudflared + set
|
|
|
16989
16997
|
process.exitCode = 1;
|
|
16990
16998
|
return;
|
|
16991
16999
|
}
|
|
16992
|
-
const { tunnelToken, hostname: provisionedHost, apiHostname } = await res.json();
|
|
17000
|
+
const { tunnelToken, hostname: provisionedHost, apiHostname, reused } = await res.json();
|
|
17001
|
+
if (reused) {
|
|
17002
|
+
console.log(chalk.dim("\u2713 Re-using existing tunnel \u2014 no new tunnel created on Cloudflare."));
|
|
17003
|
+
}
|
|
16993
17004
|
const cfPath = await installCloudflaredIfNeeded();
|
|
16994
17005
|
if (!cfPath) {
|
|
16995
17006
|
console.log(chalk.yellow("cloudflared not installed; run this once installed:"));
|