rekipedia 0.12.0 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +68 -0
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -60,6 +60,40 @@ brew install rekipedia
60
60
 
61
61
  ---
62
62
 
63
+ ## Python API
64
+
65
+ Use rekipedia programmatically inside Jupyter notebooks, CI pipelines, or any Python application:
66
+
67
+ ```python
68
+ import rekipedia
69
+
70
+ # Scan a local repo
71
+ result = rekipedia.scan("/path/to/repo")
72
+ print(result.page_count) # number of wiki pages generated
73
+ print(result.symbol_count) # number of code symbols extracted
74
+ print(result.token_count) # estimated token count of the wiki
75
+
76
+ # Ask a question — grounded answer with file:line citations
77
+ answer = rekipedia.ask("/path/to/repo", "How does the auth flow work?")
78
+ print(answer.text)
79
+ for citation in answer.citations:
80
+ print(f" {citation.file}:{citation.line}")
81
+
82
+ # Async variants (Jupyter-friendly)
83
+ result = await rekipedia.scan_async("/path/to/repo")
84
+ answer = await rekipedia.ask_async("/path/to/repo", "What is the entry point?")
85
+ ```
86
+
87
+ **Return types:**
88
+
89
+ | Type | Key fields |
90
+ |---|---|
91
+ | `ScanResult` | `page_count`, `symbol_count`, `token_count`, `wiki_pages`, `db_path`, `wiki_dir` |
92
+ | `AskResult` | `text`, `citations: list[Citation]`, `model_used` |
93
+ | `Citation` | `file`, `line`, `snippet` |
94
+
95
+ ---
96
+
63
97
  ## Commands
64
98
 
65
99
  | Command | Description |
@@ -129,6 +163,9 @@ export REKIPEDIA_SHARD_TOKEN_BUDGET=40000
129
163
  | `REKIPEDIA_API_KEY` | API key for the LLM provider |
130
164
  | `REKIPEDIA_BASE_URL` | Base URL for OpenAI-compatible endpoints |
131
165
  | `REKIPEDIA_SHARD_TOKEN_BUDGET` | Max tokens per shard group (default: 40000) |
166
+ | `REKIPEDIA_AGENT_ASK` | Set to `1` to enable agentic ReAct ask loop (default: `0` — single-shot) |
167
+ | `REKIPEDIA_ASK_MAX_ITER` | Max tool-call iterations for agentic ask (default: `5`) |
168
+ | `REKIPEDIA_AGENT_PLANNER` | Set to `1` to enable tool-calling wiki planner (default: `0`) |
132
169
 
133
170
  ---
134
171
 
@@ -295,6 +332,37 @@ rekipedia ships a **Hermes agent skill** (`rekipedia-agent-skill.md`) that teach
295
332
 
296
333
  ---
297
334
 
335
+ ## Agentic Mode
336
+
337
+ rekipedia supports an experimental agentic mode where LLM calls use tool-calling (ReAct) instead of single large context dumps.
338
+
339
+ ### Agentic Ask
340
+
341
+ Set `REKIPEDIA_AGENT_ASK=1` to enable:
342
+
343
+ ```bash
344
+ REKIPEDIA_AGENT_ASK=1 reki ask "How does authentication work?"
345
+ ```
346
+
347
+ The LLM issues tool calls to retrieve information on demand:
348
+ - `search_code(query)` — semantic search over source code
349
+ - `get_symbol(name)` — look up symbol location and signature
350
+ - `get_page(slug)` — fetch a wiki page on demand
351
+ - `get_relationships(target)` — dependency graph for a symbol/file
352
+ - `finish(answer)` — provide final answer
353
+
354
+ Max iterations can be configured with `REKIPEDIA_ASK_MAX_ITER` (default: 5).
355
+
356
+ ### Agentic Planner
357
+
358
+ Set `REKIPEDIA_AGENT_PLANNER=1` to enable tool-calling wiki structure planning:
359
+
360
+ ```bash
361
+ REKIPEDIA_AGENT_PLANNER=1 reki scan .
362
+ ```
363
+
364
+ The planner builds the wiki structure incrementally using tool calls instead of generating a single large JSON response.
365
+
298
366
  ## Development
299
367
 
300
368
  ```bash
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rekipedia",
3
- "version": "0.12.0",
3
+ "version": "0.14.0",
4
4
  "description": "Agentic repo-to-wiki: scan any repository into a portable SQLite knowledge store with wiki pages, diagrams, and grounded Q&A.",
5
5
  "bin": {
6
6
  "rekipedia": "./bin/rekipedia.js"