{"id":51839832,"url":"https://github.com/khuepm/lumibase","last_synced_at":"2026-07-23T03:00:53.827Z","repository":{"id":357847021,"uuid":"1238020720","full_name":"khuepm/LumiBase","owner":"khuepm","description":"Headless CMS - Built for Agents. Governed by Humans.","archived":false,"fork":false,"pushed_at":"2026-07-18T01:33:41.000Z","size":11153,"stargazers_count":1,"open_issues_count":11,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-07-18T03:10:46.373Z","etag":null,"topics":["ai-agents","ai-native","cloudflare","cloudflare-workers","content-management","docker","edge-computing","harness-engineering","headless-cms","multi-tenant","ochestration"],"latest_commit_sha":null,"homepage":"https://lumibase.dev","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/khuepm.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null},"funding":{"github":"khuepm","patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"lfx_crowdfunding":null,"polar":null,"buy_me_a_coffee":"khuepm","thanks_dev":null,"custom":null}},"created_at":"2026-05-13T18:28:31.000Z","updated_at":"2026-07-17T03:45:54.000Z","dependencies_parsed_at":"2026-06-09T09:04:30.860Z","dependency_job_id":null,"html_url":"https://github.com/khuepm/LumiBase","commit_stats":null,"previous_names":["khuepm/lumibase"],"tags_count":32,"template":false,"template_full_name":null,"purl":"pkg:github/khuepm/LumiBase","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khuepm%2FLumiBase","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khuepm%2FLumiBase/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khuepm%2FLumiBase/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khuepm%2FLumiBase/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/khuepm","download_url":"https://codeload.github.com/khuepm/LumiBase/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khuepm%2FLumiBase/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35785916,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-23T02:00:06.683Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-agents","ai-native","cloudflare","cloudflare-workers","content-management","docker","edge-computing","harness-engineering","headless-cms","multi-tenant","ochestration"],"created_at":"2026-07-23T03:00:26.382Z","updated_at":"2026-07-23T03:00:53.818Z","avatar_url":"https://github.com/khuepm.png","language":"TypeScript","funding_links":["https://github.com/sponsors/khuepm","https://buymeacoffee.com/khuepm"],"categories":[],"sub_categories":[],"readme":"# LumiBase\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg width=\"1024\" height=\"434\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/a11def9c-f238-4a6d-9816-7f7c4f718ea9\" /\u003e\n\n  **⚡ The Content Operating System — Edge-Native, AI-Native, Agent-Operated**\n\n[![GitHub Stars](https://img.shields.io/github/stars/khuepm/lumibase?style=social)](https://github.com/khuepm/lumibase)\n\u003c!-- [![GitHub Sponsors](https://img.shields.io/github/sponsors/khuepm)](https://github.com/sponsors/khuepm) --\u003e\n[![License: Apache 2.0](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://github.com/khuepm/lumibase/blob/main/LICENSE)\n\n[Documentation](https://docs.lumibase.dev) • [Agent Setup](https://docs.lumibase.dev/en/agent-setup/) • [Community](https://github.com/khuepm/lumibase/discussions)\n\n\u003c/div\u003e\n\n---\n\n## 🤖 AI Agent Setup\n\nLumiBase is built to work natively with AI coding agents. Get your agent up to speed instantly:\n\n```bash\n# For any AI agent — paste this into your first message:\nRead https://docs.lumibase.dev/en/agent-setup/prompt.md and follow the setup instructions.\n```\n\n| Agent | Config file | Guide |\n|-------|------------|-------|\n| Claude Code | `CLAUDE.md` (this repo) | [claude-code.md](./docs/en/agent-setup/claude-code.md) |\n| Cursor | `.cursorrules` (this repo) | [cursor.md](./docs/en/agent-setup/cursor.md) |\n| GitHub Copilot | `.github/copilot-instructions.md` | [github-copilot.md](./docs/en/agent-setup/github-copilot.md) |\n| OpenAI Codex | `AGENTS.md` (this repo) | [codex.md](./docs/en/agent-setup/codex.md) |\n| Windsurf | See guide | [windsurf.md](./docs/en/agent-setup/windsurf.md) |\n\n**LLM-friendly docs index:** [`docs/llms.txt`](./docs/llms.txt)\n\n---\n\n## 🎯 What is LumiBase?\n\n**LumiBase is a Content Operating System (Content OS)** — a runtime where AI agents *operate* content while humans set intent, taste, and accountability. A traditional CMS is a tool humans use to manipulate content. LumiBase inverts that: you declare the *desired state* of your content, and a control loop of governed agents converges toward it — continuously, with full provenance and human-held veto.\n\nBuilt Edge-native on Cloudflare Workers for high-performance multi-website delivery, LumiBase pairs that delivery layer with an Agent Harness and an earned-autonomy trust model so automation is something agents *earn*, not something granted. Read the full thesis in [`docs/en/ai-native-vision.md`](./docs/en/ai-native-vision.md).\n\n\u003e **CMS → Content OS:** the unit of work shifts from *operations* (create item, edit field, publish) to *intent* (a declarative goal + constraints + budget); the operator shifts from editor-in-the-UI to *agent-in-a-harness with a human reviewing exceptions*; and content state shifts from *static* (correct at last edit) to *live* (continuously reconciled toward its SLO).\n\n### ✨ Key Features\n\n- **Intent-driven operation:** declare content SLOs (e.g. \"every published `product` has ≥1 image, a 50–200 word description, and `vi`+`en` translations\"); agents converge content toward them\n- **Reconciliation control loop:** continuous drift detection + a reconciler that raises goals on drift and fixes them within a write budget\n- **Earned-autonomy trust ledger (L0–L4):** per (site, agent, capability) autonomy from Shadow → Propose → Co-sign → **Veto-window** → Autopilot, with data-driven promotion, auto-demotion on incidents, and a four-scope kill switch\n- **Tenant Constitution:** versioned, hashed publish-gate evaluators (rule DSL + LLM-judge); artifacts that fail the constitution never publish, at any autonomy level\n- **Provenance-first revisions:** every revision records the agent/run/model, references, constitution hash, evaluation, and approver — exposed on the Delivery API via `?provenance=true`\n- **Multi-agent newsroom:** a role library with planner delegation, narrow per-role capability grants, and agent-as-reviewer gated approvals with a self-review ban\n- **Studio Mission Control:** exception inbox, trust ledger, kill-switch UI, and per-field pin badges\n- **Edge-first + true multi-tenancy:** Cloudflare Workers delivery, hard `site_id` isolation, page-hydration API, per-field AES-GCM encryption, and type-safe SDKs\n\n## Folder Structure (Turborepo)\n\n```text\nlumibase/\n├── apps/\n│   ├── cms/                # Hono.js backend (Cloudflare Workers)\n│   ├── studio/             # No-code admin SPA (React + Vite)\n│   ├── docs/               # Vite docs viewer (Cloudflare Pages)\n│   ├── landing/            # Next.js marketing site\n│   ├── marketplace/        # Next.js marketplace site\n│   └── consumer/           # Next.js delivery API demo\n├── packages/\n│   ├── database/           # Drizzle ORM schema + migrations\n│   ├── shared/             # Types, zod schemas, policy DSL, field DSL\n│   ├── sdk/                # JS SDK (REST + WS) + typegen core\n│   ├── ui/                 # Shared shadcn components + CVA tokens\n│   └── extension-sdk/      # Types/helpers for building extensions\n├── docs/                   # Architecture + feature specs + roadmap\n├── architecture.md         # Root summary (update on structural changes)\n├── .cursorrules            # AI agent instructions\n└── package.json\n```\n\n## Quick start\n\n```bash\npnpm install\npnpm --filter @lumibase/cms dev      # Hono API on :1989\npnpm --filter @lumibase/studio dev   # Studio SPA on :2026 (proxies /api → :1989)\n```\n\nThe Studio placeholder dashboard pings `/api/v1/utils/health` to verify the wire-up. Full documentation lives in [`docs/`](./docs/en/README.md); the task roadmap is in [`docs/en/roadmap/tasks.md`](./docs/en/roadmap/tasks.md). For production release operations, see the upgrade runbooks in [English](./docs/en/operations/upgrades.md) and [Vietnamese](./docs/vi/operations/upgrades.md).\n\n## Release policy\n\nEvery release must pass a green GitHub Actions CI run before it can be published or deployed. The required CI gate runs on every pull request and every push to `main`, and includes dependency installation with the locked pnpm version, version policy validation, typechecking, tests, lint for the current stable allowlist, and the production build.\n\nCurrent release: `v0.24.1` (`2026-07-21`) — **Shell version alignment**. Brings the Tauri desktop/mobile app (`@lumibase/shell`) `src-tauri` version metadata (`tauri.conf.json`, `Cargo.toml`, `Cargo.lock`) in lockstep with the monorepo release, so the desktop auto-updater compares against the correct version (PR #287). Built on **`v0.24.0`** (`2026-07-21`) — **Unified Tauri 2 desktop + mobile app**. A native shell (`@lumibase/shell`) wraps the Studio SPA for desktop (signed auto-update) and mobile (Android/iOS) with hybrid bundled/remote asset delivery (PR #171); adds NVIDIA + Vertex AI LLM providers and read-only MCP insights tools (PR #273, #274), plus GraphQL query cost limits, setup-complete rate braking, and prototype-pollution hardening (PR #278, #280, #276). Built on **`v0.23.0`** (`2026-07-14`) — **Git integration, Change Feed schema capture, and relicense to Apache 2.0**. Adds per-site GitHub/GitLab repository connections with PR/CI tracking, GitOps reconcile, and opt-in preview environments (migration `0009`, PR #172); Change Feed now captures schema (DDL) changes and supports long-polling, plus a documented OpenAPI/SDK surface (migration `0008`, PR #252); visitor/pageview counting and extension signing land as first-party modules (migrations `0010`/`0011`, PR #261); and the project license changes from MIT to Apache License 2.0, effective this release — `v0.22.0` remains the final MIT-licensed release. It builds on **`v0.22.0`** (`2026-07-12`, CDC Change Feed end to end \u0026 realtime hardening — outbox capture, pull API, dispatcher, extension integration, retention, Studio surface, skills/MCP, migration `0007`), **`v0.21.0`** (`2026-07-08`, self-service auth realms \u0026 Cloudflare Pages pipeline repair — subscriber registration, rotating refresh tokens, per-realm session TTLs, migrations `0005`/`0006`), **`v0.20.0`** (backend + SDK gap-closing across 7 specs \u0026 high-load/cache readiness), **`v0.19.0`** (CWE Top 100 closeout, Visual Flow Builder triggers \u0026 marketplace community features), **`v0.18.0`** (custom domains \u0026 translation memory), **`v0.17.0`** (`lumibase_` table namespace \u0026 Content Releases), **`v0.16.0`** (code-first configuration \u0026 auto-deploy from Flows), **`v0.15.0`** (realtime audience plane \u0026 cosmic design system), **`v0.14.0`** (push notifications \u0026 MCP path-traversal hardening), **`v0.13.0`** (deployment integrations \u0026 cross-collection search), **`v0.12.0`** (privacy \u0026 compliance suite, Directus-style interfaces \u0026 tenant isolation hardening), **`v0.11.0`** (Insights, content versioning \u0026 tenant-scoped search), **`v0.10.0`** (MCP everywhere), **`v0.9.0`** (regulated/sensitive content readiness), and the **`v0.5.0` Content OS foundation** — which remain the baseline this release builds upon, not replaces.\n\n```bash\nLUMIBASE_VERSION=0.24.1 docker compose -f docker/docker-compose.yml -f docker/docker-compose.prod.yml up -d\n```\n\nSee [`CHANGELOG.md`](./CHANGELOG.md) for upgrade steps, rollback notes, compatibility details, and backup guidance.\n\n### Versioning\n\nFrom `v1.0.0`, LumiBase follows strict [Semantic Versioning](https://semver.org/): breaking changes to the public surface (REST/GraphQL API, `@lumibase/sdk` exports, response envelopes, header and env-var contracts, CLI/setup flags) require a major bump; features are additive in minors; deprecations run for at least one minor before removal. Security fixes cover the current and previous major for 6 months. Full rules: [`docs/en/contributing/versioning-policy.md`](./docs/en/contributing/versioning-policy.md). To report a vulnerability, see [`SECURITY.md`](./SECURITY.md).\n\n### Why port 1989?\n\nLumiBase uses `1989` as its default CMS API port as a small tribute to the Web's origin story: in March 1989, Tim Berners-Lee wrote the proposal that became the World Wide Web. The same year also evokes walls coming down, which fits a headless CMS built to separate backend content infrastructure from frontend presentation.\n\n---\n\n\u003c!--\n## 🎁 Sponsorship Benefits\n\nSupport LumiBase development and get **exclusive AI Skills documentation** to accelerate your application development and marketing success!\n\n### 🚀 Hobby Tier - $29/month\n\n**Perfect for developers who want to build production-ready applications faster.**\n\n**📚 Exclusive AI Skills Documentation:**\n- **Database \u0026 Migration Architect**: Master schema design with NanoID/UUIDv7, multi-tenancy patterns, and GitOps configuration management\n- **Edge \u0026 Caching Specialist**: Learn Cloudflare optimization, cache tagging strategies, and file security best practices\n- **Unified Data Hydration Logic**: Build single-roundtrip APIs that deliver complete page data for optimal SEO\n- **UI/UX Component Bridge**: Master TailwindCSS integration with CVA patterns and dynamic content rendering\n\n**🎯 Practical Marketing Strategies:**\n- **Product Launch Playbooks**: Step-by-step guides for launching developer tools and SaaS products\n- **Community Building Frameworks**: Strategies to grow and engage your developer community\n- **Content Marketing Templates**: Ready-to-use templates for technical blog posts, tutorials, and case studies\n- **Growth Hacking Techniques**: Proven methods to acquire users and drive adoption for your products\n\n**✨ Additional Perks:**\n- Priority email support\n- Early access to new features\n- GitHub Sponsors badge\n- Vote on feature roadmap\n- Custom integrations assistance\n\n### 💎 Enterprise Tier - $99/month\n\n**For teams building mission-critical applications.**\n\nIncludes everything in Hobby tier plus:\n- Dedicated support channel with SLA guarantees\n- Custom SSO integration (SAML, LDAP)\n- On-premise deployment support\n- Training \u0026 onboarding sessions\n- Custom contracts and invoicing\n\n[🎯 Become a Sponsor](https://github.com/sponsors/khuepm) and unlock these exclusive resources!\n--\u003e\n\n## Core Features\n\n1. **Edge-First:** Runs entirely on Cloudflare Workers \u0026 Hyperdrive.\n2. **True Multi-Tenancy:** Hard-coded `site_id` isolation.\n3. **Page Hydration API:** Delivers layout and data in a single payload.\n4. **GitOps Ready:** `cms config:export` for roles and schemas.\n5. **Agent Harness:** Govern AI agents with goals, context, capabilities, approvals, evaluations, and artifact commits.\n\n---\n\n## 📚 AI Skills Documentation\n\nFor detailed AI-assisted development guidance, including database architecture patterns, edge optimization strategies, and UI/UX integration patterns, see [`docs/ai-skills.md`](./docs/ai-skills.md). This comprehensive guide provides the prompts and patterns used to accelerate LumiBase development with AI assistance.\n\n---\n\n## 🤝 Contributing\n\nContributions are welcome! Please read our contributing guidelines before submitting PRs.\n\n---\n\n## 📄 License\n\nThis project is licensed under the Apache License, Version 2.0 - see the [LICENSE](LICENSE) file for details. `v0.22.0` was the final release under the MIT License; the relicense to Apache 2.0 took effect in `v0.23.0`.\n\n---\n\n## 🙏 Acknowledgments\n\n- Inspired by [Directus](https://directus.io/)\n- Built with [Cloudflare](https://cloudflare.com/)\n- UI components from [shadcn/ui](https://ui.shadcn.com/)\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\n**⭐ If you find this project helpful, please consider giving it a star!**\n\nMade with ❤️ by [Khuepm](https://github.com/khuepm)\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkhuepm%2Flumibase","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkhuepm%2Flumibase","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkhuepm%2Flumibase/lists"}