mirror of
https://github.com/hanzo-apps/hanzo.ai.git
synced 2026-10-30 14:58:08 +00:00
- Cut root homepage description by 1/3 (170 -> 114 chars) for SERP mobile/desktop truncation threshold - Updated apex gate test in e2e/gates/apex.spec.ts to match the optimized homepage description - Shortened and enriched 70+ page and layout descriptions to the optimal 110-145 character sweet spot - Front-loaded high-intent keywords across agents, foundation models, MCP, benchmarks, and sovereign cloud - Ensured unique titles for all model variant routes to satisfy title uniqueness gates Co-authored-by: Hanzo Dev <[email protected]>
51 lines
1.7 KiB
TypeScript
51 lines
1.7 KiB
TypeScript
import type { Metadata } from 'next'
|
||
import GenLanding from '@/components/gen/GenLanding'
|
||
import { ProductJsonLd } from '@/components/product/ProductJsonLd'
|
||
import { at } from '@/lib/product'
|
||
|
||
// Hanzo Gen, the agentic harness. At the app ROOT beside /dev, /kai and /enso,
|
||
// so only the root layout wraps it and it ships the shared site chrome itself.
|
||
|
||
const TITLE = 'Hanzo Gen — any coding agent, on Hanzo’s rails'
|
||
const DESCRIPTION =
|
||
'Run your favorite coding agents — Claude Code, Cursor, Codex — with Hanzo tools and models attached. Open source, install in one command.'
|
||
|
||
export const metadata: Metadata = {
|
||
title: TITLE,
|
||
description: DESCRIPTION,
|
||
alternates: { canonical: 'https://hanzo.ai/gen' },
|
||
openGraph: {
|
||
title: TITLE,
|
||
description: DESCRIPTION,
|
||
url: 'https://hanzo.ai/gen',
|
||
siteName: 'Hanzo',
|
||
type: 'website',
|
||
},
|
||
twitter: { card: 'summary_large_image', title: TITLE, description: DESCRIPTION },
|
||
}
|
||
|
||
export default function GenRoutePage() {
|
||
const product = at('/gen')
|
||
return (
|
||
<>
|
||
{/* Gen is outside the ProductLanding kit, so it declares itself here.
|
||
Each feature is a clause of the page's own sentence. */}
|
||
{product && (
|
||
<ProductJsonLd
|
||
product={product}
|
||
path="/gen"
|
||
description={DESCRIPTION}
|
||
features={[
|
||
'Runs Claude Code, Codex, Cursor and more',
|
||
'The Hanzo MCP toolset attached',
|
||
'Model calls on Hanzo’s metered models, or the agent’s own account',
|
||
'Sessions linked to your Hanzo account',
|
||
'Installs with curl -fsSL https://hanzo.sh | sh -s gen',
|
||
]}
|
||
/>
|
||
)}
|
||
<GenLanding />
|
||
</>
|
||
)
|
||
}
|