eve 0.9.4 → 0.9.8

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 (32) hide show
  1. package/CHANGELOG.md +0 -509
  2. package/dist/src/cli/commands/init.d.ts +2 -4
  3. package/dist/src/cli/commands/init.js +1 -1
  4. package/dist/src/cli/dev/tui/terminal-renderer.js +2 -2
  5. package/dist/src/cli/run.d.ts +1 -1
  6. package/dist/src/cli/run.js +1 -1
  7. package/dist/src/compiled/.vendor-stamp.json +1 -1
  8. package/dist/src/evals/context.js +1 -1
  9. package/dist/src/evals/types.d.ts +2 -0
  10. package/dist/src/internal/application/package.js +1 -1
  11. package/dist/src/internal/nitro/host/ports.d.ts +1 -1
  12. package/dist/src/internal/nitro/host/ports.js +1 -1
  13. package/dist/src/internal/nitro/host/start-development-server.js +1 -1
  14. package/dist/src/public/definitions/connections/openapi.d.ts +7 -5
  15. package/dist/src/runtime/connections/openapi-client.d.ts +2 -2
  16. package/dist/src/runtime/connections/openapi-client.js +1 -1
  17. package/dist/src/runtime/connections/openapi-security.d.ts +2 -1
  18. package/dist/src/runtime/connections/openapi-security.js +1 -1
  19. package/dist/src/runtime/connections/openapi-spec.d.ts +4 -6
  20. package/dist/src/runtime/connections/openapi-spec.js +1 -1
  21. package/dist/src/runtime/prompt/connections.js +1 -1
  22. package/dist/src/setup/scaffold/create/project.js +1 -1
  23. package/docs/README.md +1 -1
  24. package/docs/concepts/sessions-runs-and-streaming.md +5 -5
  25. package/docs/connections.mdx +5 -5
  26. package/docs/getting-started.mdx +10 -37
  27. package/docs/guides/client/messages.mdx +1 -1
  28. package/docs/guides/client/output-schema.mdx +1 -1
  29. package/docs/guides/client/overview.mdx +1 -1
  30. package/docs/reference/cli.md +1 -1
  31. package/docs/schedules.mdx +1 -1
  32. package/package.json +1 -1
@@ -24,9 +24,9 @@ You also need a model credential. Set the provider or gateway key your model str
24
24
 
25
25
  ## Manual installation
26
26
 
27
- The quick start uses `eve init` for a guided scaffold. The target can also be an existing project directory (`eve init .`): the project must have a `package.json`, the `agent/` files must not exist yet, and `eve init` adds the missing `eve`, `ai`, and `zod` dependencies. The generated Eve dependency and Node engine come from the same Eve release; the engine is the lowest complete major supported by that release (e.g. `24.x`). An existing range is kept only when every version it permits stays within that major; otherwise Eve replaces it with the pinned major and prints a warning. Either way the final handoff runs the `eve dev` binary through the project's package manager, never the project's own `dev` script.
27
+ The quick start uses `eve init` for a guided scaffold. Run `npx eve@latest init <name>` from a parent directory, or create an empty directory first and run `eve init`, `eve init .`, or `eve init ./` inside it to run the same full scaffold there, including `package.json`. To add Eve to a non-empty existing app, use `npx eve@latest init .`: that add-agent flow requires a `package.json` and no existing `agent/` files yet, and Eve adds the missing `eve`, `ai`, and `zod` dependencies for you. Eve also ensures a compatible Node engine (for example `24.x`) is present; if an existing range is too narrow for the release, Eve updates it and warns you. Either way the final handoff runs the `eve dev` binary through the package manager, not the projects own `dev` script.
28
28
 
29
- To wire Eve into an existing app yourself instead, make sure the app declares a compatible Node runtime in `package.json`:
29
+ To wire Eve in by hand, declare a compatible Node runtime in `package.json`:
30
30
 
