Welcome to Kunkun
An open source, extensible, cross-platform app launcher
Kunkun is an open source, extensible, cross-platform app launcher. It's an alternative to Alfred and Raycast, designed with security and developer experience in mind.
Why Kunkun?
- Cross-Platform - Supports macOS, Windows, and Linux. Extensions are designed to be write-once, run-anywhere.
- Extensible - Create custom extensions using JavaScript/TypeScript. Install extensions from the built-in store or any npm package.
- Secure by Default - Extensions run in sandboxed environments with a permission system. Only declared permissions are granted.
- AI-Native - Built-in AI agent that can use your installed extensions as tools. The agent gets smarter as you install more extensions.
- Open Source - Fully open source. Examine the code, contribute, or fork it.
Extension Types
Kunkun supports multiple plugin architectures for different use cases:
| Type | Runtime | UI | Use Case |
|---|---|---|---|
| Custom-View | BrowserWindow | Full control | Complex SPAs, dashboards |
| Worker-View | Web Worker | React via Uniview | Raycast-style extensions |
| Node-View | Node.js process | React via Uniview | Extensions needing filesystem access |
| Worker-Headless | Web Worker | None | Background commands in browser |
| Node-Headless | Node.js process | None | Background commands with system access |
| Service | Node.js process | None | Exposed APIs for other extensions/AI |
Architecture
Kunkun uses a core/shell separation architecture:
┌──────────────────────────────────────────────────────────────────┐
│ @kunkunsh/api (TypeScript) │
│ │
│ ┌────────────────┐ ┌─────────────────┐ ┌──────────────────┐ │
│ │ Plugin │ │ AI Provider │ │ Agent Runtime │ │
│ │ Registry │ │ Manager │ │ (Agent Loop) │ │
│ └────────────────┘ └─────────────────┘ └──────────────────┘ │
│ ┌────────────────┐ ┌─────────────────┐ ┌──────────────────┐ │
│ │ Tool │ │ Permission │ │ Memory & │ │
│ │ Orchestrator │ │ System │ │ Context │ │
│ └────────────────┘ └─────────────────┘ └──────────────────┘ │
└──────────────────────────────────────────────────────────────────┘Key Features
Permission System
Extensions declare required permissions in their manifest. Users review and approve permissions at install time. Sensitive operations require runtime permission prompts.
AI Integration
Every extension that exposes typed services becomes a tool the AI agent can call. Install an image processor extension — the AI can now compress images. Install a GitHub extension — the AI can create issues.
BYOK (Bring Your Own Key)
Kunkun doesn't bundle AI. Users bring their own API keys for any provider: OpenAI, Anthropic, Google, local Ollama instances, or any OpenAI-compatible endpoint.
Getting Started
Ready to build your first extension? Check out the guides:
- Custom UI Extension - Build extensions with full UI control
- Worker Extension - Build Raycast-style extensions
- Headless Commands - Build background commands
- Services - Expose APIs for other extensions and AI