@timedrasil/ylem
v0.1.0
Published
Ylem - Microkernel Agent Cognitive OS Engine
Readme
🚀 Ylem
Ylem — A Microkernel Agent Cognitive OS Engine built with TypeScript.
Ylem is a highly extensible, decoupled Agent cognitive base and control plane engine. Built on a Microkernel architecture, Ylem completely decouples core workflow orchestration from specific LLM drivers, toolsets, and third-party libraries.
✨ Features
- 🧠 Microkernel Architecture:
core/manages the Agent lifecycle, plugin dispatching, and context flow with zero hard dependencies on third-party AI libraries. - 🔌 Plugin-Driven Ecosystem: All LLM adapters (e.g., OpenAI/Vercel AI SDK), toolsets (e.g., GitLab Tooling), and data-plane interactions are injected as plugins.
- 🛡️ Strict Encapsulation: Third-party SDKs are abstracted and encapsulated to prevent dependency breakage across the system.
- 📦 Cross-Platform Bundling: Built with
tsupto output ESM, CommonJS, and UMD (IIFE) artifacts, supporting Node.js, Web browsers, and mobile containers. - 🧪 In-Repo Playground: Includes a lightweight Vue 3 testing environment that directly loads
dist/artifacts for end-to-end verification. - ⚡ Fast Unit Testing: Integrated with
Vitestfor automated testing of lifecycle hooks and core logic with mock support.
🏗️ Architecture
┌─────────────────────────────────────────────────────────────┐
│ Application Layer (Web / Mobile / App) │
└──────────────────────────────┬──────────────────────────────┘
│
┌──────────────────────────────▼──────────────────────────────┐
│ Ylem Core Kernel (core/) │
│ ┌──────────────┐ ┌──────────────────┐ ┌───────────┐ │
│ │ YlemAgent │ │ Lifecycle Hooks │ │ EventBus │ │
│ └──────────────┘ └──────────────────┘ └───────────┘ │
└──────────────────────────────▲──────────────────────────────┘
│ (YlemPlugin Interface)
┌──────────────────────────────┴──────────────────────────────┐
│ Plugins System (plugins/) │
│ ┌────────────────┐ ┌────────────────┐ ┌───────────────┐ │
│ │ llm-openai │ │ memory-remote │ │ tool-gitlab │ │
│ └────────────────┘ └────────────────┘ └───────────────┘ │
└─────────────────────────────────────────────────────────────┘📂 Project Structure
For detailed directory breakdowns, module descriptions, and update history, please refer to CATALOG.md.
📦 Quick Start
1. Install Dependencies
pnpm install2. Build the Project
Build output artifacts to the dist/ directory:
pnpm run build3. Run Unit Tests
pnpm run test4. Start Local Playground
pnpm run playground💻 Usage Example
import { YlemAgent, OpenAIPlugin } from 'ylem';
async function main() {
// 1. Initialize Ylem Microkernel
const agent = new YlemAgent();
// 2. Inject third-party plugins
agent.use(new OpenAIPlugin({
apiKey: process.env.OPENAI_API_KEY
}));
// 3. Run Agent execution loop
const response = await agent.run('Analyze current project architecture', 'user_001');
console.log(response);
}
main();🔗 Links
- Repository: https://github.com/TIMEdrasil/Ylem
- Catalog & Updates: CATALOG.md
- License: MIT License
📜 License
Released under the MIT License.
