librian 0.0.0-stage → 0.1.1

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.
package/CHANGELOG.md ADDED
@@ -0,0 +1,74 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ ---
6
+
7
+ ## [0.1.1] - 2026-11-08
8
+
9
+ ### Added
10
+
11
+ - **`librian add [<folder>]`.** Adds a docs folder without opening the menu:
12
+ run it inside the docs folder, or pass the path. It counts the markdown
13
+ files, asks `Add it as "akms_docs"? (Y/n)` and adds the entry. It refuses
14
+ your home folder and a drive root (exit code 2), says `Already added as …`
15
+ (exit code 0) for a folder that is already there, and adds nothing when the
16
+ input ends.
17
+ - **The folder question starts with the current folder.** Start `librian`
18
+ inside a docs folder and Enter is enough to add it. In your home folder or a
19
+ drive root the question starts empty.
20
+
21
+ ### Changed
22
+
23
+ - **Add asks for the folder only.** The Add form with its Name, Exclude and
24
+ Max bytes rows is gone: the folder is checked (a missing folder is explained
25
+ and asked again; a folder already added takes you to its entry; a folder
26
+ without markdown files defaults to No), then one question adds it with the
27
+ default name. Name, Exclude and Max bytes are changed with **Edit** on the
28
+ entry, which still opens the form.
29
+ - **Counting files is bounded.** Add, `librian add`, Check and the file counts
30
+ in the main menu stop at 5,000 files or after 2 seconds and show
31
+ `5000+ files`, so choosing a huge folder does not hang.
32
+ - **The menu's AI services screen is now called Register.** Its rows and
33
+ actions are the same: switch Claude Code or Codex on or off, then Apply.
34
+
35
+ ### Removed
36
+
37
+ - **Runtime → Use a local checkout.** It was for running an unpublished build.
38
+ Install a built checkout with
39
+ `npm install --prefix ~/.librian/runtime <path>` instead; the menu still
40
+ shows it as `linked to <path>` and **Install from npm** switches back.
41
+
42
+ ## [0.1.0] - 2026-11-08
43
+
44
+ First release.
45
+
46
+ ### Added
47
+
48
+ - **Read one section instead of a whole file.** Four MCP tools per docs folder:
49
+ `list` (files with size and document title, grouped by folder), `outline`
50
+ (headings with line ranges and sizes), `read` (a whole file, one section or a
51
+ line range) and `search` (blocks that contain every word of a query, with a
52
+ one-line excerpt).
53
+ - **No saved index.** Every call checks the files' modification time and size
54
+ and re-reads only the changed ones, so line ranges always match the files on
55
+ disk, even while several agents edit the same docs. Nothing is written to the
56
+ docs folder.
57
+ - **References.** `outline` and `read` take `path`, `path#heading` (heading
58
+ text or GitHub anchor), `path:start-end` or `path:line`.
59
+ - **Bounded responses.** Each response stays within a byte limit (16000 by
60
+ default). A large file returns its outline, a large section returns its own
61
+ text and its subsection outline or one page with a `Continue:` reference, and
62
+ `search` and `list` say how to get the rest.
63
+ - **Search that works for Korean.** Words made of letters, digits and `_` match
64
+ at the start of a word; other words match anywhere, since Korean attaches
65
+ particles to words. Ancestor headings count toward a match.
66
+ - **The `librian` menu.** Run `librian` in a terminal to add, edit, check and
67
+ remove docs folders, register or unregister librian in Claude Code and Codex
68
+ (user scope, with a preview of the commands it runs), and install, update or
69
+ uninstall the runtime in `~/.librian/runtime`. Entries live in
70
+ `~/.librian/catalog.json`; `LIBRIAN_HOME` moves both.
71
+ - **One server for all folders.** `librian serve --catalog` is what the AI
72
+ services run: it offers the four tools for each entry, prefixed with the
73
+ entry name (`akms__read`). `librian serve --root <folder>` serves a single
74
+ folder with unprefixed tools, for registering by hand.