OpenKB is a modern, premium interface for designing, configuring, and deploying intelligent AI Agents. Built with a focus on aesthetics and usability, it features a "Glassmorphic" design system and a powerful node-based workflow editor.
- Visual Workflow Editor: Drag-and-drop interface to design agent logic (Triggers -> Brain -> Actions).
- Custom Personas: detailed configuration for Agent Role, Description, and System Instructions.
- Multi-Model Support: Switch between advanced LLMs (Gemini, GPT-4o) per agent.
- Tool Integration: Seamlessly connect to Google Drive, Email, and Document Writers.
- Unified Glass System: A consistent, high-end "Glassmorphism" aesthetic across the entire app.
- Fluid Interactions: Micro-interactions, hover states, and smooth transitions.
- Adaptive Layouts: Responsive Grid and List views for managing large libraries of agents.
- Direct Chat: Integrated chat interface with rich message bubbling and streaming responses.
- Asset Library: Centralized table view for uploaded documents and text assets.
- Smart Indexing: (Planned) Automatic vectorization of knowledge assets for Agent context.
OpenKB is built as a Single Page Application (SPA) using modern web technologies.
- Frontend Framework: React 18
- Language: TypeScript (Strict Mode)
- Build Tool: Vite
- Styling:
- Tailwind CSS for utility-first styling.
- Custom
Glassutility classes for backdrop-blur and transparency. - Lucide React for consistent iconography.
- Routing: React Router DOM
- State Management: React Context API (Provider Pattern)
� openkb
├── 📂 src
│ ├── 📂 components # Shared UI atomic components (Button, Card, Modal)
│ ├── 📂 features # Feature-specific logic (Agents, Chat, Knowledge)
│ │ └── 📂 agents # Agent Workflow Editor & Graph Logic
│ ├── 📂 pages # Route-level Page views (AgentsPage, SettingsPage)
│ ├── � hooks # Custom React hooks (useTheme, useAgent)
│ ├── 📂 types # Shared TypeScript interfaces
│ └── 📂 utils # Helper functions
- Nodes & Edges: The workflow editor uses a custom graph implementation where
Nodes(Triggers, Brains, Tools) are connected byEdges. State is managed via theAgentWorkflowEditorcomponent. - Glass Theme: The application uses a global background wrapper with localized
backdrop-bluroverlays to create depth hierarchy (Background -> Card -> Floating Panel).
- Node.js (v18 or higher)
- npm or yarn
-
Clone the repository
git clone https://github.com/stephenkyaw/OpenKB.git cd OpenKB -
Install dependencies
npm install
-
Configure Environment Create a
.env.localfile in the root directory:VITE_GEMINI_API_KEY=your_api_key_here
-
Run Locally Start the development server:
npm run dev
Contributions are welcome! Please fork the repository and submit a pull request for any enhancements.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License.