# hister | Adam Tauber | Knowledge Base | Instagit

Your own search engine

GitHub Stars: 3.1k

Repository: https://github.com/asciimoo/hister

---

## Articles

### [How to Add a Document to Hister Using the API: A Complete Guide](/asciimoo/hister/how-to-add-document-hister-api)

Learn to add documents to Hister using the API. This guide covers POST requests to /api/add and /api/batch with Go client or raw HTTP calls for efficient document management.

- Tags: how-to-guide
- Published: 2026-09-01

### [Hister MCP Integration: Enabling AI Assistant Features Through Model Context Protocol](/asciimoo/hister/hister-mcp-integration-ai-assistant)

Learn how Hister integrates with Model Context Protocol MCP to enable AI assistant features. Discover its JSON-RPC 2.0 endpoint and secure tool dispatching.

- Tags: how-to-guide
- Published: 2026-09-01

### [How Hister Stores Session Data and Manages Secret Keys](/asciimoo/hister/hister-session-data-secret-key-management)

Discover how Hister stores session data and manages secret keys using a custom database backed store and cryptographically signed cookies. Learn more about this secure session management solution.

- Tags: internals
- Published: 2026-09-01

### [How to Manage Hister Configuration Using Environment Variables](/asciimoo/hister/hister-configuration-environment-variables)

Manage Hister configuration with environment variables. Override defaults easily for containerized deployments without touching YAML files. Streamline your setup today.

- Tags: how-to-guide
- Published: 2026-09-01

### [How Hister Loads Its Configuration and Where Config Files Are Located](/asciimoo/hister/hister-configuration-loading-file-locations)

Discover how Hister loads configuration, its search paths, YAML parsing with Viper, and environment variable merging. Learn where Hister config files are located and how runtime values are initialized.

- Tags: internals
- Published: 2026-09-01

### [How Hister Manages Crawl Job State and Resumability](/asciimoo/hister/hister-crawl-job-state-resumability-management)

Learn how Hister manages crawl job state and resumability. Discover how Hister's state persistence with SQLite or PostgreSQL enables automatic crawl resumption from failure points.

- Tags: internals
- Published: 2026-09-01

### [What Crawler Backends Does Hister Support? A Complete Guide to HTTP, Chromedp, and BiDi](/asciimoo/hister/hister-supported-crawler-backends)

Discover Hister's crawler backends: HTTP for static content, Chromedp for headless Chrome rendering, and BiDi for modern page interaction. Learn which backend suits your needs.

- Tags: deep-dive
- Published: 2026-09-01

### [How Hister Handles File Deletion and Indexing Updates: A Deep Dive into the Source Code](/asciimoo/hister/hister-file-deletion-indexing-updates)

Explore how Hister handles file deletion and indexing updates by examining its source code. Learn about DeleteFile and DeleteByQuery for efficient index management.

- Tags: deep-dive
- Published: 2026-09-01

### [How Hister's File Watcher Uses fsnotify to Monitor Filesystem Changes](/asciimoo/hister/hister-file-watcher-fsnotify-integration)

Discover how Hister's file watcher leverages fsnotify to recursively monitor filesystem changes, debounce events, and trigger callbacks for efficient indexing. Learn about its dynamic directory support and graceful shutdown.

- Tags: internals
- Published: 2026-09-01

### [How Are Local Files Indexed by Hister? A Deep Dive into the Indexing Pipeline](/asciimoo/hister/hister-local-file-indexing)

Discover how Hister indexes local files. Learn about its three-stage pipeline: file discovery, content extraction with parsers, and storage in Bleve search indexes.

- Tags: deep-dive
- Published: 2026-09-01

### [How Hister Re-Indexes Documents When the Embedding Configuration Changes](/asciimoo/hister/hister-reindex-embedding-config-changes)

Learn how Hister re-indexes documents on embedding configuration changes. Discover its fingerprinting method and automatic re-indexing process for seamless updates.

- Tags: internals
- Published: 2026-09-01

### [How Hister Combines Keyword and Semantic Search Results](/asciimoo/hister/hister-combine-keyword-semantic-search-results)

Discover how Hister merges keyword and semantic search results. Learn its unique approach to combining full-text and vector searches for comprehensive results.

- Tags: deep-dive
- Published: 2026-09-01

### [How Semantic Search Works in Hister: A Deep Dive into the Vector Pipeline](/asciimoo/hister/hister-semantic-search-implementation)

Explore Hister's semantic search pipeline: convert queries to vectors, retrieve similar documents from vector stores, and get diversified results. Learn how it works.

- Tags: deep-dive
- Published: 2026-09-01

### [How Hister Enforces Multi-User Isolation: Architecture and Security Model](/asciimoo/hister/hister-multi-user-isolation-enforcement)

Learn how Hister enforces multi-user isolation. It uses UserID filters on database queries to prevent data leakage and allows controlled admin impersonation. Discover its architecture and security.

- Tags: architecture
- Published: 2026-09-01

