MCPcopy Index your code
hub / github.com/asciimoo/hister

github.com/asciimoo/hister @v0.16.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.16.0 ↗ · + Follow
1,686 symbols 4,968 edges 178 files 472 documented · 28%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Hister

Your own search engine

Hister is a general purpose web search engine providing automatic full-text indexing for visited websites.

Features

  • Privacy-focused: Keep your browsing history indexed locally - don't use remote search engines if it isn't necessary
  • Full-text indexing: Search through the actual content of web pages you've visited
  • Advanced search capabilities: Utilize a powerful query language for precise results
  • Local file indexing: Index your local knowledge base
  • Crawler: Use a (headless) browser or a traditional crawler to extend your index fast
  • Multi-user support: Host it for your local community
  • AI enhanced: Enable optional semantic search or connect your agents via MCP

Check out our Documentation for more details

Support the development

hister screenshot

hister screencast

Development

Requirements: latest Go and NPM

  • Clone the repository
  • Build with ./manage.sh build (or go generate ./...; go build)

To work on the web app with hot reload and automatic Go rebuilds:

npm run serve:app

This starts a Vite dev server (with HMR) and the Go backend (with auto-rebuild via air) concurrently.

Community

Join us on IRCNet: #hister or on Discord

Contributing

Check the CONTRIBUTING.md for more information.

Bugs or suggestions? Visit the issue tracker.

Security related issue? See our SECURITY.md

Sponsors

Uruky

License

AGPLv3 or any later version

Extension points exported contracts — how you extend this code

Extractor (Interface)
Extractor extracts content from a Document. [15 implementers]
server/extractor/extractor.go
Provider (Interface)
Provider is the exported interface for OAuth provider implementations. [3 implementers]
server/oauth/providers.go
VectorStore (Interface)
VectorStore is the interface for vector similarity backends. [2 implementers]
server/vectorstore/vectorstore.go
LanguageDetector (Interface)
LanguageDetector detects the language of a text. [2 implementers]
server/document/language.go
Crawler (Interface)
Crawler is the public interface for scraping backends. Crawl performs a BFS traversal starting from startURL, sending di [2 …
server/crawler/crawler.go
ResultExtractor (Interface)
(no doc) [4 implementers]
webui/ext/src/modules/extract.ts
Option (FuncType)
(no doc)
client/client.go
HotkeyConfig (Interface)
(no doc)
webui/app/src/lib/search.ts

Core symbols most depended-on inside this repo

Error
called by 242
server/document/document.go
vtab_set_error
called by 126
server/vectorstore/sqlitevec/sqlite-vec.c
Contains
called by 88
cmd/tui/handle/mouse/mouse.go
exit
called by 78
cmd/root.go
serve500
called by 62
server/server.go
String
called by 44
server/types/types.go
String
called by 41
cmd/tui/model/types.go
Close
called by 41
server/crawler/crawler.go

Shape

Function 971
Method 393
Struct 173
Class 89
Interface 32
TypeAlias 14
Enum 12
FuncType 2

Languages

Go74%
C15%
TypeScript9%
C++2%

Modules by API surface

server/vectorstore/sqlitevec/sqlite-vec.c257 symbols
server/server.go90 symbols
server/indexer/indexer.go63 symbols
config/config.go63 symbols
webui/app/src/lib/search.ts46 symbols
server/vectorstore/sqlitevec/sqlite3.h40 symbols
server/indexer/querybuilder/builder_test.go39 symbols
cmd/tui/model/model.go34 symbols
server/extractor/extractor.go32 symbols
server/oauth/providers.go25 symbols
server/mcp.go22 symbols
cmd/tui/model/types.go22 symbols

For agents

$ claude mcp add hister \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page