diff --git a/docs/docs.html b/docs/docs.html
index e927c75..b03cf32 100644
--- a/docs/docs.html
+++ b/docs/docs.html
@@ -68,6 +68,7 @@
@@ -267,6 +268,34 @@ Full Configuration Reference
host: 0.0.0.0
+
+ Use this path if you want the fastest practical production setup for one on-call team.
+
+ Step 1: Install the CLI and verify cloud/cluster access
+ Install RunbookAI, then validate AWS identity and Kubernetes connectivity. Reference: Installation, AWS integration, Kubernetes integration.
+
+
+
npm install -g @runbook-agent/runbook
+aws sts get-caller-identity
+kubectl config current-context
+
+
+ Step 2: Run setup wizard with this integration profile
+ Run the wizard and enable AWS, Kubernetes, PagerDuty, and Slack when prompted. Reference: Configuration, PagerDuty, Slack.
+
+
+ Step 3: Validate incident workflow end to end
+ Verify infra access, investigate a PagerDuty incident, and start Slack intake. Reference: runbook status, runbook investigate, runbook slack-gateway.
+
+
+
runbook status
+runbook investigate PD-12345
+runbook slack-gateway --mode socket
+
+
Your First Query
Test your installation by running a simple infrastructure query:
diff --git a/docs/index.html b/docs/index.html
index 5d2ba59..d701f30 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -53,6 +53,8 @@
+
+
+
+
+
+
+
+
Design Partner
+
Share your stack and incident pain
+
Tell us your role, infra setup, top incident pain, and how to reach you. We use this to prioritize roadmap work.
+
Open intake form
+
+
+
+
Onboarding
+
Use the AWS + Kubernetes + PagerDuty + Slack path
+
Follow an opinionated 3-step setup sequence with exact commands and links to the right docs sections.
+
Open 3-step onboarding
+
+
+
+
+
+
+
+
+
+
+
+
+
We are onboarding a small number of teams running production workloads on AWS and Kubernetes. Share a few details and we will follow up with a focused setup session.
+
If the form submit does not open your mail app, use the fallback link below.
+
+
+
+
+
+
+
Resources
diff --git a/docs/script.js b/docs/script.js
index fe7bd0a..ce01f65 100644
--- a/docs/script.js
+++ b/docs/script.js
@@ -40,6 +40,8 @@ function copyToClipboard(button) {
// ========================================
document.addEventListener('DOMContentLoaded', () => {
+ initDesignPartnerForm();
+
// Register GSAP plugins
if (typeof gsap !== 'undefined' && typeof ScrollTrigger !== 'undefined') {
gsap.registerPlugin(ScrollTrigger);
@@ -139,6 +141,44 @@ document.addEventListener('DOMContentLoaded', () => {
}
});
+function initDesignPartnerForm() {
+ const form = document.getElementById('design-partner-form');
+ if (!form) return;
+
+ const status = document.getElementById('design-partner-status');
+
+ form.addEventListener('submit', (event) => {
+ event.preventDefault();
+
+ const formData = new FormData(form);
+ const role = String(formData.get('role') || '').trim();
+ const infraStack = String(formData.get('infraStack') || '').trim();
+ const incidentPain = String(formData.get('incidentPain') || '').trim();
+ const contact = String(formData.get('contact') || '').trim();
+
+ const subjectRole = role || 'RunbookAI Design Partner';
+ const subject = `RunbookAI Design Partner: ${subjectRole}`;
+ const body = [
+ 'Design Partner Intake',
+ '',
+ `Role: ${role}`,
+ `Infra stack: ${infraStack}`,
+ `Incident pain: ${incidentPain}`,
+ `Contact: ${contact}`,
+ '',
+ 'Submitted from userunbook.ai'
+ ].join('\n');
+
+ const mailtoUrl = `mailto:design-partners@userunbook.ai?subject=${encodeURIComponent(subject)}&body=${encodeURIComponent(body)}`;
+
+ if (status) {
+ status.textContent = 'Opening your email client...';
+ }
+
+ window.location.href = mailtoUrl;
+ });
+}
+
function initAnimations() {
// Accessibility: skip all animations for reduced-motion users
const prefersReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
diff --git a/docs/styles.css b/docs/styles.css
index 29d711a..d4e3733 100644
--- a/docs/styles.css
+++ b/docs/styles.css
@@ -1028,6 +1028,136 @@ body {
color: var(--text-secondary);
}
+/* ========================================
+ CONVERSION PATHS
+ ======================================== */
+
+.pathways {
+ position: relative;
+ z-index: 1;
+ padding: var(--space-5xl) 0;
+}
+
+.pathways-grid {
+ display: grid;
+ grid-template-columns: repeat(2, 1fr);
+ gap: var(--space-lg);
+}
+
+.pathway-card {
+ background: var(--bg-card);
+ border: 1px solid var(--border);
+ border-radius: var(--radius-xl);
+ padding: var(--space-xl);
+ box-shadow: var(--shadow-sm);
+}
+
+.pathway-card h3 {
+ font-size: 22px;
+ font-weight: 700;
+ color: var(--text);
+ letter-spacing: -0.02em;
+ line-height: 1.25;
+ margin-bottom: var(--space-sm);
+}
+
+.pathway-card p {
+ color: var(--text-secondary);
+ line-height: 1.7;
+ margin-bottom: var(--space-md);
+}
+
+/* ========================================
+ DESIGN PARTNER FORM
+ ======================================== */
+
+.design-partner {
+ position: relative;
+ z-index: 1;
+ padding: var(--space-5xl) 0;
+ background: var(--bg-surface);
+ border-top: 1px solid var(--border);
+ border-bottom: 1px solid var(--border);
+}
+
+.design-partner-layout {
+ display: grid;
+ grid-template-columns: 0.9fr 1.1fr;
+ gap: var(--space-xl);
+ align-items: start;
+ background: var(--bg-card);
+ border: 1px solid var(--border);
+ border-radius: var(--radius-xl);
+ padding: var(--space-xl);
+ box-shadow: var(--shadow-sm);
+}
+
+.design-partner-copy p {
+ color: var(--text-secondary);
+ line-height: 1.7;
+ margin-bottom: var(--space-md);
+}
+
+.partner-form {
+ display: flex;
+ flex-direction: column;
+ gap: var(--space-md);
+}
+
+.partner-field {
+ display: flex;
+ flex-direction: column;
+ gap: 6px;
+ font-size: 13px;
+ font-weight: 600;
+ color: var(--text);
+}
+
+.partner-field input,
+.partner-field textarea {
+ width: 100%;
+ border: 1px solid var(--border);
+ border-radius: var(--radius-md);
+ background: var(--bg-card);
+ color: var(--text);
+ padding: 10px 12px;
+ font-family: var(--font);
+ font-size: 14px;
+ line-height: 1.5;
+ transition: border-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease);
+}
+
+.partner-field textarea {
+ resize: vertical;
+ min-height: 92px;
+}
+
+.partner-field input:focus,
+.partner-field textarea:focus {
+ outline: none;
+ border-color: var(--purple);
+ box-shadow: 0 0 0 3px rgba(124, 58, 237, 0.1);
+}
+
+.partner-field input::placeholder,
+.partner-field textarea::placeholder {
+ color: var(--text-muted);
+}
+
+.partner-actions {
+ display: flex;
+ flex-wrap: wrap;
+ gap: var(--space-sm);
+ margin-top: 4px;
+}
+
+.partner-status {
+ min-height: 20px;
+ margin-bottom: 0;
+ font-size: 12px;
+ color: var(--text-muted);
+}
+
/* ========================================
TERMINAL (shared)
======================================== */
@@ -1305,6 +1435,14 @@ body {
padding: var(--space-xl);
}
+ .pathways-grid {
+ grid-template-columns: 1fr;
+ }
+
+ .design-partner-layout {
+ grid-template-columns: 1fr;
+ }
+
.footer-content {
grid-template-columns: 1fr;
gap: var(--space-xl);
@@ -1382,6 +1520,9 @@ body {
width: 100%;
}
+ .partner-actions .btn {
+ width: 100%;
+ }
}
/* ========================================