Loopback binding
The server listens on 127.0.0.1 and nothing else. The host is a literal in the source; no flag or environment variable can widen it.
REFERENCE / 05
A local-first tool for a local file. The security model is deliberately small enough to audit: bind loopback, check who is asking, never phone home.
01 / PURPOSE
GSD's config.json is powerful but opaque. The Config Manager exists to close that gap: every key gets a plain-language explanation, every enumerated value gets a meaning, and every edit is validated before it reaches disk.
The reference on this site is generated from the same canonical schema the editor uses. It is not a separate hand-maintained document that can drift.
The host can be Windows, macOS or Linux. A single npx command starts a helper on loopback, serves a bundled web UI, and opens your browser. There is no hosted service, no account, and no build step on your machine.
The project is independent and MIT licensed. Upstream GSD lives at open-gsd/gsd-core; this tool is not affiliated with it.
02 / BOUNDARY
The server listens on 127.0.0.1 and nothing else. The host is a literal in the source; no flag or environment variable can widen it.
Every API route checks the request Host against an allowlist, the standard defense against DNS rebinding — a remote page cannot make your browser treat its own hostname as this server.
API routes require an exact-string Origin match against the sealed launch origin. A random local port plus an origin check blocks cross-origin calls from other tabs.
The schema-update check is user-triggered, reads allowlisted release metadata, and never executes anything it downloads. It can propose a schema; you activate it.
03 / DATA HANDLING
| Data | Where it goes | Notes |
|---|---|---|
| Project config | Your project's .planning/config.json | Read on open; written only through validation and atomic replacement. |
| Version history | OS app-data directory | Full JSON snapshots keyed by the absolute config path; never inside the project or its .git. |
| Search-provider keys | Environment variable or ~/.gsd/<prefix>_api_key | File mode 0600; masked in the UI; never logged. |
| Telemetry / analytics | Nowhere | The application ships none. |
| Network requests | Only the user-triggered schema-update check | Reads allowlisted gsd-core release metadata; no remote code execution. |
04 / HARDENING
__proto__, constructor and prototype at every segment.05 / PROJECT
Report vulnerabilities privately through the repository's security policy rather than a public issue.
Read SECURITY.mdThe CLI, local server, config I/O layer, schema pipeline and web UI are in one repository, with tests for each layer.
github.com/FiredMosquito831MIT. Use it, fork it, ship it — keep the copyright notice.
Read the licenseThis is an independent project. GSD and Claude are products of their respective owners. The tool edits configuration files; it does not modify gsd-core itself.