You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -34,7 +34,7 @@ docker run -p 8000:8000 \
34
34
redislabs/agent-memory-server:latest
35
35
```
36
36
37
-
The default image runs in development mode (`--no-worker`), which is perfect for testing and development.
37
+
The default image runs in development mode using the **asyncio** task backend (no separate worker required), which is perfect for testing and development.
38
38
39
39
**Production Deployment**:
40
40
@@ -74,8 +74,8 @@ uv install --all-extras
74
74
# Start Redis
75
75
docker-compose up redis
76
76
77
-
# Start the server (development mode)
78
-
uv run agent-memory api --no-worker
77
+
# Start the server (development mode, default asyncio backend)
78
+
uv run agent-memory api
79
79
```
80
80
81
81
### 2. Python SDK
@@ -155,8 +155,8 @@ result = await executor.ainvoke({"input": "Remember that I love pizza"})
155
155
# Start MCP server (stdio mode - recommended for Claude Desktop)
156
156
uv run agent-memory mcp
157
157
158
-
# Or with SSE mode (development mode)
159
-
uv run agent-memory mcp --mode sse --port 9000 --no-worker
158
+
# Or with SSE mode (development mode, default asyncio backend)
Copy file name to clipboardExpand all lines: docs/cli.md
+10-9Lines changed: 10 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -27,15 +27,16 @@ agent-memory api [OPTIONS]
27
27
-`--port INTEGER`: Port to run the server on. (Default: value from `settings.port`, usually 8000)
28
28
-`--host TEXT`: Host to run the server on. (Default: "0.0.0.0")
29
29
-`--reload`: Enable auto-reload for development.
30
-
-`--no-worker`: Use FastAPI background tasks instead of Docket workers. Ideal for development and testing.
30
+
-`--task-backend [asyncio|docket]`: Background task backend. `docket` (default) uses Docket-based background workers (requires a running `agent-memory task-worker` for non-blocking tasks). `asyncio` runs tasks inline in the API process and does **not** require a separate worker.
31
+
-`--no-worker` (**deprecated**): Backwards-compatible alias for `--task-backend=asyncio`. Maintained for older scripts; prefer `--task-backend`.
31
32
32
33
**Examples:**
33
34
34
35
```bash
35
-
# Development mode (no separate worker needed)
36
-
agent-memory api --port 8080 --reload --no-worker
36
+
# Development mode (no separate worker needed, asyncio backend)
37
+
agent-memory api --port 8080 --reload --task-backend asyncio
37
38
38
-
# Production mode (requires separate worker process)
39
+
# Production mode (default Docket backend; requires separate worker process)
39
40
agent-memory api --port 8080
40
41
```
41
42
@@ -51,22 +52,22 @@ agent-memory mcp [OPTIONS]
51
52
52
53
-`--port INTEGER`: Port to run the MCP server on. (Default: value from `settings.mcp_port`, usually 9000)
53
54
-`--mode [stdio|sse]`: Run the MCP server in stdio or SSE mode. (Default: stdio)
54
-
-`--no-worker`: Use FastAPI background tasks instead of Docket workers. Ideal for development and testing.
55
+
-`--task-backend [asyncio|docket]`: Background task backend. `asyncio` (default) runs tasks inline in the MCP process with no separate worker. `docket` sends tasks to a Docket queue, which requires running `agent-memory task-worker`.
55
56
56
57
**Examples:**
57
58
58
59
```bash
59
-
# Stdio mode (recommended for Claude Desktop) - automatically uses --no-worker
60
+
# Stdio mode (recommended for Claude Desktop) - default asyncio backend
60
61
agent-memory mcp
61
62
62
63
# SSE mode for development (no separate worker needed)
**Note:** Stdio mode automatically disables Docket workers as they're not needed when Claude Desktop manages the process lifecycle.
70
+
**Note:** Stdio mode is designed for tools like Claude Desktop and, by default, uses the asyncio backend (no worker). Use `--task-backend docket` if you want MCP to enqueue background work into a shared Docket worker.
Copy file name to clipboardExpand all lines: docs/getting-started.md
+7-7Lines changed: 7 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -28,10 +28,10 @@ But you can also run these components via the CLI commands. Here's how you
28
28
run the REST API server:
29
29
30
30
```bash
31
-
# Development mode (no separate worker needed)
32
-
uv run agent-memory api --no-worker
31
+
# Development mode (no separate worker needed, asyncio backend)
32
+
uv run agent-memory api --task-backend asyncio
33
33
34
-
# Production mode (requires separate worker process)
34
+
# Production mode (default Docket backend; requires separate worker process)
35
35
uv run agent-memory api
36
36
```
37
37
@@ -42,10 +42,10 @@ Or the MCP server:
42
42
uv run agent-memory mcp
43
43
44
44
# SSE mode for development
45
-
uv run agent-memory mcp --mode sse --no-worker
46
-
47
-
# SSE mode for production
48
45
uv run agent-memory mcp --mode sse
46
+
47
+
# SSE mode for production (use Docket backend)
48
+
uv run agent-memory mcp --mode sse --task-backend docket
49
49
```
50
50
51
51
### Using uvx in MCP clients
@@ -80,7 +80,7 @@ Notes:
80
80
uv run agent-memory task-worker
81
81
```
82
82
83
-
**For development**, use the `--no-worker` flag to run tasks inline without needing a separate worker process.
83
+
**For development**, the default `--task-backend=asyncio` on the `mcp` command runs tasks inline without needing a separate worker process. For the `api` command, use `--task-backend=asyncio` explicitly when you want single-process behavior.
84
84
85
85
**NOTE:** With uv, prefix the command with `uv`, e.g.: `uv run agent-memory --mode sse`. If you installed from source, you'll probably need to add `--directory` to tell uv where to find the code: `uv run --directory <path/to/checkout> run agent-memory --mode stdio`.
Copy file name to clipboardExpand all lines: docs/quick-start.md
+17-17Lines changed: 17 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -77,8 +77,8 @@ EOF
77
77
Start the REST API server:
78
78
79
79
```bash
80
-
# Start the API server in development mode (runs on port 8000)
81
-
uv run agent-memory api --no-worker
80
+
# Start the API server in development mode (runs on port 8000, asyncio backend)
81
+
uv run agent-memory api
82
82
```
83
83
84
84
Your server is now running at `http://localhost:8000`!
@@ -307,7 +307,7 @@ For web-based MCP clients, you can use SSE mode, but this requires manually star
307
307
308
308
```bash
309
309
# Only needed for SSE mode (development)
310
-
uv run agent-memory mcp --mode sse --port 9000 --no-worker
310
+
uv run agent-memory mcp --mode sse --port 9000
311
311
```
312
312
313
313
**Recommendation**: Use stdio mode with Claude Desktop as it's much simpler to set up.
@@ -355,11 +355,11 @@ Now that you have the basics working, explore these advanced features:
355
355
356
356
## Production Deployment
357
357
358
-
The examples above use `--no-worker`for development convenience. For production environments, you should use Docket workers for better reliability, scalability, and performance.
358
+
The examples above use asyncio task backends for simple, single-process development. For production environments, the `api` command defaults to the **Docket** backend (no flag needed), while the `mcp` command still defaults to **asyncio** for single-process MCP usage. Use `--task-backend=docket` with `mcp` when you want MCP to enqueue background work for workers.
359
359
360
360
### Why Use Workers in Production?
361
361
362
-
**Development mode (`--no-worker`):**
362
+
**Development mode (asyncio backend):**
363
363
- ✅ Quick setup, no extra processes needed
364
364
- ✅ Perfect for testing and development
365
365
- ❌ Tasks run inline, blocking API responses
@@ -375,10 +375,10 @@ The examples above use `--no-worker` for development convenience. For production
375
375
376
376
### Production Setup Steps
377
377
378
-
1.**Start the API server (without --no-worker):**
378
+
1.**Start the API server (default Docket backend):**
379
379
380
380
```bash
381
-
# Production API server
381
+
# Production API server (uses Docket by default; requires task-worker)
|**Quick testing**| Development |`uv run agent-memory api --no-worker`|
493
-
|**Local development**| Development |`uv run agent-memory api --no-worker`|
492
+
|**Quick testing**| Development |`uv run agent-memory api --task-backend asyncio`|
493
+
|**Local development**| Development |`uv run agent-memory api --reload --task-backend asyncio`|
494
494
|**Production API**| Production |`uv run agent-memory api` + workers |
495
495
|**High-scale deployment**| Production |`uv run agent-memory api` + multiple workers |
496
-
|**Claude Desktop MCP**| Either |`uv run agent-memory mcp` (stdio mode) |
497
-
|**Web MCP clients**| Either |`uv run agent-memory mcp --mode sse [--no-worker]`|
496
+
|**Claude Desktop MCP**| Either |`uv run agent-memory mcp` (stdio mode, asyncio backend) |
497
+
|**Web MCP clients**| Either |`uv run agent-memory mcp --mode sse [--task-backend docket]`|
498
498
499
-
**Recommendation**: Start with `--no-worker` for development, then graduate to worker-based deployment for production.
499
+
**Recommendation**: Start with the asyncio backend (`--task-backend asyncio`) for simple development runs, then rely on the default Docket backend for the API in production, and enable `--task-backend=docket` for MCP when you want shared workers.
0 commit comments