Settings & flags
Where every toggle lives — settings panel, browser localStorage, URL parameters, and server-side environment.
Settings panel
Open via the Account icon in the top bar, then the Settings tab. Things you can change here:
- Theme — dark / light / auto.
- Editor font + size.
- Keybinding profile.
- Model preferences — preferred provider, allow-cloud-fallback, privacy mode.
- MCP servers — add / remove external MCP servers.
- Notification preferences.
Changes apply immediately and persist server-side per user.
localStorage flags
These are per-browser and per-domain. Set in DevTools console: localStorage.setItem(key, value).
| Key | Effect | Default |
|---|---|---|
kf.term.pty | "0" = legacy fake shell. Anything else (or unset) = real PTY. | unset (PTY on) |
kf.term.pty.sids | Persisted PTY tab session ids. Auto-managed. | auto |
kf.term.pty.active | Last-active terminal tab sid. Auto-managed. | auto |
kf.term.fontSize | xterm font size (9-28). | 13 |
kf.whats-new.tier3.seen | "What's new" toast dismissal flag. Removing it makes the toast show again. | unset |
kf.theme | "dark" / "light". Mirrors the toggle. | system |
URL parameters
Per-tab overrides. Useful when sharing a link or debugging.
| Param | Effect |
|---|---|
?ptyterm=1 | Force real PTY for this tab. |
?ptyterm=0 | Force legacy fake shell for this tab. |
?kf_probe=1 | Inject the preview-probe shim into HTML previews (debugging only). |
Server-side environment
These are set on the KrowForge server itself; you can't change them from the browser. They're listed here so deployment and self-hosters know what's available.
| Env var | Effect | Default |
|---|---|---|
KROWFORGE_MONACO_URL | CDN base for Monaco. | https://cdn.jsdelivr.net/npm/monaco-editor@0.46.0/min/vs |
KROWFORGE_XTERM_URL | CDN base for xterm.js. | https://cdn.jsdelivr.net/npm/xterm@5.3.0 |
KROWFORGE_EMBED_MODEL | Sentence-transformer model id. | all-MiniLM-L6-v2 |
KROWFORGE_EMBED_PROVIDER | local / openai / cohere. | local |
KROWFORGE_PTY_TTL_SECS | Idle PTY reap timeout. | 1800 |
KROWFORGE_BROWSER_HOST_CAP | Max allowlist hosts per workspace. | 256 |
Cache-busting
Static asset URLs include a ?v=... query string that changes on each deploy. If a CSS or JS feels stale, hard-refresh (Ctrl+Shift+R) — the new query string defeats any cached old version.
Privacy mode (planned)
A toggle that forces all model calls to local providers (Ollama) and disables every cloud fallback. Currently in design — see Appendix A ticket A1 polish bar.