diff --git a/packages/web/public/apple-icon.png b/packages/web/public/apple-icon.png new file mode 100644 index 0000000..0d0e356 Binary files /dev/null and b/packages/web/public/apple-icon.png differ diff --git a/packages/web/public/llms.txt b/packages/web/public/llms.txt deleted file mode 100644 index 58a9b26..0000000 --- a/packages/web/public/llms.txt +++ /dev/null @@ -1,39 +0,0 @@ -# kib - -> The Headless Knowledge Compiler. CLI-first, LLM-powered tool that turns raw sources into a structured, queryable markdown wiki. - -## Install - -npm i -g @kibhq/cli && kib init - -## Commands - -- kib init — Create a new vault (defaults to ~/.kib) -- kib ingest — Ingest URLs, PDFs, YouTube, GitHub repos, local files -- kib compile — Compile raw sources into wiki articles via LLM -- kib search — BM25 full-text search -- kib query — RAG query with cited answers -- kib chat — Interactive REPL with conversation history -- kib serve — Start MCP server for AI tool integration -- kib mcp — Configure MCP in AI clients (auto-runs on init) -- kib lint — Run health checks on the wiki -- kib watch — Watch inbox/ and auto-ingest new files - -## MCP Server - -8 tools: kib_status, kib_list, kib_read, kib_search, kib_query, kib_ingest, kib_compile, kib_lint -2 resources: wiki://index, wiki://graph -Auto-configures Claude Code, Claude Desktop, and Cursor on kib init. - -## LLM Providers - -- Anthropic (ANTHROPIC_API_KEY) — default model: claude-sonnet-4-20250514 -- OpenAI (OPENAI_API_KEY) — default model: gpt-4o -- Ollama (auto-detect localhost:11434) — default model: llama3 - -## Links - -- GitHub: https://github.com/keeganthomp/kib -- npm: https://www.npmjs.com/package/@kibhq/cli -- npm (core): https://www.npmjs.com/package/@kibhq/core -- Docs: https://github.com/keeganthomp/kib#readme diff --git a/packages/web/public/robots.txt b/packages/web/public/robots.txt deleted file mode 100644 index c2a49f4..0000000 --- a/packages/web/public/robots.txt +++ /dev/null @@ -1,2 +0,0 @@ -User-agent: * -Allow: / diff --git a/packages/web/src/app/favicon.ico b/packages/web/src/app/favicon.ico new file mode 100644 index 0000000..4db7621 Binary files /dev/null and b/packages/web/src/app/favicon.ico differ diff --git a/packages/web/src/app/globals.css b/packages/web/src/app/globals.css index efb0820..e16f423 100644 --- a/packages/web/src/app/globals.css +++ b/packages/web/src/app/globals.css @@ -4,17 +4,13 @@ --font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, sans-serif; --font-mono: "JetBrains Mono", ui-monospace, "Cascadia Code", monospace; - --color-background: #fbfbfd; - --color-foreground: #1a1a2e; - --color-muted: #9094a6; - --color-muted-foreground: #c2c5d1; - --color-border: #ebebf0; - --color-card: #f5f5fa; - --color-card-hover: #ededf5; - --color-accent: #8b9cf7; - --color-accent-light: #f0f1ff; - --color-terminal: #1e1e2e; - --color-terminal-fg: #d4d4e8; + --color-background: #ffffff; + --color-foreground: #111111; + --color-muted: #777777; + --color-muted-foreground: #bbbbbb; + --color-border: #e5e5e5; + --color-terminal: #111111; + --color-terminal-fg: #e0e0e0; } * { @@ -24,7 +20,7 @@ body { background-color: var(--color-background); color: var(--color-foreground); - font-family: var(--font-sans); + font-family: var(--font-mono); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } diff --git a/packages/web/src/app/icon.png b/packages/web/src/app/icon.png new file mode 100644 index 0000000..d3ab218 Binary files /dev/null and b/packages/web/src/app/icon.png differ diff --git a/packages/web/src/app/layout.tsx b/packages/web/src/app/layout.tsx index 27ba274..888772d 100644 --- a/packages/web/src/app/layout.tsx +++ b/packages/web/src/app/layout.tsx @@ -15,34 +15,38 @@ const jetbrains = JetBrains_Mono({ }); export const metadata: Metadata = { + metadataBase: new URL("https://kib.dev"), title: "kib — The Headless Knowledge Compiler", description: - "CLI-first, LLM-powered tool that turns raw sources into a structured, queryable markdown wiki. Ingest URLs, PDFs, YouTube, GitHub repos. Compile with AI. Search and query instantly.", + "CLI-first, LLM-powered tool that turns raw sources into a structured, queryable markdown wiki. Ingest URLs, PDFs, YouTube, GitHub repos, images. Compile with AI. Search and query instantly. MCP server included.", keywords: [ "knowledge base", + "knowledge compiler", "wiki", "LLM", "CLI", "RAG", "AI", - "knowledge compiler", - "MCP", + "MCP server", "markdown", "knowledge management", "AI tools", + "Homebrew", + "Chrome extension", ], authors: [{ name: "Keegan Thompson", url: "https://github.com/keeganthomp" }], creator: "Keegan Thompson", openGraph: { type: "website", title: "kib — The Headless Knowledge Compiler", - description: "Ingest anything. Compile a wiki. Query with AI. All from the terminal.", + description: + "Ingest anything. Compile a wiki. Query with AI. All from the terminal. MCP server for Claude Code, Cursor, and Claude Desktop.", siteName: "kib", }, twitter: { card: "summary_large_image", title: "kib — The Headless Knowledge Compiler", - description: "CLI-first, LLM-powered knowledge compiler.", + description: "CLI-first, LLM-powered knowledge compiler with MCP server.", }, robots: { index: true, @@ -55,12 +59,12 @@ const jsonLd = { "@type": "SoftwareApplication", name: "kib", description: - "The Headless Knowledge Compiler. CLI-first, LLM-powered tool that turns raw sources into a structured, queryable markdown wiki.", + "The Headless Knowledge Compiler. CLI-first, LLM-powered tool that turns raw sources into a structured, queryable markdown wiki. Supports ingesting URLs, PDFs, YouTube transcripts, GitHub repos, and images. Includes BM25 search, RAG query, and an MCP server with 8 tools for AI assistant integration.", applicationCategory: "DeveloperApplication", operatingSystem: "macOS, Linux", offers: { "@type": "Offer", price: "0", priceCurrency: "USD" }, downloadUrl: "https://www.npmjs.com/package/@kibhq/cli", - softwareVersion: "0.4.2", + softwareVersion: "0.4.3", author: { "@type": "Person", name: "Keegan Thompson", @@ -68,6 +72,16 @@ const jsonLd = { }, license: "https://opensource.org/licenses/MIT", codeRepository: "https://github.com/keeganthomp/kib", + featureList: [ + "Ingest URLs, PDFs, YouTube, GitHub repos, images", + "AI-compiled structured markdown wiki", + "BM25 full-text search with English stemming", + "RAG query with cited answers", + "MCP server with 8 tools for Claude Code, Cursor, Claude Desktop", + "Chrome extension for one-click webpage saving", + "Homebrew installation support", + "Plain markdown files, no database, no lock-in", + ], }; export default function RootLayout({ children }: { children: React.ReactNode }) { diff --git a/packages/web/src/app/llms.txt/route.ts b/packages/web/src/app/llms.txt/route.ts new file mode 100644 index 0000000..381c8d6 --- /dev/null +++ b/packages/web/src/app/llms.txt/route.ts @@ -0,0 +1,85 @@ +export const dynamic = "force-static"; + +const content = `# kib — The Headless Knowledge Compiler + +> CLI-first, LLM-powered tool that turns raw sources into a structured, queryable markdown wiki. + +## What is kib? + +kib is an open-source CLI tool that ingests raw source material (URLs, PDFs, YouTube transcripts, GitHub repos, images, local files), compiles it into a structured markdown wiki using LLMs, and lets you search and query your knowledge base from the terminal. + +## Install + +Homebrew (macOS & Linux): +brew tap keeganthomp/kib && brew install kib + +npm: +npm i -g @kibhq/cli + +## Quick Start + +kib init +kib ingest +kib compile +kib query "your question" +kib chat + +## Key Features + +- Ingest: URLs, PDFs, YouTube, GitHub repos, images, local files +- Compile: LLM structures sources into connected markdown articles with frontmatter, tags, and wikilinks +- Search: BM25 full-text search with English stemming, sub-50ms +- Query: RAG over your wiki with cited answers +- Chat: Interactive REPL with conversation history +- MCP Server: 8 tools (kib_status, kib_list, kib_read, kib_search, kib_query, kib_ingest, kib_compile, kib_lint) and 2 resources (wiki://index, wiki://graph) +- Lint: Health checks for orphan articles, broken wikilinks, stale sources +- Skills: Built-in and custom .ts skills with full vault/LLM/search access +- Export: Markdown or HTML static site output +- Chrome Extension: One-click webpage saving (coming soon to Chrome Web Store) + +## MCP Server Integration + +kib includes an MCP server that gives AI assistants direct access to your knowledge base. Supported clients: Claude Code, Claude Desktop, Cursor. + +Configure automatically: +kib init # auto-configures MCP for detected clients +kib mcp # configure MCP without re-initializing + +Manual configuration: +{ + "mcpServers": { + "kib": { + "command": "kib", + "args": ["serve"], + "cwd": "/path/to/your/vault" + } + } +} + +## LLM Providers + +Anthropic (ANTHROPIC_API_KEY), OpenAI (OPENAI_API_KEY), Ollama (local, auto-detected). + +## Architecture + +Vault is plain files on disk. No database. No lock-in. Version with git. + +Vault structure: +- .kb/ — manifest, config, cache, skills +- raw/ — ingested source material (never modified) +- wiki/ — compiled articles, INDEX.md, GRAPH.md +- inbox/ — drop zone for auto-ingest via kib watch + +## Links + +- GitHub: https://github.com/keeganthomp/kib +- npm: https://www.npmjs.com/package/@kibhq/cli +- Website: https://kib.dev +- License: MIT +`; + +export function GET() { + return new Response(content, { + headers: { "Content-Type": "text/plain; charset=utf-8" }, + }); +} diff --git a/packages/web/src/app/opengraph-image.png b/packages/web/src/app/opengraph-image.png new file mode 100644 index 0000000..cd07488 Binary files /dev/null and b/packages/web/src/app/opengraph-image.png differ diff --git a/packages/web/src/app/page.tsx b/packages/web/src/app/page.tsx index c4a64ce..cb91ebb 100644 --- a/packages/web/src/app/page.tsx +++ b/packages/web/src/app/page.tsx @@ -1,4 +1,3 @@ -import { Architecture } from "@/components/architecture"; import { Features } from "@/components/features"; import { Footer } from "@/components/footer"; import { Hero } from "@/components/hero"; @@ -12,7 +11,6 @@ export default function Home() {
-