Configuration
Zasper is configured with command-line flags and a few environment variables. Settings you change
in the app are stored in ~/.zasper/config.json.
Command-Line Flags
| Flag | Default | What it does |
|---|---|---|
--cwd |
. |
The folder to open as the project |
--host |
127.0.0.1 |
The network interface to listen on. 0.0.0.0 makes the server reachable from other machines; use it together with --protected=true |
--port |
:8048 |
The port to listen on. 8888 and :8888 both work |
--protected |
false |
Require an access token to log in; see Deploying on Cloud |
--tracking |
true |
Send anonymous usage data |
--debug |
false |
Log at debug level |
--version |
Print the version and exit |
A --port that includes a host, such as --port=0.0.0.0:8048, still listens on exactly that
address. This keeps scripts written before 1.0 working unchanged.
Environment Variables
| Variable | What it does |
|---|---|
ZASPER_JWT_SECRET |
The key used to sign login sessions in protected mode. Without it, Zasper generates a random key on every start, so a restart logs everyone out |
ZASPER_TELEMETRY |
0, false, off or no turns usage data off for this run; 1, true, on or yes turns it on |
ZASPER_LOG_FORMAT |
console or json. By default Zasper uses console format in a terminal and JSON otherwise |
ZASPER_ACCESS_LOG |
1, true, on or yes logs every HTTP request |
Files
| Path | Contents |
|---|---|
~/.zasper/config.json |
Your theme, recent projects, usage-data setting and anonymous ID |
~/.zasper/runtime/ |
Connection files for running kernels. They are readable only by you and are deleted when the kernel stops |
Logging
Zasper writes its logs to standard output. By default it logs only changes and failures; successful
requests and routine kernel activity appear only with --debug.
In a terminal, logs are formatted for reading. When the output goes elsewhere, such as a pipe, a
file, systemd or a container’s log collector, each line is JSON. Set ZASPER_LOG_FORMAT to override
this. To log every HTTP request without turning on all debug logging, set ZASPER_ACCESS_LOG=1.
Anonymous Usage Data
Zasper sends a small amount of anonymous usage data: counts of things like notebooks opened, cells run and terminals started, along with the Zasper version, OS and CPU architecture. It never sends file names, paths, code, project names, your username or your IP address. There is no session recording and no cookie. PRIVACY.md lists every event and every value it can carry.
Any one of these turns it off. The first two apply only to the current run and take precedence over the setting:
zasper --tracking=falseZASPER_TELEMETRY=0 zasper- Settings → Privacy → Send anonymous usage data, which is remembered
With tracking off, Zasper collects nothing and makes no requests. Settings → Privacy → Reset anonymous ID replaces your ID, so what is sent next can’t be linked to what was sent before.