Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,13 +31,13 @@ Manual workflow dispatch via GitHub Actions (`release.yml`). **Critical rules:**

- Never push directly to `main` — always branch + PR
- Conventional Commits: `feat:`, `fix:`, `chore:`, `ci:`, `docs:`
- `ci.yml`: runs lint + tests on branch pushes and PRs to main
- `ci.yml`: runs lint + tests on PRs to main
- `release.yml`: manual workflow dispatch from main — creates tag, GitHub release, publishes to npm, builds binaries

## Commands

```bash
bun test # run tests (354+)
bun test # run tests (402+)
bun run check # biome lint + format
bun run packages/cli/bin/kib.ts # run CLI locally
```
Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ INTEGRATION

MANAGEMENT
config [key] [val] Get or set configuration
skill <sub> [name] Manage skills (list, run)
skill <sub> [name] Manage skills (install, list, run, create)
export Export wiki to markdown or HTML

FLAGS
Expand Down Expand Up @@ -252,7 +252,7 @@ You can also set provider via environment variables:

| Provider | Env Variable | Default Model |
|---|---|---|
| **Anthropic** | `ANTHROPIC_API_KEY` | claude-sonnet-4-20250514 |
| **Anthropic** | `ANTHROPIC_API_KEY` | claude-sonnet-4-6-20250514 |
| **OpenAI** | `OPENAI_API_KEY` | gpt-4o |
| **Ollama** | (auto-detect on localhost:11434) | llama3 |

Expand All @@ -275,9 +275,9 @@ That's it. Restart your AI client and it can search, query, ingest, and compile

Already have a vault? Run `kib mcp` to configure MCP clients without re-initializing.

**8 tools:** `kib_status`, `kib_list`, `kib_read`, `kib_search`, `kib_query`, `kib_ingest`, `kib_compile`, `kib_lint`
**11 tools:** `kib_status`, `kib_list`, `kib_read`, `kib_search`, `kib_query`, `kib_ingest`, `kib_compile`, `kib_lint`, `kib_config`, `kib_skill`, `kib_export`

**2 resources:** `wiki://index`, `wiki://graph`
**3 resources:** `wiki://index`, `wiki://graph`, `wiki://log`

<details>
<summary>Manual setup (other clients)</summary>
Expand Down
8 changes: 4 additions & 4 deletions ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ What's built, what's next, and what's deferred.

---

## Shipped (v0.4.x)
## Shipped (v1.0.0)

### Core (v0.2.0)
- `kib init` — vault creation with auto-detected LLM provider
Expand All @@ -30,14 +30,14 @@ What's built, what's next, and what's deferred.
- Published to npm as `@kibhq/core` and `@kibhq/cli`
- Standalone binaries for macOS/Linux via `bun build --compile`
- Release Please: auto-versioning, changelogs, npm publish, binary builds
- CI: Biome lint + 412 tests on every push
- CI: Biome lint + 402 tests on PRs to main

### MCP Server (v0.2.0)
- `kib serve` — expose vault as MCP tools over stdio
- `kib init` auto-configures MCP in Claude Code, Claude Desktop, and Cursor
- `kib mcp` to re-configure MCP clients independently
- 8 tools: `kib_status`, `kib_list`, `kib_read`, `kib_search`, `kib_query`, `kib_ingest`, `kib_compile`, `kib_lint`
- 2 resources: `wiki://index`, `wiki://graph`
- 11 tools: `kib_status`, `kib_list`, `kib_read`, `kib_search`, `kib_query`, `kib_ingest`, `kib_compile`, `kib_lint`, `kib_config`, `kib_skill`, `kib_export`
- 3 resources: `wiki://index`, `wiki://graph`, `wiki://log`

### CLI Polish (v0.3.0)
- `--json` flag working consistently across all commands
Expand Down
8 changes: 4 additions & 4 deletions docs/provider-config.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ kib config provider.model gpt-4o

