Skip to content

Commit 5c103c4

Browse files
authored
Merge pull request #19 from VectifyAI/dev
Merge dev into main
2 parents 8658d1c + 05270b5 commit 5c103c4

13 files changed

Lines changed: 892 additions & 32 deletions

README.md

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,12 @@ Traditional RAG rediscovers knowledge from scratch on every query. Nothing accum
2424

2525
### Features
2626

27-
- **Any format** — PDF, Word, PowerPoint, Excel, HTML, Markdown, text, CSV, and more via markitdown
27+
- **Broad format support** — PDF, Word, Markdown, PowerPoint, HTML, Excel, CSV, text, and more via markitdown
2828
- **Scale to long documents** — Long and complex documents are handled via [PageIndex](https://github.com/VectifyAI/PageIndex) tree indexing, enabling accurate, vectorless long-context retrieval
2929
- **Native multi-modality** — Retrieves and understands figures, tables, and images, not just text
30-
- **Auto wiki** — LLM generates summaries, concept pages, and cross-links. You curate sources; the LLM does the rest
31-
- **Query** — Ask questions against your wiki. The LLM navigates your compiled knowledge to answer
30+
- **Compiled Wiki** — LLM manages and compiles your documents into summaries, concept pages, and cross-links, all kept in sync
31+
- **Query** — Ask questions (one-off) against your wiki. The LLM navigates your compiled knowledge to answer
32+
- **Interactive Chat** — Multi-turn conversations with persisted sessions you can resume across runs
3233
- **Lint** — Health checks find contradictions, gaps, orphans, and stale content
3334
- **Watch mode** — Drop files into `raw/`, wiki updates automatically
3435
- **Obsidian compatible** — Wiki is plain `.md` files with `[[wikilinks]]`. Open in Obsidian for graph view and browsing
@@ -55,11 +56,11 @@ openkb add paper.pdf
5556
openkb add ~/papers/ # Add a whole directory
5657
openkb add article.html
5758

58-
# 4. Ask questions
59+
# 4. Ask a question
5960
openkb query "What are the main findings?"
6061

61-
# 5. Check wiki health
62-
openkb lint
62+
# 5. Or start an interactive chat session
63+
openkb chat
6364
```
6465

6566
### Set up your LLM
@@ -132,13 +133,28 @@ A single source might touch 10-15 wiki pages. Knowledge accumulates: each docume
132133
| `openkb add <file_or_dir>` | Add documents and compile to wiki |
133134
| `openkb query "question"` | Ask a question against the knowledge base |
134135
| `openkb query "question" --save` | Ask and save the answer to `wiki/explorations/` |
136+
| `openkb chat` | Start an interactive multi-turn chat (use `--resume`, `--list`, `--delete` to manage sessions) |
135137
| `openkb watch` | Watch `raw/` and auto-compile new files |
136138
| `openkb lint` | Run structural + knowledge health checks |
137139
| `openkb list` | List indexed documents and concepts |
138140
| `openkb status` | Show knowledge base stats |
139141

140142
<!-- | `openkb lint --fix` | Auto-fix what it can | -->
141143

144+
### Interactive chat
145+
146+
`openkb chat` opens an interactive chat session over your wiki knowledge base. Unlike the one-shot `openkb query`, each turn carries the conversation history, so you can dig into a topic without re-typing context.
147+
148+
```bash
149+
openkb chat # start a new session
150+
openkb chat --resume # resume the most recent session
151+
openkb chat --resume 20260411 # resume by id (unique prefix works)
152+
openkb chat --list # list all sessions
153+
openkb chat --delete <id> # delete a session
154+
```
155+
156+
`/help` lists all slash commands: e.g., `/save` exports the transcript, `/clear` starts a fresh session.
157+
142158
### Configuration
143159

144160
Settings are initialized by `openkb init`, and stored in `.openkb/config.yaml`:

openkb/__init__.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,7 @@
1-
__version__ = "0.1.0"
1+
"""OpenKB package."""
2+
from importlib.metadata import PackageNotFoundError, version as _version
3+
4+
try:
5+
__version__ = _version("openkb")
6+
except PackageNotFoundError:
7+
__version__ = "0.0.0+unknown"

0 commit comments

Comments
 (0)