ngrok-surfaces
Installation
SKILL.md
Applying ngrok on the user's surface
Job skills decide what to build - the endpoint type and the policy, both in ngrok-engine. This skill decides where to apply it and hands off to the mechanics.
The configuration itself does not change across surfaces. The same policy body, the same endpoint URL, the same internal hostname. Only the wrapper differs. So never re-derive a policy because the user switched surfaces; re-wrap it.
Pick the surface
Read it off the user's project rather than asking:
| Signal | Surface | Reference |
|---|---|---|
| A terminal, a port, "just give me a URL" | agent CLI / ngrok.yml |
references/cli.md |
package.json, pyproject.toml, go.mod, or Cargo.toml with an ngrok dependency; or the endpoint should live and die with the process |
SDK | references/sdk.md |
| A controlplane creating resources per tenant/sandbox/device at runtime | REST API | references/api.md |
*.tf files |
Terraform | references/terraform.md |
Chart.yaml, kustomization.yaml, k8s manifests |
Kubernetes Operator | references/kubernetes-operator.md |
If none of these is obvious, the CLI is the safe default for a one-off task.