feat(research-library): library-acquisition skill + consolidated PDF extractor - #2
Open
Fede654 wants to merge 1 commit into
Open
feat(research-library): library-acquisition skill + consolidated PDF extractor#2Fede654 wants to merge 1 commit into
Fede654 wants to merge 1 commit into
Conversation
…extractor Adds a Research Library capability: a citable primary-source *corpus* (full documents on disk), kept distinct from the memory store (library.db). - scripts/library_extract.py: one PyMuPDF extractor with two modes — 'corpus' (structured ingestion: raw/ + cleaned chapters + meta.json + topic/master indexes) and 'dump' (flat full-text for one-off translation/TTS). Replaces the two per-agent scripts that had drifted (structured vs flat). Paths are workspace-relative ($LIBRARY_ROOT / $HMK_WORKSPACE_ROOT/library). - templates/skills/research/library-acquisition: the acquisition procedure, generalized from a per-agent local skill. Closing step registers a catalog pointer in library.db (shelf evidence) so corpus books are discoverable via librarian/hybrid-pack and expand jumps to the on-disk chapter — the bridge that was missing. - librarian skill: cross-links library-acquisition and documents the corpus as a third retrieval tier, disambiguating the two 'libraries'. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Fede654
pushed a commit
to Fede654/hermes-memory-kit
that referenced
this pull request
Aug 18, 2026
Define authoritative memory ownership boundaries
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Research Library — citable primary-source corpus
Adds a Research Library capability to HMK: a filesystem corpus of full primary
sources (books, papers), citable as (Author, Year, ch. X, p. Y), kept distinct
from the memory store (
agent-memory/library.db). The two were being conflatedunder the word "library"; this PR separates the concepts and bridges them.
What's included
scripts/library_extract.py— a single PyMuPDF extractor with two modes:corpus: structured ingestion (copies the PDF toraw/, extracts + cleans thefull text, writes
meta.json, updates topic + master indexes).dump: flat full-text extraction (every page) to stdout/file with apages=N chars=Mreport — for one-off translation/TTS of a PDF not in the corpus.workspace-relative (
$LIBRARY_ROOT/$HMK_WORKSPACE_ROOT/library).templates/skills/research/library-acquisition/— the acquisition procedure,generalized from a per-agent local skill. Its closing step registers a catalog
pointer in
library.db(shelfevidence) pointing at each book'smeta.json, socorpus books are discoverable via
librarian/hybrid-packandexpandjumps to theon-disk chapter. This is the memory↔corpus bridge.
librarianskill — cross-linkslibrary-acquisitionand documents the corpus asa third retrieval tier, disambiguating the two "libraries".
Model
library.dbholds the index (pointers/summaries); the Research Library holds thefull text. Acquisition feeds discoverability; the wiki map remains the orientation layer.
Origin: generalized from an agent-local Research Library + acquisition procedure.
🤖 Generated with Claude Code