31
31
  ```json
32
32
  {
@@ -36,7 +36,7 @@ To wire Eve into an existing app yourself instead, make sure the app declares a
36
36
  }
37
37
  ```
38
38
 
39
- Then add only the dependency and author the two files the runtime needs:
39
+ Then install Eve and author the two files the runtime needs:
40
40
 
41
41
  ```bash
42
42
  npm install eve@latest
@@ -109,7 +109,7 @@ The same CLI can point at a deployment. `eve dev https://your-app.vercel.app` dr
109
109
  Every Eve app exposes the same stable HTTP API. Start a durable session:
110
110
 
111
111
  ```bash
112
- curl -X POST http://127.0.0.1:3000/eve/v1/session \
112
+ curl -X POST http://127.0.0.1:2000/eve/v1/session \
113
113
  -H 'content-type: application/json' \
114
114
  -d '{"message":"What is the weather in Brooklyn?"}'
115
115
  ```
@@ -124,39 +124,17 @@ The response comes back with two things you'll reuse:
124
124
  Attach to the session stream:
125
125
 
126
126
  ```bash
127
- curl http://127.0.0.1:3000/eve/v1/session/<sessionId>/stream
127
+ curl http://127.0.0.1:2000/eve/v1/session/<sessionId>/stream
128
128
  ```
129
129
 
130
- The stream is NDJSON. Expect lifecycle events such as:
131
-
132
- - `session.started`
133
- - `turn.started`
134
- - `message.received`
135
- - `step.started`
136
- - `actions.requested`
137
- - `action.result`
138
- - `subagent.called`
139
- - `subagent.completed`
140
- - `reasoning.appended`
141
- - `reasoning.completed`
142
- - `message.appended`
143
- - `message.completed`
144
- - `step.completed`
145
- - `turn.completed`
146
- - `session.waiting`
147
- - `session.completed`
148
- - `session.failed`
149
-
150
- `reasoning.appended` and `message.appended` are optional live-streaming events. Clients that can't surface incremental output can ignore them and rely on `reasoning.completed` and `message.completed`.
151
-
152
- `message.completed.data.finishReason` tells you whether assistant text is interim tool-call narration or a terminal reply, and `step.completed.data.usage` carries token usage. When a parent delegates to a subagent, `subagent.called.data.childSessionId` gives you the child session id, so you can subscribe to that child stream and watch the delegated work.
130
+ The stream is NDJSON, one lifecycle event per line. See [Sessions, runs & streaming](./concepts/sessions-runs-and-streaming) for the full list of events and what each one carries.
153
131
 
154
132
  ## Send a follow-up message
155
133
 
156
134
  When the session is waiting for the next user message, post a follow-up with the token:
157
135
 
158
136
  ```bash
159
- curl -X POST http://127.0.0.1:3000/eve/v1/session/<sessionId> \
137
+ curl -X POST http://127.0.0.1:2000/eve/v1/session/<sessionId> \
160
138
  -H 'content-type: application/json' \
161
139
  -d '{"continuationToken":"<token>","message":"Now do Queens."}'
162
140
  ```
@@ -168,18 +146,13 @@ See [Sessions, runs & streaming](./concepts/sessions-runs-and-streaming) for the
168
146
  If a coding agent (Claude Code, Cursor, and the like) is doing the setup, hand it this prompt:
169
147
 
170
148
  <CopyPrompt text="Set up an Eve agent for the user. Ask one question at a time. Use your prompt tools when available and do not guess. First ask what the agent should do. Then ask whether to create a new project or add it to an existing directory. For a new project, propose a name and ask the user to confirm it, then ask whether it should include Web Chat. Run `npx eve@latest init <target>`, adding `--channel-web-nextjs` if the user wants Web Chat. After scaffolding, read the relevant guide in `<project>/node_modules/eve/docs/`, replace the placeholder in `<project>/agent/instructions.md` with the purpose the user gave you, and do not start `eve dev` because it is interactive. Give the user the exact dev command printed by init.">
