Prerequisites
Describe the Feature Request
For services that expose machine-readable interfaces (APIs intended to be consumed by other StartOS services rather than human browsers), display the canonical internal URL — http://<package-id>.startos:<internal-port> plus any required path prefix like /v1 — alongside the existing LAN/HTTPS interfaces in the Interfaces tab.
Describe the Use Case
StartOS 0.4.x supports inter-service communication via <package-id>.startos DNS names on a shared internal network, but this URL pattern is not surfaced anywhere in the web UI. Today, users discovering it have to:
- Read another package's hard-coded configuration (e.g., Open WebUI's default
http://searxng.startos:80/search?q=... for the SearXNG integration) and reverse-engineer the convention.
- Cross-reference the consumer package's README against the producer package's README to figure out which internal port to use, since the Interfaces tab only shows the LAN-mapped port.
- Know that OpenAI-compatible services require a
/v1 suffix that isn't part of the StartOS interface metadata.
The result is that "two StartOS services should talk to each other" — a workflow the platform's design encourages — is harder to accomplish than connecting a third-party app to a single StartOS service.
Describe Preferred Solution
Extend the package manifest schema (or the existing interface metadata) to allow each interface to declare:
- An
internal_url field (e.g., http://maple-proxy.startos:8080)
- An optional
base_path field (e.g., /v1)
- An optional
auth_hint field (e.g., "Bearer token in Authorization header" or "None required")
Display these in the Interfaces tab in a dedicated "Service-to-Service" or "Internal API" section, distinct from the user-facing LAN/Tor/hostname.local URLs. Include a copy-to-clipboard button.
Describe Alternatives
- Add a section to each individual service's README documenting its internal URL (workable but doesn't scale; see Issue 4).
- Document the convention once in core StartOS docs and rely on users to apply it (current de-facto situation; not discoverable enough).
- Expose internal URLs only via
start-cli (CLI-only is fine for power users but doesn't help GUI users).
Anything else?
This change would potentially make the Open WebUI auto-detection feature request I just submitted dramatically simpler to implement — Open WebUI could just read the manifest of each installed AI service and pull the correct URL directly, rather than maintaining a hard-coded allowlist.
Prerequisites
Describe the Feature Request
For services that expose machine-readable interfaces (APIs intended to be consumed by other StartOS services rather than human browsers), display the canonical internal URL —
http://<package-id>.startos:<internal-port>plus any required path prefix like/v1— alongside the existing LAN/HTTPS interfaces in the Interfaces tab.Describe the Use Case
StartOS 0.4.x supports inter-service communication via
<package-id>.startosDNS names on a shared internal network, but this URL pattern is not surfaced anywhere in the web UI. Today, users discovering it have to:http://searxng.startos:80/search?q=...for the SearXNG integration) and reverse-engineer the convention./v1suffix that isn't part of the StartOS interface metadata.The result is that "two StartOS services should talk to each other" — a workflow the platform's design encourages — is harder to accomplish than connecting a third-party app to a single StartOS service.
Describe Preferred Solution
Extend the package manifest schema (or the existing interface metadata) to allow each interface to declare:
internal_urlfield (e.g.,http://maple-proxy.startos:8080)base_pathfield (e.g.,/v1)auth_hintfield (e.g., "Bearer token inAuthorizationheader" or "None required")Display these in the Interfaces tab in a dedicated "Service-to-Service" or "Internal API" section, distinct from the user-facing LAN/Tor/hostname.local URLs. Include a copy-to-clipboard button.
Describe Alternatives
start-cli(CLI-only is fine for power users but doesn't help GUI users).Anything else?
This change would potentially make the Open WebUI auto-detection feature request I just submitted dramatically simpler to implement — Open WebUI could just read the manifest of each installed AI service and pull the correct URL directly, rather than maintaining a hard-coded allowlist.