### [How Search Queries Are Processed in Hister: From CLI to Vector Retrieval](/asciimoo/hister/hister-search-query-processing)

Discover how Hister processes search queries. Learn about the three-layer pipeline from CLI arguments to vector retrieval for efficient document searching.

- Tags: internals
- Published: 2026-09-01

### [How Hister Manages Sensitive Content Detection: Regex Patterns and Configuration](/asciimoo/hister/hister-sensitive-content-detection-management)

Learn how Hister detects sensitive content using regex patterns. Explore its runtime configuration and integration into the indexing pipeline for efficient scanning.

- Tags: internals
- Published: 2026-09-01

### [How Hister Handles Content Extraction and Language Detection](/asciimoo/hister/hister-content-extraction-language-detection)

Discover how Hister extracts content using goquery and detects language with lingua-go for efficient, language-specific indexing. Learn more about its advanced capabilities.

- Tags: how-to-guide
- Published: 2026-09-01

### [Data Flow for Adding a Document to Hister: Complete Pipeline Guide](/asciimoo/hister/hister-data-flow-add-document)

Explore the eight-stage data flow pipeline for adding documents to Hister. Transform raw input into searchable entries with embeddings and update the SQLite database for instant retrieval.

- Tags: architecture
- Published: 2026-09-01

### [How Hister Uses Bleve for Full-Text Search: Architecture and Implementation Guide](/asciimoo/hister/hister-bleve-full-text-search-usage)

Learn how Hister uses Bleve for full-text search. Explore its architecture, custom analyzers, and DSL for faceted, highlighted results in this implementation guide.

- Tags: architecture
- Published: 2026-09-01

### [What Is the Role of the Server Layer in Hister? A Deep Dive into the HTTP Architecture](/asciimoo/hister/hister-server-layer-role)

Discover the server layer's role in Hister. It transforms the indexing library into a production web service, managing HTTP, routing, security, sessions, and static assets.

- Tags: deep-dive
- Published: 2026-09-01

### [How Hister Handles Authentication and Authorization: A Technical Deep Dive into the Go Implementation](/asciimoo/hister/hister-authentication-authorization-handling)

Explore Hister's Go implementation of cookie-based authentication with HMAC tokens and OAuth 2.0 integration. Learn how it enforces authorization via ownership checks.

- Tags: deep-dive
- Published: 2026-09-01

### [How to Set Up Hister as a Self-Hosted Search Engine: Complete Installation Guide](/asciimoo/hister/how-to-set-up-hister-self-hosted-search-engine)

Install Hister as a self-hosted search engine using a single binary. Run the local server and connect the browser extension to index pages locally with an SQLite database.

- Tags: getting-started
- Published: 2026-09-01

### [Complete Guide to Hister CLI Commands for Server and Data Management](/asciimoo/hister/hister-cli-commands-server-data-management)

Master Hister CLI commands for server and data management. Learn to listen, index, import, reindex, and cleanup with this comprehensive guide.

- Tags: how-to-guide
- Published: 2026-08-27

### [How to Use Hister API Endpoints for Search and Configuration](/asciimoo/hister/hister-api-endpoints-search-configuration)

Discover Hister API endpoints for powerful search and server configuration. Learn how to use GET /search and GET /api/config to integrate Hister into your applications.

- Tags: api-reference
- Published: 2026-08-27

### [Hister API Endpoints for Document Operations: Complete CRUD Reference](/asciimoo/hister/hister-api-endpoints-document-operations)

Discover Hister API endpoints for complete CRUD document operations including batch uploads and PDF support. Access the full REST API reference to manage your indexed documents efficiently.

- Tags: api-reference
- Published: 2026-08-27

### [How to Integrate Hister with qutebrowser: Complete CDP Setup Guide](/asciimoo/hister/integrate-hister-with-qutebrowser)

Integrate Hister with qutebrowser using the Chrome DevTools Protocol. Launch qutebrowser with remote debugging enabled and run the Hister companion to automatically index rendered content.

- Tags: how-to-guide
- Published: 2026-08-27

### [How Does Hister’s Browser Extension Work: A Deep Dive Into the Source Code](/asciimoo/hister/how-hister-browser-extension-works)

Explore Hister's browser extension source code to understand its content script, self-hosted server indexing, and background service worker.

- Tags: deep-dive
- Published: 2026-08-27

### [How to Set Up Hister in Multiuser Mode: Complete Configuration Guide](/asciimoo/hister/set-up-hister-multiuser-mode)

Learn how to set up Hister in multiuser mode with this complete configuration guide. Enable multiuser by starting the server with a flag or environment variable and create administrators to manage access.

- Tags: how-to-guide
- Published: 2026-08-27

### [How to Configure Hister for Sensitive Content Detection and Blocking](/asciimoo/hister/configure-hister-sensitive-content-detection)

Learn to configure Hister for sensitive content detection and blocking using regular expressions in config.yaml. Protect your data effectively.

- Tags: how-to-guide
- Published: 2026-08-27

