Describe the bug
Summary
@voltagent/core cannot be used directly in Supabase Edge Functions via npm: imports because Deno eagerly resolves transitive dependencies, including @libsql/client, which then loads a native *.node binary requiring FFI.
This makes VoltAgent unusable in Supabase Edge Functions even when the app does not configure LibSQL memory at all.
Environment
- Platform: Supabase Edge Functions
- Runtime: Deno-based edge runtime
- Import style: direct
npm: imports
- VoltAgent package:
@voltagent/core
- Tested on: April 22, 2026
Minimal repro
import { Agent } from "npm:@voltagent/core";
Deno.serve(() => {
const agent = new Agent({
name: "test",
instructions: "Say hello",
model: "openai/gpt-4o-mini",
});
return new Response("ok");
});
Steps To Reproduce
-
Create a new Supabase Edge Function.
-
Add a minimal VoltAgent import:
import { Agent } from "npm:@voltagent/core@<VERSION>";
Deno.serve(() => {
const agent = new Agent({
name: "test",
instructions: "Say hello",
model: "openai/gpt-4o-mini",
});
return new Response("ok");
});
-
Serve or deploy the function with Supabase Edge Functions.
-
Observe that Deno eagerly resolves transitive dependencies from @voltagent/core, including @libsql/client.
-
Resolution reaches a native *.node binary from the LibSQL stack, which requires FFI/native module loading and fails in the Supabase Edge runtime.
Expected behavior
Importing and using @voltagent/core in Supabase Edge Functions should work when LibSQL is not configured or used.
Unused native storage adapters should not block edge/serverless usage of the core package. If LibSQL is optional, it should only be loaded when explicitly imported/configured.
Packages
Tested package:
npm:@voltagent/core@<EXACT_VERSION_TESTED>
Not explicitly used in the repro:
@voltagent/libsql
@libsql/client
Runtime context:
- Supabase Edge Functions
- Deno-based edge runtime
Additional Context
No response
Describe the bug
Summary
@voltagent/corecannot be used directly in Supabase Edge Functions vianpm:imports because Deno eagerly resolves transitive dependencies, including@libsql/client, which then loads a native*.nodebinary requiring FFI.This makes VoltAgent unusable in Supabase Edge Functions even when the app does not configure LibSQL memory at all.
Environment
npm:imports@voltagent/coreMinimal repro
Steps To Reproduce
Create a new Supabase Edge Function.
Add a minimal VoltAgent import:
Serve or deploy the function with Supabase Edge Functions.
Observe that Deno eagerly resolves transitive dependencies from
@voltagent/core, including@libsql/client.Resolution reaches a native
*.nodebinary from the LibSQL stack, which requires FFI/native module loading and fails in the Supabase Edge runtime.Expected behavior
Importing and using
@voltagent/corein Supabase Edge Functions should work when LibSQL is not configured or used.Unused native storage adapters should not block edge/serverless usage of the core package. If LibSQL is optional, it should only be loaded when explicitly imported/configured.
Packages
Tested package:
npm:@voltagent/core@<EXACT_VERSION_TESTED>Not explicitly used in the repro:
@voltagent/libsql@libsql/clientRuntime context:
Additional Context
No response