AIGNE WebSmith is a powerful, AI-driven website generation tool built on the AIGNE Framework. It automates the creation of professional, SEO-optimized websites with complete content, templates, and direct publishing to Pages Kit.
- Intelligent Structure Planning: Automatically analyze requirements and generate optimal website architecture
- Batch Content Generation: Generate detailed content for all pages with one command
- Professional SEO Optimization: Built-in SEO best practices and optimization recommendations
- Multi-language Support: Supports Chinese and English content generation and localization
- Pages Kit Integration: Direct generation of Pages Kit-compatible YAML templates
- Component-based Design: Supports modern components like Hero, CTA, FAQ, Content Cards
- Built-in Component Library: Integrated component library with validation and management
- Responsive Layout: Automatic adaptation for mobile and desktop displays
- Visual Editing: Generated templates support visual editing and adjustments
- Structure Evaluation System: Automatic assessment of website architecture and user experience
- Content Quality Checks: Ensure accuracy and consistency of content
- Complete Test Coverage: 32+ test cases covering core functionality
- Code Quality Assurance: Code checking and formatting using Biome
- Direct Publishing: One-click publishing to Pages Kit platform
- Batch Upload: Supports batch publishing of multi-page websites
- Status Monitoring: Detailed publishing status and error reporting
- Access Links: Get accessible website links immediately after successful publishing
WebSmith is built on the AIGNE framework using an Agent-based architecture:
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β Structure β β Content β β Template β
β Planning βββββΆβ Generation βββββΆβ Generation β
β Agent β β Agent β β Agent β
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β β β
βΌ βΌ βΌ
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β Evaluation β β Batch β β Upload β
β Agent β β Processing β β Agent β
β β β Agent β β β
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
- π§ Structure Planning: Intelligently analyze requirements and generate website architecture
- π Content Generation: Batch generate high-quality page content
- π¨ Template Generation: Create Pages Kit compatible templates
- π§© Component Library: Built-in component library management and validation
- π Quality Evaluation: Evaluate website quality and user experience
- β‘ Batch Processing: Efficient batch processing system
- π Pages Kit Upload: One-click publishing to Pages Kit
# Install AIGNE CLI
npm install -g @aigne/cli
# Or install locally
npm install @aigne/cli# Generate pages
aigne web generate# Publish generated pages
aigne web publish# Translate existing pages to different language
aigne web translate
# Update existing website content
aigne web update
# Pull components
aigne web component --url "https://your-pages-kit/api/projects/your-project-id/components/pull?secret=your-secret&hash=your-hash"
Create an input file my-website.yaml:
rules: |
Create a modern SaaS product website that includes:
1. Product introduction and core features
2. Pricing plan comparison
3. Customer success stories
4. Technical documentation portal
5. Contact and support pages
Requirements:
- Professional business style
- Highlight product advantages and differentiation
- Include clear CTA to guide users to trial
targetAudience: SMB owners and technical decision makers
locale: en
websiteStyle: businessThen run:
aigne web generate --input @my-website.yamlaigne-web-smith/
βββ agents/ # Core AI agents
β βββ chat/ # Interactive chat interface
β βββ generate/ # Website generation workflows
β β βββ component-library/ # Component library management
β β βββ page-detail/ # Page content generation
β β βββ page-data/ # Page data composition
β βββ plan/ # Website structure planning
β βββ publish/ # Pages Kit publishing
β βββ translate/ # Multi-language support
β βββ update/ # Content update workflows
β βββ utils/ # Utility functions and helpers
βββ prompts/ # AI prompts and templates
β βββ chat/, generate/, plan/, translate/
βββ utils/ # Core utility functions
β βββ constants.mjs # Component definitions and constants
β βββ generate-helper.mjs # Website generation utilities
β βββ auth-utils.mjs # Authentication handling
β βββ pages-finder-utils.mjs # Page discovery and management
β βββ upload-files.mjs # File upload utilities
βββ pages-mcp/ # MCP server implementation
β βββ get-pages-structure.mjs
β βββ get-page-detail.mjs
βββ aigne.yaml # Main CLI configuration
WebSmith includes comprehensive test coverage:
# Run all tests
bun test
# Run with coverage
bun test --coverage --coverage-reporter=lcov --coverage-reporter=text
# Run with verbose output
bun test --verboseTest coverage includes:
- β Utility function tests
- β Pages Kit integration tests
- β Website structure tests
- β File system and error handling tests
- β Component library validation tests
# Install dependencies
pnpm install
# Run code quality checks
npm run lint
# Auto-fix formatting issues
npm run lint:fix
# Watch mode for tests
bun test --watch- Create Agent: Add new
.yamlagent in appropriateagents/subdirectory - Add Prompt: Create corresponding prompt in
prompts/ - Update Config: Add agent to
aigne.yaml - Write Tests: Add tests using Bun test framework
- Update Docs: Document the new functionality
- Linting: Uses Biome for code quality and formatting
- Testing: Bun test runner with comprehensive coverage
- Type Safety: JSDoc annotations for better development experience
- Git Hooks: Pre-commit hooks ensure code quality
Interactive chat interface for website generation.
Generate a complete website from user requirements.
Parameters:
rules(required): Website requirements descriptiontargetAudience: Target audience descriptionlocale: Website language (default: "zh")websiteStyle: Website style (default: "business")projectId: Pages Kit project ID for publishing
Publish generated website to Pages Kit.
Parameters:
projectId(required): Pages Kit project IDlocale: Website languagedryRun: Preview without publishingoverwrite: Overwrite existing pages
Translate existing website content to different languages.
Update existing website content with new requirements.
WebSmith provides MCP server endpoints for integration:
get-pages-structure: Retrieve current website structureget-page-detail: Get detailed content for specific pagepages-search: Search within website content
Start MCP server:
aigne web serve-mcpWebSmith is optimized for production use:
- Fast Generation: Parallel agent processing
- Efficient Templates: Optimized Pages Kit integration
- Memory Management: Streaming content processing
- Error Recovery: Robust error handling and recovery
Typical performance metrics:
- 5-page website: ~2-3 minutes
- 15-page website: ~5-8 minutes
- Template generation: ~10-20 seconds per page
We welcome contributions! Please see our Contributing Guidelines for details.
- Fork the repository
- Create a feature branch
- Make your changes with tests
- Run quality checks:
npm run lint - Submit a pull request
This project is licensed under the Elastic License 2.0 - see the LICENSE file for details.
- π¨ WebSmith Logo
- π WebSmith Official Website
- π AIGNE Framework
- π― Pages Kit
- π» GitHub Repo
- π Report Issues
Built with β€οΈ using the AIGNE Framework