| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
| |
* feat: add source filter to query language
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* autocomplete source
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
(#2464)
When a bookmark is deleted before the rule engine worker processes its
event, the worker would throw an error, triggering failure metrics,
error logging, and retries. This changes both the worker and
RuleEngine.forBookmark to gracefully skip processing with an info log
instead.
Co-authored-by: Claude <noreply@anthropic.com>
|
| | |
|
| |
|
|
|
|
|
| |
* feat: add separate queue for import link crawling
---------
Co-authored-by: Claude <noreply@anthropic.com>
|
| |
|
|
|
|
|
|
|
|
| |
Track the time from bookmark creation to crawl completion as a histogram
(karakeep_bookmark_crawl_latency_seconds). This measures the end-to-end
latency users experience when adding bookmarks via extension, web, etc.
Excludes recrawls (crawledAt already set) and imports (low priority jobs).
https://claude.ai/code/session_019jTGGXGWzK9C5aTznQhdgz
Co-authored-by: Claude <noreply@anthropic.com>
|
| |
|
|
|
|
|
| |
* feat(import): new import details page
* fix typecheck
* review comments
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The catch block in processOneBookmark was storing raw error strings via
String(error) in the resultReason field, which is exposed to users through
the getImportSessionResults tRPC route. This could leak internal details
like database constraint errors, file paths, stack traces, or connection
strings.
Replace String(error) with getSafeErrorMessage() that only allows through:
- TRPCError client errors (designed to be user-facing)
- Known safe validation messages from the import worker
- A generic fallback for all other errors
The full error is still logged server-side for debugging.
https://claude.ai/code/session_01F1NHE9dqio5LJ177vmSCvt
Co-authored-by: Claude <noreply@anthropic.com>
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
* fix: backfill old sessions and do queue backpressure
* fix typo
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* feat: import workflow v3
* batch stage
* revert migration
* cleanups
* pr comments
* move to models
* add allowed workers
* e2e tests
* import list ids
* add missing indicies
* merge test
* more fixes
* add resume/pause to UI
* fix ui states
* fix tests
* simplify progress tracking
* remove backpressure
* fix list imports
* fix race on claiming bookmarks
* remove the codex file
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* feat(ocr): add LLM-based OCR support alongside Tesseract
Add support for using configured LLM inference providers (OpenAI or Ollama)
for OCR text extraction from images as an alternative to Tesseract.
Changes:
- Add OCR_USE_LLM environment variable flag (default: false)
- Add buildOCRPrompt function for LLM-based text extraction
- Add readImageTextWithLLM function in asset preprocessing worker
- Update extractAndSaveImageText to route between Tesseract and LLM OCR
- Update documentation with the new configuration option
When OCR_USE_LLM is enabled, the system uses the configured inference model
to extract text from images. If no inference provider is configured, it
falls back to Tesseract.
https://claude.ai/code/session_01Y7h7kDAmqXKXEWDmWbVkDs
* format
---------
Co-authored-by: Claude <noreply@anthropic.com>
|
| |
|
|
|
| |
* feat: batch meilisearch requests
* more fixes
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
* feat: add support for redirectUrl after signup
* pr review
* more fixes
* format
* another fix
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
| |
* refactor: migrate trpc to the new react query integration mode
* more fixes
* more migrations
* upgrade trpc client
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* refactor(web): centralize next-auth client-side utilities
Create lib/auth/client.ts to re-export all next-auth/react APIs (useSession,
signIn, signOut, SessionProvider) from a single location. This prepares
for future auth provider replacement by isolating the next-auth dependency.
https://claude.ai/code/session_01RLLL6SquzmegG6wKHdT3Fm
* format
---------
Co-authored-by: Claude <noreply@anthropic.com>
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* feat(cli): Add search subcommand to bookmarks
Add a new search subcommand that uses the searchBookmarks API endpoint.
The command supports:
- Full-text search with advanced query matchers (tag:, is:, list:, etc.)
- Pagination with --all flag to fetch all results
- Sorting by relevance, ascending, or descending order
- Optional full content inclusion with --include-content
- Configurable result limit per page
Example usage:
bookmarks search "is:fav tag:important"
bookmarks search "kotlin" --sort-order desc --limit 20
bookmarks search "title:api" --include-content --all
* fixes + format
---------
Co-authored-by: Claude <noreply@anthropic.com>
|
| | |
|
| | |
|
| |
|
| |
* Autofocus on note open
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
* feat(rules): add "Title Contains" condition to Rule Engine (#1670)
* feat(rules): hide title conditions for bookmark created trigger
* fix typecheck
|
| |
|
|
|
|
|
| |
formatting (#2365)
* fix: Reader settings preview on mobile matches reader view formatting
* address comments
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
* fix: parallelize queue enqueues in bookmark routes
* fix: guard meilisearch client init with mutex
* feat: add bookmark debugging admin tool
* more fixes
* more fixes
* more fixes
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#2353)
* Fix User-Agent key and accept more permissive content types
Some feeds are Content-Type application/xml only and will respond with a 406 error to responses with a header of content type application/rss+xml. This change allows for the more permissive content types application/xml and text/xml to be accepted
Also fixes UserAgent with correct User-Agent
* Fix: Remote trailing whitespace in feedWorker.ts
Fix formatting on HTTP Header for RSS Accceptable Content-Types introduced in commit 6896392
* format
|
| | |
|
| | |
|
| | |
|
| | |
|