CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

reverse-proxy-and-tunnel

Configures Nginx/Caddy reverse proxies and Cloudflare/WireGuard tunnels for safe homelab service exposure.

Quality

72%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Medium

Suggest reviewing before use

Fix and improve this skill with Tessl

tessl review fix ./skills/reverse-proxy-and-tunnel/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

65%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-structured, token-efficient overview of four access patterns with a genuine safety section, but the guidance stops short of executable commands for the Cloudflare and Nginx paths and lacks inline validation checkpoints. Adding concrete commands and validation steps per pattern would raise actionability and workflow clarity to match its organization.

Suggestions

Add executable commands to the Cloudflare Tunnel pattern (e.g., 'cloudflared tunnel login', 'cloudflared tunnel create <name>', 'cloudflared tunnel route dns <name> sub.domain.com') and a minimal config.yml example.

Include an example Nginx server block (proxy_pass, listen, Certbot certonly flags) instead of the bare instruction to 'Add a server block'.

Embed validation steps into each pattern (e.g., 'curl -I https://sub.domain.com' or 'cloudflared tunnel info' to confirm the route is live, with what to check on failure) rather than listing validation only in the Safety section.

DimensionReasoningScore

Conciseness

The body is lean and assumes competence ('No inbound firewall ports required', 'Caddy handles TLS automatically') with no padding explaining known concepts. It is not 5 because the 'Invocation' section (OpenCode/Codex/Freebuff lines) adds tokens with no value for the skill's actual task. It is not 3 because there is no unnecessary explanation beyond that section.

4 / 5

Actionability

The Caddy pattern gives a concrete snippet ('subdomain.domain.com { reverse_proxy localhost:PORT }'), but the other patterns are high-level hints with no executable commands ('Install cloudflared', 'Create a tunnel and route a subdomain', 'Add a server block in /etc/nginx/sites-available/'). This matches the anchor of some concrete guidance with key details missing; it is not 4 because the most common cases (Cloudflare Tunnel, Nginx) lack copy-paste commands.

3 / 5

Workflow Clarity

Each access pattern has a recognizable step sequence, and one checkpoint exists ('Validate DNS propagation before considering a tunnel live'), but validation is not woven into the steps and there is no error-recovery guidance (e.g., what to check if the tunnel doesn't come up). It is not 2 because sequences are present and reasonably defined; not 4 because checkpoints are mostly implicit rather than inline validation steps.

3 / 5

Progressive Disclosure

The skill is under 50 lines, self-contained with no bundle files needed (references/ and scripts/ are empty), and organized into clear sections (Access Patterns with four sub-patterns, Safety, Companion Skills, References) with one-level-deep external links clearly signaled. This matches the simple-skill exception: well-organized sections alone justify a 5.

5 / 5

Total

15

/

20

Passed

Description

66%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A concrete, tool-specific description with a clear 'what', but it lacks any explicit 'when to use' trigger clause, which caps completeness and slightly weakens trigger and distinctiveness performance. Adding a 'Use when exposing a homelab service...' clause would lift most dimensions.

Suggestions

Append an explicit trigger clause such as 'Use when exposing a homelab service to the internet or an external network, or when the user mentions reverse proxies, tunnels, or exposing a service safely.'

Mention Tailscale (covered in the body) and natural phrasings like 'expose a service' or 'port forwarding' to broaden trigger-term coverage.

Consider splitting the single verb 'Configures' into distinct actions (e.g., 'sets up reverse proxies, establishes tunnels, provisions TLS') to sharpen specificity.

DimensionReasoningScore

Specificity

The description names concrete tools ('Nginx/Caddy reverse proxies and Cloudflare/WireGuard tunnels') and a clear purpose ('safe homelab service exposure'), giving specific coverage with only a minor gap (Tailscale, covered in the body, is omitted). It is not score 3 because it goes beyond naming the domain with 1-2 generic actions; not score 5 because it uses a single verb ('Configures') rather than multiple distinct concrete actions.

4 / 5

Completeness

The 'what' is clear (configures reverse proxies and tunnels for safe homelab service exposure), but there is no 'Use when...' clause or equivalent explicit trigger guidance — the 'when' is only weakly implied by the domain. Per the judging guideline, a missing 'Use when...' clause caps completeness at 3; it is not 2 because the 'what' half is concrete and specific.

3 / 5

Trigger Term Quality

Natural user phrases like 'reverse proxy', 'tunnel', and tool names (Nginx, Caddy, Cloudflare, WireGuard, homelab) are present. A few natural terms are missing (e.g., 'expose a service', 'port forwarding', 'Tailscale'), which keeps it below the comprehensive synonym coverage of score 5.

4 / 5

Distinctiveness Conflict Risk

The combination of named proxy/tunnel tools and 'homelab service exposure' carves a fairly distinct niche with minimal conflict risk. It is not 5 because without a 'when' clause it could still overlap with closely related networking/deployment skills (e.g., a generic service-deployment skill).

4 / 5

Total

15

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

pvnkmnk/AgenticSelfHostSkills

Path

skills/reverse-proxy-and-tunnel/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.