| Feature | Anthropic | OpenAI | Ollama |
|---------|-----------|--------|--------|
| Default model | claude-sonnet-4-20250514 | gpt-4o | llama3 |
| Default model | claude-sonnet-4-6-20250514 | gpt-4o | llama3 |
| Fast model | claude-haiku-4-5-20251001 | gpt-4o | llama3 |
| Vision (image ingest) | Yes | Yes | No |
| Embeddings (vector search) | No | Yes (text-embedding-3-small) | Yes (nomic-embed-text) |
Expand Down Expand Up @@ -72,7 +72,7 @@ Run `kib init` and follow the prompts to select a provider and enter your API ke
Used for heavy operations (compile, query, chat):

```bash
kib config provider.model claude-sonnet-4-20250514
kib config provider.model claude-sonnet-4-6-20250514
```

### Fast model
Expand All @@ -92,7 +92,7 @@ Override the model for specific operations:
kib config compile.model gpt-4o

# Use a different model for queries
kib config query.model claude-sonnet-4-20250514
kib config query.model claude-sonnet-4-6-20250514
```

These override `provider.model` for that specific operation only.
Expand All @@ -104,7 +104,7 @@ All provider settings live in `.kb/config.toml`:
```toml
[provider]
default = "anthropic"
model = "claude-sonnet-4-20250514"
model = "claude-sonnet-4-6-20250514"
fast_model = "claude-haiku-4-5-20251001"

