Skip to content

Commit 31cc44f

Browse files
feat: Add canonical feature list for consistency across pages
- Create website/lib/features.ts as single source of truth - Define FEATURE_COUNTS, FEATURES with benefit/technical/pricing descriptions - Update pricing page to use getPricingSummary() - Update homepage to derive features from canonical list - Ensures consistent naming and counts across all pages Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1 parent 9854585 commit 31cc44f

3 files changed

Lines changed: 178 additions & 50 deletions

File tree

website/app/page.tsx

Lines changed: 34 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -3,58 +3,43 @@ import Navigation from '@/components/Navigation';
33
import Footer from '@/components/Footer';
44
import GitHubStarsBadge from '@/components/GitHubStarsBadge';
55
import TestsBadge from '@/components/TestsBadge';
6+
import { FEATURES, FEATURE_COUNTS } from '@/lib/features';
67

7-
const features = [
8-
{
9-
icon: '🎯',
10-
title: 'Socratic Agent Builder',
11-
description: 'Create custom agents and agent teams through guided questions. The framework asks what you need, suggests capabilities, and generates production-ready agents—no boilerplate required.',
12-
link: '/framework-docs/',
13-
},
14-
{
15-
icon: '⚡',
16-
title: '14 Integrated Workflows',
17-
description: 'Research, code review, debugging, refactoring, test generation, documentation, security scanning, performance optimization, and 4 meta-workflows for release prep, test coverage, and docs.',
18-
link: '/workflows',
19-
},
20-
{
21-
icon: '🤖',
22-
title: '7 Agent Templates + 6 Patterns',
23-
description: 'Pre-built agents for test coverage, security, code quality, docs, performance, architecture, and refactoring. Compose them with Sequential, Parallel, Debate, Teaching, Refinement, or Adaptive patterns.',
24-
link: '/framework-docs/',
25-
},
26-
{
27-
icon: '🎛️',
28-
title: 'VSCode Dashboard',
29-
description: 'Real-time health scores, cost tracking, workflow monitoring, and quick actions. See your AI collaboration at a glance.',
30-
link: '/framework-docs/',
31-
},
32-
{
33-
icon: '🧠',
34-
title: 'Persistent Memory System',
35-
description: 'Short-term Redis memory for agent coordination during workflows. Long-term MemDocs storage remembers your coding patterns, past decisions, and project context across sessions.',
36-
link: '/framework-docs/',
37-
},
38-
{
39-
icon: '🔌',
40-
title: 'Multi-Provider Support',
41-
description: 'Core workflows work with Anthropic, OpenAI, Gemini, and Ollama. Agent/team creation requires Claude Code.',
42-
link: '/framework-docs/',
43-
},
44-
{
45-
icon: '🔒',
46-
title: 'Enterprise Security',
47-
description: 'Built-in PII scrubbing, secrets detection, and audit logging. SOC2 and HIPAA-ready.',
48-
link: '/framework-docs/',
49-
},
50-
{
51-
icon: '🧙',
52-
title: '10 Smart Wizards',
53-
description: 'Security audit, code review, bug prediction, performance analysis, refactoring, test generation, documentation, dependency checks, release prep, and research.',
54-
link: '/wizards',
55-
},
8+
// Map canonical features to homepage display with links
9+
const featureLinks: Record<string, string> = {
10+
'socratic-builder': '/framework-docs/',
11+
'workflows': '/workflows',
12+
'agent-templates': '/framework-docs/',
13+
'wizards': '/wizards',
14+
'model-routing': '/framework-docs/',
15+
'memory': '/framework-docs/',
16+
'dashboard': '/framework-docs/',
17+
'multi-provider': '/framework-docs/',
18+
'security': '/framework-docs/',
19+
};
20+
21+
// Select and order features for homepage
22+
const homepageFeatureIds = [
23+
'socratic-builder',
24+
'workflows',
25+
'agent-templates',
26+
'dashboard',
27+
'memory',
28+
'multi-provider',
29+
'security',
30+
'wizards',
5631
];
5732

33+
const features = homepageFeatureIds
34+
.map(id => FEATURES.find(f => f.id === id)!)
35+
.filter(Boolean)
36+
.map(f => ({
37+
icon: f.icon,
38+
title: f.name,
39+
description: f.benefitDescription,
40+
link: featureLinks[f.id] || '/framework-docs/',
41+
}));
42+
5843
const codeExample = `from empathy_os.orchestration import MetaOrchestrator
5944
6045
# Let the framework compose the right agent team automatically

website/app/pricing/page.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import Navigation from '@/components/Navigation';
55
import Footer from '@/components/Footer';
66
import { generateMetadata } from '@/lib/metadata';
77
import CheckoutButton from '@/components/CheckoutButton';
8+
import { getPricingSummary } from '@/lib/features';
89

910
// Price ID from Stripe Dashboard - hardcoded fallback for build-time reliability
1011
const LICENSE_PRICE_ID = process.env.NEXT_PUBLIC_STRIPE_PRICE_LICENSE || 'price_1SbfCjAbABKRT84gSh7BoLAl';
@@ -76,7 +77,7 @@ export default function PricingPage() {
7677
</div>
7778
<div className="flex items-start gap-2">
7879
<span className="text-[var(--success)] mt-1"></span>
79-
<span className="text-sm">10 smart wizards + 14 workflows</span>
80+
<span className="text-sm">{getPricingSummary()}</span>
8081
</div>
8182
<div className="flex items-start gap-2">
8283
<span className="text-[var(--success)] mt-1"></span>

website/lib/features.ts

Lines changed: 142 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,142 @@
1+
/**
2+
* Canonical Feature List - Single Source of Truth
3+
*
4+
* All pages should import from here to ensure consistency.
5+
* Update counts and descriptions here when features change.
6+
*/
7+
8+
export const FEATURE_COUNTS = {
9+
wizards: 10,
10+
workflows: 14,
11+
agentTemplates: 7,
12+
compositionPatterns: 6,
13+
} as const;
14+
15+
export const COMPOSITION_PATTERNS = [
16+
'Sequential',
17+
'Parallel',
18+
'Debate',
19+
'Teaching',
20+
'Refinement',
21+
'Adaptive',
22+
] as const;
23+
24+
export const AGENT_TEMPLATES = [
25+
'Test Coverage',
26+
'Security',
27+
'Code Quality',
28+
'Documentation',
29+
'Performance',
30+
'Architecture',
31+
'Refactoring',
32+
] as const;
33+
34+
export interface Feature {
35+
id: string;
36+
name: string;
37+
icon: string;
38+
benefitDescription: string; // For homepage (what you get)
39+
technicalDescription: string; // For framework page (how it works)
40+
pricingDescription: string; // For pricing page (what's included)
41+
isNew?: boolean;
42+
version?: string;
43+
}
44+
45+
export const FEATURES: Feature[] = [
46+
{
47+
id: 'socratic-builder',
48+
name: 'Socratic Agent Builder',
49+
icon: '🎯',
50+
benefitDescription: 'Create custom agents through guided questions. Describe what you need, get production-ready agents.',
51+
technicalDescription: 'SocraticWorkflowBuilder guides you through clarifying questions to generate optimized agent configurations.',
52+
pricingDescription: 'Custom agent creation',
53+
isNew: true,
54+
},
55+
{
56+
id: 'workflows',
57+
name: '14 Integrated Workflows',
58+
icon: '⚡',
59+
benefitDescription: 'Research, code review, debugging, refactoring, test generation, documentation, security scanning, and more.',
60+
technicalDescription: '10 base workflows + 4 meta-workflows for release prep, test coverage, test maintenance, and documentation.',
61+
pricingDescription: '14 integrated workflows',
62+
},
63+
{
64+
id: 'agent-templates',
65+
name: '7 Agent Templates + 6 Patterns',
66+
icon: '🤖',
67+
benefitDescription: 'Pre-built agents you can compose with Sequential, Parallel, Debate, Teaching, Refinement, or Adaptive patterns.',
68+
technicalDescription: 'Agents for test coverage, security, code quality, docs, performance, architecture, and refactoring. 6 composition strategies.',
69+
pricingDescription: '7 agent templates, 6 composition patterns',
70+
},
71+
{
72+
id: 'wizards',
73+
name: '10 Smart Wizards',
74+
icon: '🧙',
75+
benefitDescription: 'Security audit, code review, bug prediction, performance analysis, and more—domain-specific AI assistance.',
76+
technicalDescription: 'WizardRegistry with 10+ wizards including security, refactoring, test generation, documentation, and research.',
77+
pricingDescription: '10 smart wizards',
78+
},
79+
{
80+
id: 'model-routing',
81+
name: 'Smart Model Routing',
82+
icon: '💰',
83+
benefitDescription: '80-96% cost reduction. The right model for each task automatically.',
84+
technicalDescription: 'Intelligent routing: Haiku for simple tasks, Sonnet for code, Opus for architecture decisions.',
85+
pricingDescription: 'Cost-optimized model routing',
86+
},
87+
{
88+
id: 'memory',
89+
name: 'Persistent Memory System',
90+
icon: '🧠',
91+
benefitDescription: 'Your AI remembers context across sessions—coding patterns, decisions, project history.',
92+
technicalDescription: 'Short-term Redis memory for agent coordination. Long-term MemDocs storage for cross-session persistence.',
93+
pricingDescription: 'Persistent memory system',
94+
},
95+
{
96+
id: 'dashboard',
97+
name: 'VSCode Dashboard',
98+
icon: '🎛️',
99+
benefitDescription: 'Real-time health scores, cost tracking, and workflow monitoring at a glance.',
100+
technicalDescription: 'Integrated VSCode extension with health metrics, cost analytics, and quick actions.',
101+
pricingDescription: 'VSCode dashboard',
102+
},
103+
{
104+
id: 'multi-provider',
105+
name: 'Multi-Provider Support',
106+
icon: '🔌',
107+
benefitDescription: 'Works with Anthropic, OpenAI, Gemini, and Ollama. Use your preferred provider.',
108+
technicalDescription: 'Core workflows support multiple LLM providers. Agent/team creation optimized for Claude Code.',
109+
pricingDescription: 'Multi-LLM support',
110+
},
111+
{
112+
id: 'security',
113+
name: 'Enterprise Security',
114+
icon: '🔒',
115+
benefitDescription: 'Built-in PII scrubbing, secrets detection, and audit logging.',
116+
technicalDescription: 'Security scanner, PII detection, audit trails. SOC2 and HIPAA-ready controls.',
117+
pricingDescription: 'Enterprise security features',
118+
},
119+
{
120+
id: 'meta-orchestration',
121+
name: 'Meta-Orchestration',
122+
icon: '🧭',
123+
benefitDescription: 'Agents compose themselves. Describe a goal, get an optimized multi-agent team.',
124+
technicalDescription: 'MetaOrchestrator analyzes tasks and automatically selects composition patterns and agent configurations.',
125+
pricingDescription: 'Auto-composing agent teams',
126+
version: 'v4.4.0',
127+
},
128+
];
129+
130+
// Helper to get summary for pricing
131+
export function getPricingSummary(): string {
132+
return `${FEATURE_COUNTS.wizards} smart wizards + ${FEATURE_COUNTS.workflows} workflows`;
133+
}
134+
135+
// Helper to get features for homepage (benefit-focused)
136+
export function getHomepageFeatures(): Array<{ icon: string; title: string; description: string }> {
137+
return FEATURES.slice(0, 8).map(f => ({
138+
icon: f.icon,
139+
title: f.name,
140+
description: f.benefitDescription,
141+
}));
142+
}

0 commit comments

Comments
 (0)