{"id":50482798,"url":"https://github.com/d-oit/do-knowledge-studio","last_synced_at":"2026-06-01T19:01:05.225Z","repository":{"id":351593463,"uuid":"1210654984","full_name":"d-oit/do-knowledge-studio","owner":"d-oit","description":"Local-first knowledge studio — rich text, knowledge graph, mind maps, SQLite FTS5 search \u0026 AI agent harness","archived":false,"fork":false,"pushed_at":"2026-05-29T18:12:11.000Z","size":3229,"stargazers_count":1,"open_issues_count":19,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-29T18:21:28.440Z","etag":null,"topics":["knowledge-graph","knowledge-management"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/d-oit.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":".github/SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":"NOTICE","maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-04-14T16:18:12.000Z","updated_at":"2026-05-27T17:56:37.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/d-oit/do-knowledge-studio","commit_stats":null,"previous_names":["d-oit/do-knowledge-studio"],"tags_count":0,"template":false,"template_full_name":"d-oit/github-template-ai-agents","purl":"pkg:github/d-oit/do-knowledge-studio","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-oit%2Fdo-knowledge-studio","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-oit%2Fdo-knowledge-studio/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-oit%2Fdo-knowledge-studio/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-oit%2Fdo-knowledge-studio/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/d-oit","download_url":"https://codeload.github.com/d-oit/do-knowledge-studio/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-oit%2Fdo-knowledge-studio/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33789013,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-01T02:00:06.963Z","response_time":115,"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":["knowledge-graph","knowledge-management"],"created_at":"2026-06-01T19:01:01.912Z","updated_at":"2026-06-01T19:01:05.210Z","avatar_url":"https://github.com/d-oit.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# do-knowledge-studio\n\n\u003e A local-first knowledge management studio — rich notes, knowledge graph, mind maps, full-text search, and AI agent integration in a single browser-based app.\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Version](https://img.shields.io/badge/version-0.1.0-blue)](VERSION)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](CONTRIBUTING.md)\n[![Built with React](https://img.shields.io/badge/React-19-61DAFB?logo=react)](https://react.dev)\n[![TypeScript](https://img.shields.io/badge/TypeScript-5-3178C6?logo=typescript)](https://www.typescriptlang.org)\n[![Vite](https://img.shields.io/badge/Vite-8-646CFF?logo=vite)](https://vitejs.dev)\n\n**Quick Links**: [Quick Start](#-quick-start) · [Features](#-features) · [Architecture](#-architecture) · [AI Agents](#-ai-agent-integration) · [Contributing](#-contributing)\n\n---\n\n## What Is This?\n\n**do-knowledge-studio** is a local-first, offline-capable knowledge management application built with React 19, TypeScript 5, and SQLite WASM. It combines a rich-text editor, an interactive knowledge graph, mind mapping, blazing-fast full-text search, and a static site export — all running entirely in the browser with no backend required.\n\nIt also ships with an **AI agent harness** supporting Claude Code, Gemini CLI, OpenCode, Qwen Code, Windsurf, and Cursor — making it a great base for AI-assisted personal knowledge management workflows.\n\n## 🚧 Status\n\nThis project is in active development. See [PHASES.md](docs/PHASES.md) for progress tracking.\n\n---\n\n## ✨ Features\n\n- **📝 Rich Text Editor** — TipTap-powered WYSIWYG editor with Markdown support and placeholder hints\n- **🗄️ Local SQLite Database** — Persistent, offline-first storage via `@sqlite.org/sqlite-wasm` with FTS5 full-text search\n- **🔍 Semantic \u0026 Full-Text Search** — Orama-powered in-browser search index for fast, context-aware retrieval\n- **🕸️ Knowledge Graph** — Interactive node-link graph built with Graphology + Sigma.js; focus mode for deep neighborhood exploration\n- **🧠 Mind Maps** — Visual mind mapping with Mind Elixir for brainstorming and concept structuring\n- **📤 Static Site Export** — Turn your knowledge base into a shareable, self-contained static site (Markdown, JSON, HTML)\n- **🤖 AI Agent Harness** — Unified workflow across 6+ AI coding tools with skills, quality gates, and sub-agent patterns\n- **🔬 Swarm Analysis** — Parallel AI-powered web research using git worktrees\n- **⚡ CLI** — TypeScript CLI for scripting and automation tasks\n- **🧪 Full Test Suite** — Vitest unit tests + Playwright end-to-end tests\n\n---\n\n## 🚀 Quick Start\n\n### Prerequisites\n\n- **Node.js** 20+ ([install](https://nodejs.org))\n- A modern browser (Chrome, Firefox, Edge)\n- *(Optional)* An AI coding CLI: [Claude Code](https://claude.ai/code), [Gemini CLI](https://gemini.google.com), [OpenCode](https://opencode.ai), [Qwen Code](https://github.com/QwenLM/Qwen-Coder)\n\n### Installation\n\n```bash\ngit clone https://github.com/d-oit/do-knowledge-studio.git\ncd do-knowledge-studio\npnpm install\n```\n\n### Development\n\n```bash\npnpm run dev\n```\n\nOpen [http://localhost:5173](http://localhost:5173) in your browser.\n\n### Build\n\n```bash\npnpm run build\npnpm run preview\n```\n\n### Environment\n\n```bash\ncp .env.example .env\n# Edit .env as needed\n```\n\n---\n\n## 🏗️ Architecture\n\n\u003c!-- START_DIAGRAM --\u003e\n\n```mermaid\ngraph TD\n    subgraph UI_Layer [UI Layer (React 19)]\n        Editor[Rich Text Editor]\n        Graph[Knowledge Graph]\n        MindMap[Mind Maps]\n        Chat[AI Chat]\n    end\n\n    subgraph Logic_Layer [Logic \u0026 Search]\n        Repository[Repository API]\n        Orama[Orama Search Index]\n        Jobs[Job Coordinator]\n    end\n\n    subgraph Data_Layer [Data \u0026 Storage]\n        Worker[SQLite Worker]\n        SQLite[SQLite WASM + FTS5]\n        OPFS[Browser OPFS Storage]\n    end\n\n    Editor --\u003e Repository\n    Graph --\u003e Repository\n    MindMap --\u003e Repository\n    Chat --\u003e Repository\n    Chat --\u003e Orama\n\n    Repository --\u003e Jobs\n    Jobs --\u003e Orama\n    Repository --\u003e Worker\n    Worker --\u003e SQLite\n    SQLite --\u003e OPFS\n\n    CLI[TS CLI] --\u003e Repository\n    Export[Export Engine] --\u003e Repository\n```\n\n\u003c!-- END_DIAGRAM --\u003e\n\n```\nsrc/\n├── app/          # React app shell, routing, layout\n├── db/           # SQLite WASM database layer + FTS5 search\n├── features/     # Feature modules (editor, graph, mindmap, search, export)\n├── lib/          # Shared utilities and Orama search index\n└── main.tsx      # Entry point\n\ncli/              # TypeScript CLI for automation\nexport/           # Static site export engine\nscripts/          # Setup and quality gate scripts\ntests/            # Playwright e2e tests\n```\n\n### Tech Stack\n\n| Layer | Technology |\n|---|---|\n| UI Framework | React 19 + TypeScript 5 |\n| Build Tool | Vite 8 |\n| Database | SQLite WASM (FTS5) |\n| Search | Orama 3 |\n| Rich Text | TipTap 3 |\n| Graph | Graphology + Sigma.js |\n| Mind Map | Mind Elixir 5 |\n| Validation | Zod |\n| Icons | Lucide React |\n| Unit Tests | Vitest 4 |\n| E2E Tests | Playwright |\n\n---\n\n## 🤖 AI Agent Integration\n\nThis project ships with a unified AI agent harness that works across multiple tools:\n\n```\nAGENTS.md           # Single source of truth for all agents\n├── CLAUDE.md       # Claude Code overrides\n├── GEMINI.md       # Gemini CLI overrides\n├── QWEN.md         # Qwen Code overrides\n└── .opencode/       # OpenCode configuration\n```\n\n### Skills System\n\nReusable knowledge modules live in `.agents/skills/` and are symlinked into each tool's config directory:\n\n```\n.agents/skills/         # Canonical skill source\n.claude/skills/         # Symlinks → ../../.agents/skills/\n.gemini/skills/         # Symlinks → ../../.agents/skills/\n.qwen/skills/           # Symlinks → ../../.agents/skills/\n```\n\n### Setup Agent Skills\n\n```bash\n# Create skill symlinks (run once)\n./scripts/setup-skills.sh\n\n# Validate setup\n./scripts/validate-skills.sh\n```\n\n### Sub-Agent Patterns\n\n```mermaid\ngraph LR\n    A[Main Agent] --\u003e B[Sub-Agent 1]\n    A --\u003e C[Sub-Agent 2]\n    B --\u003e D[Task Complete]\n    C --\u003e E[Task Complete]\n    D --\u003e F[Synthesize]\n    E --\u003e F\n```\n\n---\n\n## 🧪 Testing\n\n```bash\n# Unit tests\npnpm run test\n\n# Watch mode\npnpm run test:watch\n\n# End-to-end tests\npnpm run test:e2e\n\n# Type checking\npnpm run typecheck\n\n# Lint\npnpm run lint\n```\n\n---\n\n## ⚙️ CLI\n\nThe CLI enables automation and scripting for your knowledge base. It shares a common database file with the browser app, allowing for seamless integration between automated tools and visual exploration.\n\n**Default Database Path**: `~/.local/share/do-knowledge-studio/data.db`\n\n```bash\n# List all entities\npnpm run cli -- entity-list\n\n# Import from a directory\npnpm run cli -- sync ./notes\n\n# Use a custom database path\npnpm run cli -- --db-path ./custom.db entity-list\n```\n\nSee [SETUP.md](docs/SETUP.md) for detailed CLI instructions and how to connect the browser to the shared database.\n\n---\n\n## 📚 Documentation\n\n- 📖 **[AGENTS.md](AGENTS.md)** — AI agent instructions (single source of truth)\n- 🏗️ **[Harness Overview](agents-docs/HARNESS.md)** — Architecture and patterns\n- 🪝 **[Skills Guide](agents-docs/AVAILABLE_SKILLS.md)** — Creating reusable skills\n- 🤖 **[Sub-Agents](agents-docs/SUB-AGENTS.md)** — Context isolation patterns\n- 🔧 **[Hooks](agents-docs/HOOKS.md)** — Pre/post tool hooks\n- 📊 **[Context](agents-docs/CONTEXT.md)** — Back-pressure mechanisms\n- ⚙️ **[Configuration](agents-docs/CONFIG.md)** — Repository constants and utilities\n- 🔄 **[Migration](agents-docs/MIGRATION.md)** — Adopting in existing projects\n- 🔒 **[Security](SECURITY.md)** — Security policy and reporting\n- 📝 **[Changelog](CHANGELOG.md)** — Release history\n\n---\n\n## 🤝 Contributing\n\nContributions are welcome! See [CONTRIBUTING.md](CONTRIBUTING.md) for:\n\n- Development environment setup\n- Code style and testing requirements\n- Pull request process\n- Good first issues\n\n## Community\n\n- 🐛 [Issue Tracker](https://github.com/d-oit/do-knowledge-studio/issues) — Report bugs\n- 💬 [Discussions](https://github.com/d-oit/do-knowledge-studio/discussions) — Ask questions\n\n---\n\n## License\n\nLicensed under the [MIT License](LICENSE).\n\n---\n\n**Local-first. AI-assisted. Built to think.**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fd-oit%2Fdo-knowledge-studio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fd-oit%2Fdo-knowledge-studio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fd-oit%2Fdo-knowledge-studio/lists"}