171
- Set up an Eve agent by asking what it should do, whether to create a new project or use an
172
- existing directory, and whether a new project should include Web Chat, one question at a time.
149
+ Set up an Eve agent by asking what it should do, whether to create a new project, scaffold the
150
+ current empty directory, or add Eve to an existing app, and whether a new project should include Web Chat, one question at a time.
173
151
  Run `npx eve@latest init <target>`, read the bundled docs, fill in agent/instructions.md, and give
174
152
  the user the dev command instead of starting the interactive server.
175
153
  </CopyPrompt>
176
154
 
177
- Once `eve` is a dependency, the full docs are bundled in the package, so the agent can read them locally without fetching anything:
178
-
179
- - Docs: `node_modules/eve/docs/`
180
-
181
- `eve init <name>` creates the base agent; `eve init .` adds one to an existing project. Add `--channel-web-nextjs` for Web Chat, or run
182
- `eve channels add slack` later from an interactive terminal.
155
+ Once `eve` is installed, the complete docs ship at `node_modules/eve/docs/`, so the agent can read them locally instead of fetching anything.
183
156
 
184
157
  ## What to read next
185
158
 
@@ -12,7 +12,7 @@ Pass a string to `send()` for plain text:
12
12
  ```ts
13
13
  import { Client } from "eve/client";
14
14
 
15
- const client = new Client({ host: "http://127.0.0.1:3000" });
15
+ const client = new Client({ host: "http://127.0.0.1:2000" });
16
16
  const session = client.session();
17
17
 
18
18
  const response = await session.send("What is the weather in Brooklyn?");
@@ -26,7 +26,7 @@ const outputSchema = {
26
26
  required: ["title", "count"],
27
27
  } as const;
28
28
 
29
- const client = new Client({ host: "http://127.0.0.1:3000" });
29
+ const client = new Client({ host: "http://127.0.0.1:2000" });
30
30
  const session = client.session();
31
31
 
32
32
  const response = await session.send<Summary>({
@@ -15,7 +15,7 @@ A `Client` binds one host, auth policy, header policy, and stream reconnection b
15
15
  import { Client } from "eve/client";
16
16
 
17
17
  const client = new Client({
18
- host: "http://127.0.0.1:3000",
18
+ host: "http://127.0.0.1:2000",
19
19
  });
20
20
  ```
21
21
 
@@ -77,7 +77,7 @@ Pass a bare URL as the only argument and the UI connects to that server instead
77
77
  | Flag | Effect |
78
78
  | ----------------------------------- | ----------------------------------------------------------------------------------------- |
79
79
  | `--host <host>` | Host interface to bind |
80
- | `--port <port>` | Port to listen on (defaults to `$PORT`, then `3000`) |
80
+ | `--port <port>` | Port to listen on (defaults to `$PORT`, then `2000`) |
81
81
  | `-u, --url <url>` | Connect to an existing server URL instead of starting one |
82
82
  | `--no-ui` | Start the server without an interactive UI |
83
83
  | `--name <name>` | Title shown in the terminal UI (defaults to the app folder name) |
@@ -86,7 +86,7 @@ A handler-form session runs on the same durable runtime engine as any other sess
86
86
  In production the cron cadence is the only thing that fires a schedule, but waiting for the next tick gets old fast while iterating in `eve dev`. So the dev server mounts a one-shot dispatch route: fire a schedule by name, out of band, exactly once.
87
87
 
88
88
  ```sh
89
- curl -X POST http://localhost:3000/eve/v1/dev/schedules/heartbeat
89
+ curl -X POST http://localhost:2000/eve/v1/dev/schedules/heartbeat
90
90
  # -> { "scheduleId": "heartbeat", "sessionIds": ["..."] }
91
91
  ```
92
92
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eve",
3
- "version": "0.9.4",
3
+ "version": "0.9.8",
4
4
  "private": false,
5
5
  "description": "Filesystem-first framework for durable backend AI agents that run anywhere.",
6
6
  "keywords": [