feat(eve): mount bundled development extensions - #3541
Conversation
Bundle + Package Summary:
|
| Area | Metric | Baseline | Current | Delta |
|---|---|---|---|---|
| Package | Packed tarball | 8.57 MB | 8.58 MB | +4.5 kB |
| Package | Unpacked publish size | 31.94 MB | 31.96 MB | +19.9 kB |
| Package | Installed footprint | 78.07 MB | 78.09 MB | +19.9 kB |
| Package | Published files | 3759 | 3771 | +12 |
| Package | Installed files | 7719 | 7731 | +12 |
| Package | Installed package instances | 33 | 33 | 0 |
| Package | Distinct installed package names | 32 | 32 | 0 |
| Package | Installed dependency edges | 51 | 51 | 0 |
| Package | Installed optional peer edges | 8 | 8 | 0 |
| Runtime | Unique function payloads | 2 | 2 | 0 |
| Runtime | Total function bytes | 22.06 MB | 22.07 MB | +2.1 kB |
| Runtime | Public routes | 18 | 18 | 0 |
Changed function payloads vs main (b333e7d) (2)
| Function | Status | Baseline | Current | Delta | Route changes |
|---|---|---|---|---|---|
functions/__server.func |
changed | 11.03 MB | 11.03 MB | +1.1 kB |
none |
functions/.well-known/workflow/v1/flow.func |
changed | 11.03 MB | 11.03 MB | +1.1 kB |
none |
eve init install
| Metric | Baseline | Current | Delta |
|---|---|---|---|
| Installed footprint | 116.29 MB | 116.31 MB | +19.9 kB |
| Installed packages | 98 | 98 | 0 |
| dependencies | 4 | 4 | 0 |
| devDependencies | 2 | 2 | 0 |
| Dependency package bytes | 49.39 MB | 49.40 MB | +19.9 kB |
| devDependency package bytes | 5.04 MB | 5.04 MB | 0 B ➖ |
Build Metadata
- Preset:
vercel - Nitro:
nitro@3.0.260903-beta - Output directory:
apps/fixtures/weather-agent/.vercel/output - Build metadata timestamp: 2026-09-21T05:19:16.138Z
- Route aliases: 18 public, 1 internal (19 total aliases)
- Vercel routes in config: 21
- Severity legend: 🔴 dominant/large, 🟠 notable, 🟡 watch, ⚪ small
Package Drill-Down
Package Details
- Package:
eve@0.63.0 - Package directory:
packages/eve - Tarball: 8.58 MB (
eve-0.63.0.tgz) - Unpacked payload: 31.96 MB across 3771 published files
- Installed footprint: 78.09 MB across 7731 installed files
- Installed root package: 31.31 MB
- Installed dependencies: 46.78 MB
- Installed package instances: 33
- Distinct installed package names: 32
- Installed dependency edges: 51
- Installed optional peer edges: 8
- Runtime dependencies: 2
- Peer dependencies: 6 (5 optional)
Installed footprint is measured from an isolated temporary npm install of the packed tarball.
Graph metrics read only package.json files in package directories directly beneath a node_modules boundary, including nested boundaries. Each directory is one package instance; distinct names come from those manifests. Dependency edges count each unique name in dependencies or optionalDependencies per instance; optional peer edges count peerDependencies marked optional.
Heavy installed dependencies
eve: 31.31 MB (40.1%)@rolldown/binding-linux-x64-gnu: 19.10 MB (24.5%)ai: 7.62 MB (9.8%)zod: 6.67 MB (8.5%)undici: 3.51 MB (4.5%)
Publish payload breakdown
Published file size
🔴 dist/src/compiled/shadcn-registry/index.js [#############...........] 9.70 MB 30.4%
🟠 dist/src/compiled/@photon-ai/chat-adapter-ime... [###.....................] 2.29 MB 7.2%
🟠 dist/src/compiled/@ai-sdk/code-mode/index.js [#.......................] 1.03 MB 3.2%
🟡 dist/src/compiled/@vercel/blob/index.js [#.......................] 902.9 kB 2.8%
🟡 dist/src/compiled/_chunks/workflow/signal-exi... [#.......................] 514.5 kB 1.6%
🔴 Other published files [########################] 17.52 MB 54.8%
Installed footprint breakdown
Installed package size
🔴 eve [########################] 31.31 MB 40.1%
🔴 @rolldown/binding-linux-x64-gnu [###############.........] 19.10 MB 24.5%
🔴 ai [######..................] 7.62 MB 9.8%
🔴 zod [#####...................] 6.67 MB 8.5%
🟠 undici [###.....................] 3.51 MB 4.5%
🟠 nitro [#.......................] 1.89 MB 2.4%
🔴 Other installed packages [######..................] 7.98 MB 10.2%
Runtime dependencies (2)
| Package | Range | Notes |
|---|---|---|
nitro |
3.0.260903-beta |
|
undici |
8.9.0 |
Peer dependencies (6)
| Package | Range | Notes |
|---|---|---|
@opentelemetry/api |
^1.0.0 |
optional peer |
ai |
catalog: |
|
braintrust |
^3.0.0 |
optional peer |
dd-trace |
^6.13.0 |
optional peer |
just-bash |
^3.1.0 |
optional peer |
microsandbox |
^0.5.0 |
optional peer |
eve init install drill-down
eve init install details
- Command:
eve init my-agent - Package manager:
npm - Installed footprint: 116.31 MB across 9625 installed files
- Installed packages: 98 total (92 transitive-only)
- dependencies: 4 direct packages totaling 49.40 MB
- devDependencies: 2 direct packages totaling 5.04 MB
- Other transitive package files: 61.86 MB
Installed footprint is measured from an isolated temporary eve init my-agent using the current packed eve tarball.
Heavy installed dependencies
eve: 31.31 MB (26.9%)@typescript/typescript-linux-x64: 27.95 MB (24.0%)@rolldown/binding-linux-x64-gnu: 19.10 MB (16.4%)zod: 10.29 MB (8.8%)ai: 7.62 MB (6.5%)
Installed footprint breakdown
Installed package size
🔴 eve [########################] 31.31 MB 26.9%
🔴 @typescript/typescript-linux-x64 [#####################...] 27.95 MB 24.0%
🔴 @rolldown/binding-linux-x64-gnu [###############.........] 19.10 MB 16.4%
🔴 zod [########................] 10.29 MB 8.8%
🔴 ai [######..................] 7.62 MB 6.5%
🟠 undici [###.....................] 3.51 MB 3.0%
🔴 Other installed packages [#############...........] 16.53 MB 14.2%
dependencies (4)
| Package | Range | Installed size | Share |
|---|---|---|---|
@vercel/connect |
2.2.0 |
188.7 kB | 0.2% |
ai |
^7.0.105 |
7.62 MB | 6.5% |
eve |
file:eve-0.63.0.tgz |
31.31 MB | 26.9% |
zod |
4.5.4 |
10.29 MB | 8.8% |
devDependencies (2)
| Package | Range | Installed size | Share |
|---|---|---|---|
@types/node |
24.x |
2.54 MB | 2.2% |
typescript |
7.0.2 |
2.50 MB | 2.1% |
Function Drill-Down
Payload Size Graph
Unique function payload size and share of total
🔴 functions/.well-known/workflow/v1/flow.func [########################] 11.03 MB 50.0%
🔴 functions/__server.func [########################] 11.03 MB 50.0%
Top Function Payloads
🟠 functions/.well-known/workflow/v1/flow.func • 1 public route • 11.03 MB
| Metric | Value |
|---|---|
| Public routes | /.well-known/workflow/v1/flow |
| Runtime | nodejs24.x |
| Handler | index.mjs |
| Payload | 11.03 MB |
| Function files | 11.03 MB across 117 files |
| Traced dependencies | 0 B |
| Signal | 🟠 Bundled file index.mjs is 2.89 MB (26.2%) |
🟠 🔎 Dependency Analysis
📦 Bundled files:
Bundled file size
🟠 index.mjs [##############..........] 2.89 MB 26.2%
🟡 _libs/undici.mjs [#####...................] 980.8 kB 8.9%
🟡 _chunks/sandbox.mjs [####....................] 809.9 kB 7.3%
🟡 _chunks/chatgpt-model.mjs [###.....................] 701.4 kB 6.4%
🟡 _chunks/signal-exit-B9U6kH7R.mjs [###.....................] 616.2 kB 5.6%
🔴 Other bundled files [########################] 5.04 MB 45.7%
🧾 Vercel Config
{
"handler": "index.mjs",
"launcherType": "Nodejs",
"shouldAddHelpers": false,
"supportsResponseStreaming": true,
"runtime": "nodejs24.x",
"maxDuration": "max",
"experimentalTriggers": [
{
"type": "queue/v2beta",
"topic": "__eve776561746865722d6167656e74_wkf_workflow_*",
"consumer": "default",
"retryAfterSeconds": 5,
"initialDelaySeconds": 0
}
],
"environment": {
"WORKFLOW_PRECONDITION_GUARD": "1"
}
}🟠 functions/__server.func • 17 public routes, 1 internal alias • 11.03 MB
| Metric | Value |
|---|---|
| Public routes | //.well-known/workflow/v1/webhook/[token]/eve/v1/activity/[token]/eve/v1/callback/[token]/eve/v1/connections/[name]/callback/[attemptId]/[token]/eve/v1/connections/[name]/callback/[token]/eve/v1/health/eve/v1/info/eve/v1/session/eve/v1/session/[parentSessionId]/subagents/[callId]/[childSessionId]/stream/eve/v1/session/[sessionId]/eve/v1/session/[sessionId]/cancel/eve/v1/session/[sessionId]/clear/eve/v1/session/[sessionId]/compact/eve/v1/session/[sessionId]/reset/eve/v1/session/[sessionId]/stream/eve/v1/task-input/[token] |
| Internal aliases | /__server |
| Runtime | nodejs24.x |
| Handler | index.mjs |
| Payload | 11.03 MB |
| Function files | 11.03 MB across 117 files |
| Traced dependencies | 0 B |
| Signal | 🟠 Bundled file index.mjs is 2.89 MB (26.2%) |
🟠 🔎 Dependency Analysis
📦 Bundled files:
Bundled file size
🟠 index.mjs [##############..........] 2.89 MB 26.2%
🟡 _libs/undici.mjs [#####...................] 980.8 kB 8.9%
🟡 _chunks/sandbox.mjs [####....................] 809.9 kB 7.3%
🟡 _chunks/chatgpt-model.mjs [###.....................] 701.4 kB 6.4%
🟡 _chunks/signal-exit-B9U6kH7R.mjs [###.....................] 616.2 kB 5.6%
🔴 Other bundled files [########################] 5.04 MB 45.7%
🧾 Vercel Config
{
"handler": "index.mjs",
"launcherType": "Nodejs",
"shouldAddHelpers": false,
"supportsResponseStreaming": true,
"runtime": "nodejs24.x"
}Build Timing: e2e/fixtures/agent-tools-sandbox
This is an informational timing measurement inside eve build, from preflight through publication. Output-size measurement and profile writing are excluded.
Build mode: deployable Vercel build with sandbox template prewarm included.
- Build pipeline: 4.10 s -> 4.02 s (-76.2 ms) vs
main (b333e7d). - Timing is informational: shared GitHub runners are too variable for a hard timing budget.
Detailed phase timings vs `main (b333e7d)`
| Phase | Baseline | Current | Delta |
|---|---|---|---|
extension.check |
0.4 ms | 10.3 ms | +9.9 ms |
project.resolve |
0.3 ms | 0.4 ms | +0.1 ms |
workspace.create |
0.5 ms | 0.6 ms | +0.1 ms |
host.prepare |
659.6 ms | 575.3 ms | -84.3 ms |
vercel.service-prefix.resolve |
2.3 ms | 2.2 ms | -0.1 ms |
nitro.create |
298.8 ms | 311.3 ms | +12.5 ms |
sandbox.prewarm |
293.3 ms | 289.1 ms | -4.2 ms |
nitro.cache.prepare |
0.2 ms | 0.3 ms | +0.1 ms |
nitro.prepare |
0.8 ms | 0.8 ms | 0.0 ms |
nitro.public-assets |
0.7 ms | 0.8 ms | +0.1 ms |
nitro.prerender |
0.5 ms | 0.5 ms | 0.0 ms |
nitro.bundle |
2.78 s | 2.77 s | -10.9 ms |
nitro.cache.write |
0.4 ms | 0.4 ms | 0.0 ms |
vercel.workflow-function.materialize |
52.4 ms | 52.7 ms | +0.3 ms |
agent-summary.emit |
0.6 ms | 0.7 ms | +0.1 ms |
nitro.close |
0.2 ms | 0.1 ms | -0.1 ms |
output.publish |
3.4 ms | 3.4 ms | 0.0 ms |
workspace.remove |
2.4 ms | 2.3 ms | -0.1 ms |
5250533 to
865bdd3
Compare
|
Addressed all three review comments in f56ff03: preserved development extension selection through the forked local server child, explicitly disabled bundled extensions for local evals, and updated self-modification guidance to check both flat and directory mount forms before scaffolding. Validation: targeted unit tests (76 passed), pnpm lint, and pnpm guard:invariants. |
1cbb810 to
4a8f95d
Compare
Signed-off-by: prha <prha@vercel.com>
Signed-off-by: prha <prha@vercel.com>
Signed-off-by: prha <prha@vercel.com>
4a8f95d to
929309f
Compare
Signed-off-by: prha <prha@vercel.com>
929309f to
c32aae7
Compare
Signed-off-by: prha <prha@vercel.com>
Signed-off-by: prha <prha@vercel.com>
Summary
Local development should expose eve's self-modification capabilities without requiring every project to install an extension mount first. This change makes
eve devmount bundled development extensions by default, initially self-modification, while letting an authoredself-modificationmount take precedence and providing--no-default-extensionsto disable the defaults. The selection persists across local server processes and rebuilds, while production bundles do not initialize development-only mounts.Validation
pnpm --filter eve exec vitest run --config vitest.unit.config.ts src/compiler/source-graph.test.ts src/discover/bundled-extension.test.ts src/self-modification/extension/subagents/agent/instructions.test.ts src/cli/run.test.ts(78 tests passed)pnpm --filter eve exec vitest run --config vitest.integration.config.ts src/compiler/development-extensions.integration.test.ts(2 tests passed)git diff --checkChecklist
CONTRIBUTING.mdevepackagegit commit --signoff)