### [How to Define Skip and Priority Rules for Indexing in Hister](/asciimoo/hister/hister-define-skip-priority-indexing-rules)

Learn to define skip and priority rules for indexing in Hister. Master regex patterns to exclude URLs and control processing order for efficient crawling.

- Tags: how-to-guide
- Published: 2026-08-27

### [Site-Specific Extractors in Hister: Complete Guide to Built-In Parsers](/asciimoo/hister/hister-site-specific-extractors-list)

Explore Hister's 11 site-specific extractors for Reddit, GitHub, Twitter, and more. Integrate seamlessly with platforms using built-in parsers for efficient data extraction.

- Tags: how-to-guide
- Published: 2026-08-27

### [Supported Content Extraction Formats in Hister: CLI and HTTP API Guide](/asciimoo/hister/hister-supported-content-extraction-formats)

Explore Hister's supported content extraction formats: text JSON CSV and RSS. Learn how to use them via CLI and HTTP API for efficient data retrieval.

- Tags: how-to-guide
- Published: 2026-08-27

### [How to Enable and Configure Semantic Search in Hister](/asciimoo/hister/enable-configure-hister-semantic-search)

Easily enable and configure semantic search in Hister. Set enable true and point your embedding endpoint to an OpenAI compatible service for advanced search capabilities.

- Tags: how-to-guide
- Published: 2026-08-27

### [How to Configure Sorting Options in Hister Search Results](/asciimoo/hister/hister-search-result-sorting-options)

Learn to configure sorting options in Hister search results using query directives, CLI flags, or API parameters. Master your search schema for efficient results.

- Tags: how-to-guide
- Published: 2026-08-27

### [Search Operators in Hister: How to Use Phrases, Wildcards, and Negation](/asciimoo/hister/hister-search-operators-phrases-wildcards-negation)

Master Hister search operators like phrases, wildcards, and negation. Enhance your searches with exact sequence and partial term matching using `indexer.Query`.

- Tags: how-to-guide
- Published: 2026-08-27

### [How to Use Field Filters in Hister Queries: url, title, and type Explained](/asciimoo/hister/hister-query-field-filters-usage)

Master Hister field filters url title and type to refine your searches. Learn to use wildcards and quotes for precise query results in your repository.

- Tags: how-to-guide
- Published: 2026-08-27

### [Hister Custom Query Language DSL: Syntax Reference and Usage Guide](/asciimoo/hister/hister-query-language-dsl)

Learn Hister's custom query language DSL. Translate human-readable search strings into Bleve queries for powerful full-text search without manual construction. Explore the syntax and usage guide.

- Tags: api-reference
- Published: 2026-08-27

### [How to Define Exclusion Patterns for Local File Indexing in Hister](/asciimoo/hister/hister-exclude-patterns-local-file-indexing)

Learn how to define exclusion patterns for Hister local file indexing. Use Unix-style glob patterns with global and per-directory excludes to customize your index.

- Tags: how-to-guide
- Published: 2026-08-27

### [What File Types Does Hister Support for Local File Indexing?](/asciimoo/hister/hister-supported-file-types-local-indexing)

Discover the file types Hister supports for local file indexing including PDF DOCX Markdown Org-mode and UTF-8 text files for efficient content search.

- Tags: how-to-guide
- Published: 2026-08-27

### [How to Configure Hister to Index Local Files from Specific Directories](/asciimoo/hister/configure-hister-index-local-files)

Learn how to configure Hister to index local files from specific directories. Define paths, filetypes, and patterns in your config yml for efficient indexing.

- Tags: how-to-guide
- Published: 2026-08-27

### [Hister Data Storage Mechanisms: SQLite, PostgreSQL, and Vector Embeddings Explained](/asciimoo/hister/hister-data-storage-mechanisms)

Explore Hister's data storage mechanisms: SQLite, PostgreSQL, and vector embeddings. Understand how Hister manages structured data, embedding vectors, and full-text search efficiently.

- Tags: deep-dive
- Published: 2026-08-27

### [How Hister Uses Bleve for Full-Text Search: Architecture and Implementation](/asciimoo/hister/hister-bleve-full-text-search-integration)

Explore Hister's Bleve full-text search architecture. Discover its multi-index design, language-aware sharding, custom analyzers, and domain-specific query language implementation.

- Tags: architecture
- Published: 2026-08-27

### [Understanding Hister Architecture Components: A Deep Dive into the Self-Hosted Search Engine](/asciimoo/hister/hister-core-architecture-components)

Explore Hister's architecture components. Understand the self-hosted search engine's CLI, HTTP server, persistence, and search modules for efficient data management.

- Tags: deep-dive
- Published: 2026-08-27

### [How to Set Up Hister as a Private Search Engine: Complete Self-Hosted Guide](/asciimoo/hister/how-to-set-up-hister-private-search-engine)

Set up Hister a self-hosted private search engine indexing local files and browsing history. Access your data securely via web or terminal UI. No external clouds involved.

- Tags: how-to-guide
- Published: 2026-08-27

