diff --git a/app/dashboard/events/page.tsx b/app/dashboard/events/page.tsx index da1f8ce..b725d77 100644 --- a/app/dashboard/events/page.tsx +++ b/app/dashboard/events/page.tsx @@ -44,7 +44,7 @@ export default async function DashboardEventsPage() { ]); return ( -
+
+
+
{intro.cta ? ( @@ -99,7 +99,7 @@ export default async function DashboardPage() { ) : null}
- + Events over time diff --git a/app/dashboard/routes/page.tsx b/app/dashboard/routes/page.tsx index c06408f..6cec81e 100644 --- a/app/dashboard/routes/page.tsx +++ b/app/dashboard/routes/page.tsx @@ -38,7 +38,7 @@ export default async function DashboardRoutesPage() { ]); return ( -
+
+
-
+
-
-
-
-

+

+
+ + clawproxy -

-

- Public webhook ingress for private agent nodes — Hermes Agent, OpenClaw, or your - own client -

-
+ + + Public webhook ingress for private agent nodes + + -
+
+
-
-
-
+
+
+

The purpose-built alternative to ngrok and Cloudflare Tunnels -

+

-

+

Webhooks for private nodes.

-

- Accept webhook traffic from the public internet, store it durably, - and deliver it to your private node instantly over WebSocket — or - via authenticated outbound pull. No public node exposure required. +

+ Accept public webhook traffic, store it durably, and deliver it to private nodes over outbound WebSocket or pull.

-
-
-
+
{proofPoints.map((item) => ( - +
{item} - +
))}
+ +

+ Works with Hermes Agent, OpenClaw, and any client that can receive events from an authenticated outbound connection. +

-
-
-
-
-
+
+
+
+
+
-

- Live flow -

-

From provider to private node

-
-
- Healthy +

route

+

/r/github-to-lab

+

+ live +

+
-
- {[ - { - title: 'GitHub / Stripe / Slack', - body: 'Webhook hits your public clawproxy route.', - }, - { - title: 'Ingress accepted', - body: 'Validated and saved safely until delivery to your node.', - }, - { - title: 'Live push or pull', - body: 'Event is pushed instantly over WebSocket, or fetched by the node on its next poll.', - }, - { - title: 'Ack complete', - body: 'Processed events are acknowledged and marked delivered.', - }, - ].map((item, index) => ( -
-
- {index + 1} -
-
-

{item.title}

-

{item.body}

-
-
- ))} +
+
+

delivery state

+

Stored until your node confirms.

+

+ Public providers get a stable endpoint. Private nodes keep control over when work is complete. +

-
-
-

Mode

-

Push + Pull

-
-
-

Storage

-

Safe until delivery

-
-
-

Ideal for

-

NAT + LAN

-
+
+ {relayEvents.map((event, index) => ( +
+

+ {String(index + 1).padStart(2, '0')} +

+

{event.label}

+
+ ))}
-
- {featureCards.map((feature) => ( -
-

{feature.title}

-

{feature.description}

+
+ {featureCards.map((feature, index) => ( +
+

{String(index + 1).padStart(2, '0')}

+

{feature.title}

+

{feature.description}

))}
-
-
-

+

+
+

Coming from ngrok or Cloudflare Tunnels? -

-

- Purpose-built for webhook delivery — not general tunneling.

-

- ngrok and Cloudflare Tunnels are excellent general-purpose tools, but clawproxy is - laser-focused on one job: durable webhook ingress and private node delivery without - keeping a tunnel daemon running. +

+ ngrok and Cloudflare Tunnels are excellent general-purpose tools, but clawproxy is focused on durable webhook ingress and private node delivery.

-
+
{comparisonPoints.map((point) => ( -
-

{point.title}

-

{point.description}

+
+

{point.title}

+

{point.description}

))}
-
-
-

- How it works -

-

+
+
+

Keep the webhook path public and the node private.

-

- clawproxy is deliberately focused: it receives inbound webhook - traffic on the public internet and hands it off to private - agent nodes through authenticated outbound requests. +

+ clawproxy receives inbound webhook traffic on the public internet and hands it to private agent nodes through authenticated outbound requests.

-
- {steps.map((step, index) => ( -
-
- 0{index + 1} -
-
-

{step.title}

-

{step.description}

-
-
+
+ {routeFlow.map((step) => ( +
+

{step.label}

+

{step.description}

+
))}
-
+
-
-
-

- Ready to route inbound events? -

-
+
+
+
-

+

Public ingress on one side. Secure outbound delivery on the other.

-

- Built for the very common reality that your software can call out, - but should not be exposed directly to the internet. +

+ Built for the common reality that your software can call out, but should not be exposed directly to the internet.

-

clawproxy.io

+

clawproxy.io

@@ -350,13 +290,10 @@ export default function Home() {
-