Home assistant add-on: Karakeep
I maintain this and other Home Assistant add-ons in my free time: keeping up with upstream changes, HA changes, and testing on real hardware takes a lot of time (and some money). I use around 5-10 of my >110 addons so regularly I install test machines (and purchase some test services such as vpn) that I don't use myself to troubleshoot and improve the addons
If this add-on saves you time or makes your setup easier, I would be very grateful for your support!
Addon informations
Thanks to everyone having starred my repo! To star it click on the image below, then it will be on top right. Thanks!
About
Karakeep is a bookmark-everything app with a touch of AI for the data hoarders out there. It stores content, screenshots, and metadata with search powered by Meilisearch.
This addon is based on the official Karakeep Docker image.
Configuration
Webui can be found at <your-ip>:3000.
Options
| Option | Type | Default | Description |
|---|---|---|---|
NEXTAUTH_SECRET |
password | Secret key for authentication (auto-generated if left blank). | |
NEXTAUTH_URL |
str | Public URL used by NextAuth (optional). | |
DISABLE_SIGNUPS |
bool | false |
Disable new account signups. |
MAX_ASSET_SIZE_MB |
int | 4 |
Max asset upload size. |
OCR_LANGS |
str | OCR language codes (comma-separated). | |
OCR_CONFIDENCE_THRESHOLD |
int | OCR confidence threshold (0-100). | |
OPENAI_BASE_URL |
str | Custom OpenAI base URL. | |
OPENAI_API_KEY |
password | OpenAI API key. | |
OLLAMA_BASE_URL |
str | Ollama base URL. | |
INFERENCE_TEXT_MODEL |
str | Text inference model name. | |
INFERENCE_IMAGE_MODEL |
str | Image inference model name. | |
EMBEDDING_TEXT_MODEL |
str | Embedding model name. | |
INFERENCE_CONTEXT_LENGTH |
int | Inference context length. | |
INFERENCE_LANG |
str | Language used for inference. | |
INFERENCE_JOB_TIMEOUT_SEC |
int | Timeout for inference jobs. | |
CRAWLER_DOWNLOAD_BANNER_IMAGE |
bool | true |
Download banner image during crawl. |
CRAWLER_STORE_SCREENSHOT |
bool | false |
Store screenshot during crawl. |
CRAWLER_FULL_PAGE_SCREENSHOT |
bool | false |
Capture full-page screenshots. |
CRAWLER_FULL_PAGE_ARCHIVE |
bool | false |
Store full-page archive. |
CRAWLER_JOB_TIMEOUT_SEC |
int | Crawler job timeout. | |
CRAWLER_NAVIGATE_TIMEOUT_SEC |
int | Navigation timeout. | |
CRAWLER_VIDEO_DOWNLOAD |
bool | Enable video downloads. | |
CRAWLER_VIDEO_DOWNLOAD_MAX_SIZE |
int | Max video size (MB). | |
CRAWLER_VIDEO_DOWNLOAD_TIMEOUT_SEC |
int | Video download timeout. | |
CRAWLER_ENABLE_ADBLOCKER |
bool | true |
Enable ad blocking in the crawler. |
CHROME_EXTENSIONS_DIR |
str | /usr/src/chrome/extensions |
Extensions directory for headless Chromium. |
MEILI_MASTER_KEY |
password | Meilisearch master key (auto-generated if left blank). | |
MEILI_ADDR |
str | Meilisearch URL. | |
BROWSER_WEB_URL |
str | Chromium remote debugging URL. | |
DATA_DIR |
str | Data directory (leave default). | |
TZ |
str | Etc/UTC |
Timezone. |
Extensions for headless Chromium
This add-on loads extensions in headless Chromium with the --headless=new flag. The defaults are downloaded automatically during the image build and refreshed each time the add-on starts into /usr/src/chrome/extensions (non-persistent).
You can override the base folder with the CHROME_EXTENSIONS_DIR option to point to a host-mounted directory if you prefer to manage extensions manually. Any missing extension folder is skipped at runtime.
Custom Scripts and Environment Variables
This addon supports custom scripts and environment variables through the addon_config mapping:
- Custom scripts: See Running Custom Scripts in Addons
- env_vars option: Use the add-on
env_varsoption to pass extra environment variables (uppercase or lowercase names). See https://github.com/alexbelgium/hassio-addons/wiki/Add-Environment-variables-to-your-Addon-2 for details.
Installation
The installation of this add-on is pretty straightforward and not different in comparison to installing any other Hass.io add-on.
- Add my Hass.io add-ons repository to your Hass.io instance.
- Install this add-on.
- Click the
Savebutton to store your configuration. - Start the add-on (secrets are auto-generated if left blank).
- Check the logs of the add-on to see if everything went well.
- Open the webUI and complete the onboarding.
Support
Create an issue on GitHub if you need support.