[compile]
Expand Down
4 changes: 2 additions & 2 deletions docs/vault-format.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ The manifest is the source of truth for vault state. Schema version: `"1"`.
"created": "2024-01-15T10:00:00.000Z",
"lastCompiled": "2024-01-15T12:00:00.000Z",
"provider": "anthropic",
"model": "claude-sonnet-4-20250514"
"model": "claude-sonnet-4-6-20250514"
},
"sources": {
"src_a1b2c3d4e5f6": {
Expand Down Expand Up @@ -116,7 +116,7 @@ Vault configuration lives at `.kb/config.toml`:
```toml
[provider]
default = "anthropic"
model = "claude-sonnet-4-20250514"
model = "claude-sonnet-4-6-20250514"
fast_model = "claude-haiku-4-5-20251001"

[compile]
Expand Down
2 changes: 1 addition & 1 deletion examples/ml-research/.kb/config.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[provider]
default = "anthropic"
model = "claude-sonnet-4-20250514"
model = "claude-sonnet-4-6-20250514"
fast_model = "claude-haiku-4-5-20251001"

[compile]
Expand Down
2 changes: 1 addition & 1 deletion examples/ml-research/.kb/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"created": "2026-03-01T09:00:00.000Z",
"lastCompiled": "2026-03-15T14:30:00.000Z",
"provider": "anthropic",
"model": "claude-sonnet-4-20250514"
"model": "claude-sonnet-4-6-20250514"
},
"sources": {
"src_att001": {
Expand Down
2 changes: 1 addition & 1 deletion examples/reading-list/.kb/config.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[provider]
default = "anthropic"
model = "claude-sonnet-4-20250514"
model = "claude-sonnet-4-6-20250514"
fast_model = "claude-haiku-4-5-20251001"

[compile]
Expand Down
2 changes: 1 addition & 1 deletion examples/reading-list/.kb/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"created": "2026-01-05T10:00:00.000Z",
"lastCompiled": "2026-04-01T16:00:00.000Z",
"provider": "anthropic",
"model": "claude-sonnet-4-20250514"
"model": "claude-sonnet-4-6-20250514"
},
"sources": {
"src_tfas001": {
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,5 @@
"devDependencies": {
"@biomejs/biome": "^2.4.10"
},
"version": "0.4.3"
"version": "1.0.0"
}
8 changes: 5 additions & 3 deletions packages/cli/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ INTEGRATION

MANAGEMENT
config [key] [val] Get or set configuration
skill <sub> [name] Manage skills (list, run)
skill <sub> [name] Manage skills (install, list, run, create)
export Export wiki to markdown or HTML
```

Expand All @@ -83,7 +83,7 @@ On first use, kib walks you through provider setup interactively. Or set via env

| Provider | Env Variable | Default Model |
|----------|-------------|---------------|
| Anthropic | `ANTHROPIC_API_KEY` | claude-sonnet-4-20250514 |
| Anthropic | `ANTHROPIC_API_KEY` | claude-sonnet-4-6-20250514 |
| OpenAI | `OPENAI_API_KEY` | gpt-4o |
| Ollama | (auto-detect localhost:11434) | llama3 |

Expand Down Expand Up @@ -119,7 +119,9 @@ Already have a vault? Run `kib mcp` to configure MCP clients without re-initiali

Restart your AI client and it can search, query, ingest, and compile your vault.

8 tools: `kib_status`, `kib_list`, `kib_read`, `kib_search`, `kib_query`, `kib_ingest`, `kib_compile`, `kib_lint`
11 tools: `kib_status`, `kib_list`, `kib_read`, `kib_search`, `kib_query`, `kib_ingest`, `kib_compile`, `kib_lint`, `kib_config`, `kib_skill`, `kib_export`

3 resources: `wiki://index`, `wiki://graph`, `wiki://log`

<details>
<summary>Manual setup (other clients)</summary>
Expand Down
4 changes: 2 additions & 2 deletions packages/cli/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@kibhq/cli",
"version": "0.4.3",
"version": "1.0.0",
"description": "The Headless Knowledge Compiler — turn raw sources into a structured, queryable wiki with AI",
"type": "module",
"bin": {
Expand Down Expand Up @@ -35,7 +35,7 @@
"test": "bun test"
},
"dependencies": {
"@kibhq/core": "^0.4.2",
"@kibhq/core": "^1.0.0",
"@modelcontextprotocol/sdk": "^1.29.0",
"chalk": "^5.4.1",
"commander": "^14.0.0",
Expand Down
6 changes: 4 additions & 2 deletions packages/cli/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
import { Command } from "commander";
import { setVerbose } from "./ui/debug.js";

const { version } = require("../package.json");

const program = new Command()
.name("kib")
.description("The Headless Knowledge Compiler")
.version("0.1.0")
.version(version)
.option("-v, --verbose", "enable debug output")
.hook("preAction", (_thisCommand, actionCommand) => {
const rootOpts = actionCommand.optsWithGlobals();
Expand Down Expand Up @@ -156,7 +158,7 @@ program
program
.command("export")
.description("Export wiki to other formats")
.option("--format <type>", "output format: markdown, html, pdf", "markdown")
.option("--format <type>", "output format: markdown, html", "markdown")
.option("--output <path>", "output directory")
.option("--json", "JSON output")
.action(async (opts) => {
Expand Down
2 changes: 1 addition & 1 deletion packages/core/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ console.log(answer.answer);

| Provider | Env Variable | Default Model |
|----------|-------------|---------------|
| Anthropic | `ANTHROPIC_API_KEY` | claude-sonnet-4-20250514 |
| Anthropic | `ANTHROPIC_API_KEY` | claude-sonnet-4-6-20250514 |
| OpenAI | `OPENAI_API_KEY` | gpt-4o |
| Ollama | (auto-detect localhost:11434) | llama3 |

Expand Down
2 changes: 1 addition & 1 deletion packages/core/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@kibhq/core",
"version": "0.4.3",
"version": "1.0.0",
"description": "Core engine for kib — vault operations, LLM providers, ingest, compile, search, and query",
"type": "module",
"exports": {
Expand Down
2 changes: 1 addition & 1 deletion packages/core/src/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ export const RAW_CATEGORIES = ["articles", "papers", "repos", "images", "transcr
/** Default config values */
export const DEFAULTS = {
provider: "anthropic",
model: "claude-sonnet-4-20250514",
model: "claude-sonnet-4-6-20250514",
fastModel: "claude-haiku-4-5-20251001",
maxSourcesPerPass: 10,
searchMaxResults: 20,
Expand Down
3 changes: 2 additions & 1 deletion packages/core/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,6 @@
"composite": true,
"noEmit": false
},
"include": ["src"]
"include": ["src"],
"exclude": ["src/**/*.test.ts"]
}
Loading