Hacker News

Top stories

Live mirror
30 storiesupdated just nowView source snapshot
  1. Claude Code now reads AGENTS.md if there is no Claude.md(claude.com ↗)
    79comments
  2. Android 17 is the first since 3.x to add new APIs without releasing to the AOSP(grapheneos.social ↗)
    165comments
  3. Y Combinator's PAC is throwing money at Republicans across the country(gazetteer.co ↗)
    3comments
  4. Saving another 100TB of RAM(cloudflare.com ↗)
    26comments
  5. Cloudflare Quick Tunnels(cloudflare.com ↗)
    213comments
  6. Xcode 27.1 Beta Release Notes(developer.apple.com ↗)
    54comments
  7. Cache-to-Cache: Direct Semantic Communication Between LLMs (2025)(arxiv.org ↗)
    10comments
  8. Photon-Emission-Guided Laser Fault Injection Enables RP2350 Secure Debug(ledger.com ↗)
    40comments
  9. How to Write with an LLM(sockpuppet.org ↗)
    235comments
  10. Show HN: Cactus Needle 3: 8-29MB automation models can match DeepSeek V4 Flash(cactuscompute.com ↗)
    70comments
  11. OpenJev(openjev.com ↗)
    234comments
  12. Cyclomatic Complexity in C#(ndepend.com ↗)
    3comments
  13. The Implications of Linguistic Illegibility for LLM Security(arxiv.org ↗)
    13comments
  14. Two parallel neural ectoderm progenitors contribute to the developing brain(newscientist.com ↗)
    49comments
  15. The first new cat species discovered in 100 years(nationalgeographic.com ↗)
    28comments
  16. From Geometry to Algebra and Back Again: 4000 Years of Papers (2023) [video](youtube.com ↗)
    discuss
  17. A search-and-inference database from scratch in pure Zig(antfly.io ↗)
    14comments
  18. C++26: Trivial infinite loops are no longer undefined behaviour(sandordargo.com ↗)
    160comments
  19. How SpaceX streamlined the Raptor engine(construction-physics.com ↗)
    19comments
  20. I vibed a proof of Conway's conjecture(overreacted.io ↗)
    172comments
  21. Minimal Phone 2(minimalcompany.com ↗)
    134comments
  22. Inside ZCode: Silently uploading your Git history to the cloud(ferstar.org ↗)
    88comments
  23. Korea raises data breach fines to 10% of revenue(koreajoongangdaily.com ↗)
    59comments
  24. Warez: The Infrastructure and Aesthetics of Piracy (2021)(archive.org ↗)
    12comments
  25. US Military had close call after using AI for hallucinated intelligence report(cnn.com ↗)
    261comments
  26. Cekura (YC F24) Is Hiring(ycombinator.com ↗)
    discuss
  27. Border agents can search cellphones without a warrant or reasonable suspicion(lawandcrime.com ↗)
    119comments
  28. Show HN: Ax-check.com – Can agents use your product?(ax-check.com ↗)
    25comments
  29. Mathematicians Build Long-Awaited Graph Sandwich(quantamagazine.org ↗)
    15comments
  30. Show HN: Scry, programmable internet search w/ congestion pricing(scry.io ↗)
    16comments

Hister: A private search engine for the pages you visit and the files you keep

691 pointsby 1d agogithub.com
187 comments
1d agoHN ↗

Integrate it with linkwarden so it searches the bookmarked pages.

1d agoHN ↗

Thanks, that looks interesting, I will test it out and see if it continuously sync or must be manually imported from time to time, or if it can replaces linkwarden entirely. My linkwarden instance also saves as a pdf not just html and bookmarks are in GB in size, if hister does it more efficiently it’s even better.

1d agoHN ↗

I had the same problem for a very long time but it is largely solved now. I started to simply ask chatgpt "hey I read something about x, y month ago but can't find it now". There is a surprisingly high chance chatbot can just give the exact answer back to me, usually with extra interesting reading materials as a plus.

1d agoHN ↗

Is all your browsing history already with chatgpt or something?

This has an MCP server specifically so a workflow like that would work for you. This is just made to gold the data, and I'm a human accessible way should your AI fail you

1d agoHN ↗

No I don't share anything with chatgpt. But I do have a $20 subscription, if it matters. I feel It's just capable enough to find what I want from my usually vague and inaccurate description.

1d agoHN ↗

Or something similar enough to what you wanted that you don’t notice it’s a different thing. That’s awful.

1d agoHN ↗

And now you are even more dependent on OpenAI...

You didn't solve the problem, you are just trading pain points.

1d agoHN ↗

Nothing about this depends on the provider, you could spin up a local Qwen and give it a search tool like SearXNG or something. At this point local models are more than good enough for simple tasks like that. Using ChatGPT is just (usually) faster and simpler

1d agoHN ↗

There should be no real vendor lock in in my opinion. You can ask the same question with pi + qwen (or any harness + good enough model) with internet access and it will work. Chatgpt is just one option came in handy.

1d agoHN ↗

"Goddammit, I'm wholly dependent on Merriam-Webster, what ever am I going to do".

1d agoHN ↗

Google Chrome did this in 2008. Full-text search over all visited pages, stored offline. It was very useful and I miss it.

Nobody seems to remember it, even though it was a headline feature. Was removed in 2013, I think due to technical constraints.

Will definitely try this.

1d agoHN ↗

I think due to technical constraints.

I think due to shareholders wanting new sportcars. The offline pages don't show Google Ads.

1d agoHN ↗

Now Chrome can't even remember what addresses you went to more than 90 days ago. It's such a nerfed browser.

1d agoHN ↗

Still boggles my mind that people went from ridiculing people who installed Ad companies browser toolbars, to actually running their browser.

...And don't give me the tired "it was faster". this horse was already beaten to death and it was 110% marketing.

1d agoHN ↗

When chrome was literally first released it was in fact faster than IE and Firefox, by quite a lot, and had some nice features that neither had, too. But that gap didn't last for long.

1d agoHN ↗

It was so much faster you could not believe it. It was a revelation and even though "degoogling" was already a thing, Chrome was so much better than the rest that you just had to use it. Tabs actually worked without crashing your PC.

The risks were clear from day one but Google and Chrome were great to both users and devs, and it stayed like that for a long time.

1d agoHN ↗

Not sure if the same product. I think the one I used was Google Desktop.

I even hacked it for a company I was working for at the time: I installed it in a machine that had a lot of pdfs from some other client company of them.

I don't recall the exact details, but I did some sort of proxying between the Microsoft Web Server that came with NT? at the time and G Desktop, and then an entire team of first support agents had almost instant search across all those docs. Good times.

14h agoHN ↗

Now we have no browser capable of searching in anything - not even Firefox. I routinely try, in several browser, to find a tab among open tabs, a bookmark among open bookmarks, or a history entry (both from "omnibox" and dedicated history pane), and it never seems to find it - not by name, not by URL - until it gets a 100% unique match.

It's like there's a timer or a cache somewhere, with aggressive limit, saying "only scan these top 100 results and then abort if it takes more than 10 ms to findf anything", or something. Making this completely useless.

That's on top of occasional deletion of browsing history past few weeks.

14h agoHN ↗

Have you tried searching with @tabs, @bookmarks or @history? It works reasonably well for me.

10h agoHN ↗

Yes. Try it regularly, against inputs I know correspond to things visited or bookmarked within last couple months. Almost never gives the actual result unless it's literal full-string match. That's why I'm complaining.

12h agoHN ↗

Maybe stop using the mickey mouse browsers? I mean Firefox is pretty much a lost cause.. unless you start using extensions. I agree those are basic features that should be built-in. In qutebrowser I use them reliably all the time. E.g press T (keybinding for :tab-focus command) - type keyword (matches against tab ID, page title, page URL & the tab's process ID) - press Tab - menu is populated with results - cycle through them using Tab/Shift+Tab - press Enter to jump to it. Similar workflow for history, different bookmark types, etc. History can also be loaded as an HTML page and jumped through with regex, etc. If you want to stick with

1d agoHN ↗

This is really cool. I like the idea of combining it with a offline Wikipedia cache.

1d agoHN ↗

I've been using this since the last time it came up on here. I don't have it index every page I visit, I use the browser plugin to tell it to index specific ones. It is useful for sure, but I think it will really shine once I've been using it long enough for it to build up a bigger index of things that are old enough that I've actually forgotten about them.

1d agoHN ↗

Ohi, author here! Thanks for posting Hister. Feel free to A.M.A. My first free software search project was Searx, a privacy respecting metasearch engine, but because of the limitations of the metasearch concept, I've decided to take a different approach.

Hister builds a personal search index from pages you visit, bookmarks, browser history, local files, and crawled websites. It stores extracted content with offline result previews, so information remains searchable even when the original page changes or disappears. It supports full text and semantic search, can run entirely on your own machine, and includes a web interface, command line tools, and an MCP endpoint for assistant integrations.

Website: https://hister.org/

Tiny read-only demo: https://demo.hister.org/

Ps.: It looks like our name conflicts with a registered trademark in the US. The owner of the other project has asked us to change it, so we’ll probably need to comply sooner or later.

Name suggestions are welcome! Ideally, the new name should be relatively short, sound good, and have an available .org domain.

Thanks!

1d agoHN ↗

Thanks so much for this, I'm using it all the time. I self host a few things, but I'm using this the most.

1d agoHN ↗

Unfortunately, it is still considered too similar from a legal standpoint.

1d agoHN ↗

In that case, clipshot.org is also available.

21h agoHN ↗

historea.org is available.

It sounds like history, storage and ethereal at the same time.

15h agoHN ↗

that exactly how the Greek word sounds :)

ιστορία, if you wanna copy paste.

and yes, the English word comes from the Greek word!

20h agoHN ↗

I doubt it. Trademark “infringement “ only happens when the two parties compete in the same space. I think if the other party is the music party game, you’re pretty much in the clear. They may still sue you and lose unless you cave.

8h agoHN ↗

Nothing stopping them from threatening an open-source dev. The ""recent"" incident of Hoarder rebranding to Karakeep comes to mind.

1d agoHN ↗

Are you aware of ArchiveBox?

https://archivebox.io/

What does Hister do differently? Search seems like a major differentiator, I'm wondering if leveraging the existing archivebox project for archival and implementing good search on top would be more efficient

1d agoHN ↗

The main difference I see is Hister focuses on creating an active knowledge base and finding information quickly, while ArchiveBox focuses on preserving web content for the long term.

19h agoHN ↗

Thanks for answering. Do you think these dovetail? Both archive everything you browse, so that's common functionality that could be factored out. I only want one archive, having two separate archives because one focuses on search and the other on long term archival is inefficient. What do you do for long term archival - or do you not have this use case?

1d agoHN ↗

Does it work accross multiple computers? Ideally the service runs on a linux box on my tailnet, and my windows and mac systems share the same server.

Edit: I RTFD - and it seems yes.

1d agoHN ↗

Sure, as long as you (and the browser extension) can reach the server, it can be used from as many machines as you want even in a multi-user setup.

1d agoHN ↗

"Optional global or personal access token used to authenticate extension requests."

Looks like you can even set authentication up so you can run it at home but connect while you're away too...

1d agoHN ↗

Thanks for making Hister, I've been using it for a few days (~7k docs) and I'm impressed so far.

1d agoHN ↗

Histerekishi / Histereki - れきし/歴史 means history in Japanese. reki れき/歴 is a suffix which means (history of)

Histeri

MyHister(i)

Hyster(y)

Also, I have been using your app for two months now. I have only had to rely on it a few times, but each time I did it worked beautifully. Thank you.

1d agoHN ↗

"It looks like our name conflicts with a registered trademark in the US. "

So? Where are you based? For what class was the trademark filed? When was it filed?

I doubt that he has any leverage, but I don't know the background.

1d agoHN ↗

Thanks so much for creating this. Installed last time it was posted and have been loving it. The MCP server and extensions and userscripts are great QOL additions, as well. Always wondered if something was out there like this and you answered my prayers! New name suggestion: MisterHistory

1d agoHN ↗

"No mandatory cloud - A complete personal setup can run on one local machine."

How does it sync via several computers?

19h agoHN ↗

I built something similar at the start of the year, using tailscale for auth (multi user on my tailnet/home network) and for access wherever I was, whether at home or on the road (all compute/storage was on my Mac mini.) Worked a treat.

1d agoHN ↗

Would like: * Local web page interface or even browser UI element (since extension needed anyway) * Ability to add notes to history * Flag if bookmarked, allow filtering "bookmarks only" * Keep old versions of pages * Human-readable text diff vs current live page

1d agoHN ↗

is this like a pihole? is there a design difference you are going for here?

1d agoHN ↗

Hi @asciimoo , related to a name suggestion, how about something like...

* chronilog.org ...as in, a log of one's chronicles.

* And if you will include this into KDE, then can use a 'k' instead, such as kronilog.org :-)

Both seem to be available. ;-)

1d agoHN ↗

This is a great suggestion, thanks! I'll definitely add it to the list of candidates. My plan is to do a vote on our social platforms if we have a few decent candidates.

1d agoHN ↗

Genuinely curious, how could one fight pre-emptive domain squatters once any candidate is publicly suggested?

When I have suggested names in other situations like this in the past, I spent the ~$10 to get the domain, and offered the transfer the free. Of course, not everyone would do this.

14h agoHN ↗

What about Krionicle? References Chronological Chronicle, cryo- (freezing knowledge for later use), and a robotic toy from 2001

12h agoHN ↗

Unless you are really strapped for cash, register all the candidates before you start that voting.

1d agoHN ↗

Hi asciimoo, seems like this is the second time Hister is hitting the HN front page in a month, so congrats on the success!

Question for you: For the less tech savvy of us on here, is there any chance Hister can be can hosted on something like Pikapods? https://www.pikapods.com/

1d agoHN ↗

Yes, that's something I'd like to support. The main missing piece for a user-friendly hosting option such as PikaPods is a configuration UI. At the moment, customizing Hister requires editing a configuration file, which isn't practical for this kind of hosted service.

1d agoHN ↗

Appreciate the response! I'll be eagerly following Hister's progress. For now, I've settled on a mix of Instapaper and using SingleFile uploads to Dropbox.

1d agoHN ↗

The extension captures the content of the opened tabs, it does not create new requests. If you open both, it captures both.

1d agoHN ↗

You may be the first "search engine" capable of indexing instagram and other closed sites.

1d agoHN ↗

Exactly, this is the biggest advantage of the extension. It is fully invisible for the websites, so no captcha, anti-bot protection, no authentication issues, every common bottleneck of a classic crawler is solved by the browser/user.

14h agoHN ↗

Oh, I haven't considered the possibility of indexing things like Instagram or Discord with this. I am now much more interested than before

1d agoHN ↗

hisect (history and bisect)

Seekfold (seek and manifold)

Seekdex (seek and index)

1d agoHN ↗

I gather rss feeds from the websites I visit and it's hard to express how interesting they are. The gut says it borderlines some random collection but that couldn't be more wrong. I also enjoyed YaCy, that project should have a good amount of ideas for you. I kinda end up assigning more and more bandwidth until it gets in the way and I forget to enable it again. The turtle button on some torrent clients is a good invention.

1d agoHN ↗

The thing I most struggle with in this domain is recalling information from videos. I watch/listen to a lot of hour+ lectures and I rely on this website deeply:

https://filmot.com/

It lets you search YouTube transcripts. If you could somehow integrate video transcripts into this tool, I would be extremely interested in trying it out

22h agoHN ↗

Been using hister for a number of weeks now; i'm coming across sites whose content would be better handled with a custom extractor; but it looks like extractors need to be bundled into the build in order to work? Is that correct?

Put another way, i can't write an extractor for Reuters and then point a config to it from my current hister binary?

20h agoHN ↗

I love Hister so much.

I ran it for most of this year but encountered some problems with it I couldn't fix and thus have not had it hooked up to anything since June when I finally couldn't take it anymore.

In short, I serve a good number of apps from an Nginx reverse proxy. Maybe 25% of them are exposed to the WWW while everything else is limited to the LAN but I still get valid TLS for all of it.

Hister, though, kept breaking my whole reverse proxy and I could never figure out EXACTLY why so I could fix it. After running fine for a few days, it would hog the whole server and everything else proxied by Nginx would become unreachable. I tried tuning the config for it to no avail.

One day when I'm less lazy, I'll probably hook it back up via it's LAN IP to every machine I've got again. I REALLY liked that I could log my browsing history from any machine anywhere in the world without a VPN and I was really disappointed when I had to disable its config in Nginx.

I still use it a lot to go find stuff I flagged as important quickly.

I'm curious if this is something you've heard of before, or if I've got a one off problem here.

I even ported the config to a brand new VM with NGINX and still had the same problem.

15h agoHN ↗

Are you sure it was the proxy and not JavaScript in your browser? I've seen similar behaviour from one particular website where using it in a certain way causes it to process a lot of data slowly and block the main thread. This somehow persisted across tabs, even if I closed all the tabs and tried again that site was still hanging until that process finished. But if I used incognito or another browser it would he responsive.

It might be something similar if all of your sites are subdomains. Try incognito at the same time next time

5h agoHN ↗

That's a good call out but it is something I tested originally and ruled out.

I've got some applications used daily by friends all over the world and the services would all become unavailable to them when this started happening. Only fix I found was restarting NGINX service and then it could happen again an hour later or 3 days later. Once I removed the proxy config for Hister from the service, the issue never happened again.

I'll repro the issue and get the details intoa. Github Issue this weekend.

14h agoHN ↗

I've never experienced/heard similar behavior. Could you open a GitHub issue or join our Discord/IRC to identify the root cause?

5h agoHN ↗

Yes, I should have some time this weekend to reproduce the problem and provide useful information for ya'll to look at...even if it's just to determine the problem is for me to fix and not a bug with Hister.

16h agoHN ↗

Regarding the name, how about Ascimo or Askimo? :)

15h agoHN ↗

Whatever you do, try not to chose a name which collides with nostrodamus' predictions about .. (ok, he actually used "Hister" to refer to the Danube it seems, but popular legend has another take which is .. unfortunate)

14h agoHN ↗

I will definitely try this in my home-lab!

And for the name, what about "Historex" (although already taken as well) o "Histearch", mesh-up of "history" and "search"?

13h agoHN ↗

My suggestion is Lookdown. Kind of a play on words reminiscent of Markup/Markdown --> Lookup/Lookdown. But also a lookdown is a distinctive looking fish with a cute concave profile so you've got an instant mascot.

10h agoHN ↗

Call your project hipster. Just a one letter change ;-)

8h agoHN ↗

Hyster (not Hister as far as I can tell) is a registered trademark in the US. Regardless:

"The HYSTER trademark is filed in the category of Education and Entertainment Services" [0], so you can safely ignore any demands to rename, as it doesn't conflict. Embarrassing for them that their lawyers don't understand even the basics of trademark law.

Edit to clarify as some folks here are as confused as sHyster's lawyers: Trademarks are not exclusive, they're restricted to a category or categories. You can be Apple in the category of computers, but not in music if there's already an Apple in that category (unless you have $500M to spare [2]).

  [0] https://www.trademarkia.com/hyster-77843354
  [1] https://tmsearch.uspto.gov/ for a more authoritative source than [0], but it doesn't allow deep linking
  [2] https://en.wikipedia.org/wiki/Apple_Corps_v_Apple_Computer
5h agoHN ↗

Embarrassing for them that their lawyers don't understand even the basics of trademark law

Or more likely do, but hope that you don't...

7h agoHN ↗

Not a Lawyer, but Hister is a common, old word. Unless you're in the same business as the trademark holder, I would think you have grounds to continue? I note you have the domain name registered, and any deep-pocketed hostile trademark owner would already have reclaimed that. Unfortunately, legal advice is expensive, and the system is open to abuse.

1d agoHN ↗

I am happy to see the idea of history search more. I am on my 3rd version of my own. the use of local LLMs has made it easier to support features like weekly summarized and recipe extraction.

I like the search ui. my projects become functional but never polished. https://github.com/sbeckeriv/memoir

1d agoHN ↗

I've been trying this out the past few weeks. I was literally just in there searching for a link 5 minutes ago.

It's badly needed, and so far it's working well for me.

1d agoHN ↗

Your own search engine — Hister is a private search engine for the pages you visit and the files you keep.

Is there any site/project that works as a fully customizable personal front-end to all other SERPs?

When I search for something, I always want a link to the best Wikipedia result. This should always be in the same place and have a giant icon/picture.

Then there could be easily clickable links to the SERP pages for Google, DDG, etc. for that query.

A big link to route it to your favorite LLM.

Seems like you could have a really useful "homepage" for all searches that sat in front of all the other sites. It could be local only and would not require indexing the web. Also wouldn't be a files search thing, as Hister appears to be.

1d agoHN ↗

Kind of related to this in that I built it to hoard knowledge from web pages I've visited along with implementing a Karpathy-style LLM Wiki, but the knowledge is collected automatically from sources I browse.

I have it up on GitHub, but I don't think anyone should use my implementation.

Loosely, what I built:

* On each of my machines I have a cron job running that looks at all my web browser history (usualy it's inspecting the brower's SQLlite across firefox and chrome). If it matches my rule list: hacker news stories, certain reddits, etc. it'll grab the page, convert to markdown and drop in my Obsidian Vault incoming.

* It has a whole de-duping architecture since I might open the same page on multiple machines. Uses the CloudFlare SQLITE D1 storage for tracking the processed links.

* it'll then trigger the LLM to do some Karpathy wiki style taxonomy assignment to the articles, organize them, create an index etc.

It's then available for my "bot" stuff to do writings for me.... I will probably write more about it at some point. I'm not certain it's totally useful and not just a yak-shave on hoarding knowledge.

Ai-drafted article on this [1]

Example AI-Drafted article based on some discussions the other day on Ollma vs LLama.cpp [2]

[1] https://taude.xyz/posts/how-archivore-turns-browsing-into-a-...

[2] https://taude.xyz/posts/skip-ollama-run-llama-cpp-directly-o...

1d agoHN ↗

Why don't you think people should use your implementation? Just curious

1d agoHN ↗

I guess he meant it in a "look, I made a cool thing that is useful to me, but don't go throwing away your current organizational method just yet nor leave it open to the internet" way.

1d agoHN ↗

I vibed most of it (and though I like the code that was output, I coached it with some custom skills). If I were to share it out, I'd probably clean up some of the tools to make their interfaces smaller and cleaner. And make the docs a lot simpler. I'd probably also create some form of dashboard so you can see what's happening (all the docs scraped and saved), etc.

EDIT: it's also the type of thing that feels very personally customized for my needs. I encourage you to build something similar on the idea. Much like how Karpathy Wiki was suggestive and not a runtime to just use...

1d agoHN ↗

I feel like this could be useful for my Karpathy-style LLM Wiki, but then again I think, in this day and age most of what I'm reading about is outdated in a few weeks. Not only are the tools/methods coming and going, but the ones that stick around drastically change. It would probably turn into a dump of antiquated markdown that could cause confusion.

As far as the need for private search, well, I've already searched for or visited those pages, so...

1d agoHN ↗

Yeup, as I mentioned, it kind of feels like a Yak-shave....but it was fun building it, and gave me some experience with agentic coding and new technologies I don't normally work with. It's nice to dig into for some research.

The biggest win was the realization that both firefox and chrome maintain all the links you visit in a very queryable SQLite database. I've been poking at that for a lot of custom tools, like WHAT JIRA tickets am I paying attention to this week, etc....

1d agoHN ↗

Webpages used to have meta keyword tags until spammers hijacked them for irrelevant keywords.

I think browsers can play a part in building a local search index for URLs based on those keywords the page declares and cross verify/accept only those that are in prominently visible content, or may be delegate to an external engine(like LLMs) via an extension etc. This is particularly useful for cases where full text indexing is not feasible or desirable.

I doubt Google will ever add such feature in chrome though.

1d agoHN ↗

Meta keyword tags have always sucked even without malice. Because they're invisible, authors frequently forget to update them, copying <head> boilerplate between documents.

1d agoHN ↗

"I can't practice minimum quality control as a web dev" doesn't sound like a problem with the standard.

14h agoHN ↗

When designing a standard like this you need to apply systems thinking.

The poor data quality is a problem for anyone who wants to use the tags, which has seen everyone almost universally reaching for other solutions. Search engines have preferred anchor tags, bookmarking solutions have applied user tagging.

With keyword tags it's been a vicious circle of poor data quality and neglect since day one. Even in documents from the early 1990s when people were really trying, the data quality is inconsistent at best.

12h agoHN ↗

Did irrelevant keywords ever work for the spammer? You could add "naked" as a keyword because it had a lot of searches compared to "compiler". Now what happened to those looking for naked cats when they got to your website about code compilation. It's not like they would stop and think "oohh I'll look at this instead"

1d agoHN ↗

have it up on GitHub, but I don't think anyone should use my implementation.

ditto, it's an experiment in near-vibe coding, which also uses Typesense for queries using BM-25 & RAG with fusion. I have the web search/fetch/crawl features persisting raw intermediate values (api responses, search result lists) because I might re-use them one day... at least good for auditability if I need to

related, it is using Hister author's prior project SearXNG as one of the search providers

1d agoHN ↗

I was fascinated by hister initially, but now I'm fixated on your URL.

1d agoHN ↗

Hah, I bought that URL a long time ago, mostly as an in-joke between me and some friends since Bruce Willis was my favorite actor. Then later I needed a dev URL for some work I was doing, and the only one I had free was brucewillis.sexy. Then I kept making subdomains on it for different things and eventually it just became the default.

I like it.

1d agoHN ↗

I attain this without involving an untrustworthy third party, with one simple trick: Print to PDF.

Every single web page I’ve found interesting, since the advent of the Web, I have printed to PDF and stored locally for my own personal reference.

Something like 80,000+ files - my own copy of my own Internet - indexable, searchable.

Available offline. Something to read when I am far out to sea.

There is no need to involve third parties in your Internet history - no matter how trustworthy they seem to want to appear.

Print to PDF, and you’ve got everything you need, safe and sound.

1d agoHN ↗

Not a bad idea, and I used to save lots of web pages as PDFs in the distant past, but I've noticed that a large percentage of sites will not print out correctly as a PDF these days. I see myriad problems these days: the page is truncated on the right (no matter how much you zoom out), or all pages come out blank after the first page, or the PDF gets rendered as an image (taking many megabytes per page) rather than as text, or the outer frame prints but inner frames with the actual content are missing.

The more "modern" the site, the worse it is. Surprisingly, government websites often print correctly since they've done the least amount of work to make the site modern looking.

1d agoHN ↗

Very true.

Even full page screenshot doesn’t always capture the non visible part of the page (below the viewport).

1d agoHN ↗

a large percentage of sites will not print out correctly as a PDF these days.

Reader mode.

1d agoHN ↗

Except search. I want search. Going to try this project.

1d agoHN ↗

Yeah, about search:

    $ pdfgrep -r -i -n -H "your mom" ~/PDFArchives/

Very effective, very fast, very private. Bonus points if the PDF filename itself is derived from a well formulated <title> tag, such that you can just use “ls” ..

1h agoHN ↗

Yes, but that's a solution for the stuff you consciously save. While this is a solution for stuff you see but decide it was interesting weeks after you closed that tab and you only have a vague memory of what it was about.

23h agoHN ↗

You could combine it with existing products like DevonThink that are meant for researchers organizing documents and provide tagging, semantic search, similarity graphs, and so on.

1d agoHN ↗

I'd like to use it, but I'm hesitant to use anything that isn't a reviewed and approved package in my Linux distribution. Even if the chance is 1% that a program I download has malware or security problems that even the author doesn't know about (eg., due to libraries used), odds are that my system's going to be compromised if I run 50 such programs. This extends to browser add-ons, bookmarklets, and extensions too.

How do other people handle this dilemma?

Even solution I can think of involves are a great amount of extra work.

1d agoHN ↗

Clone the repo and ask your llm of choice to audit any security risks

1d agoHN ↗

And then build from source. And make sure it doesn't auto-update so no new malware gets in. This is my idea of a lot of extra work.

1d agoHN ↗

Building from source is nowadays writing one sentence in a chat box. Your idea of extra work is either unbelievably lazy or perhaps outdated by a few years.

1d agoHN ↗

After that I run them in containers, no network access, ro filesystem.

8h agoHN ↗

Not very practical for a solution that requires a browser plugin. The browser is where most of my interesting data is.

1d agoHN ↗

good luck auditing all transitive dependencies

1d agoHN ↗

Distro maintainers aren’t infallible either. At the end of the day it’s up to you to decide where and how much trust you place and do your due diligence from there.

One thing that can be helpful when reasoning about things like this is figuring out what your actual threat model is. What does system compromise look like to you? Data exfiltration, arbitrary code execution, something else?

1d agoHN ↗

I think the best answer lies somewhere in compartmentalization and fine-grained permissions. In this case: run it in some kind of secure container which has access to read browser history, and write to its database, but definitely does not have network access.

Unfortunately there's no one-size-fits-all solution for this yet, but there are a lot of groups attacking it from different angles: Qubes, GrapheneOS, Firejail, Bubblewrap, Android/iOS app permissions, Landlock, App Sandbox, etc.

21h agoHN ↗

...run it in some kind of secure container which has access to read browser history, and write to its database, but definitely does not have network access.

We should be doing this with all software, regardless of provenance, anyway. Least privilege applies to servers just as much as it does to users. Even if the software isn't untrustworthy you can be it has vulnerabilities.

My first go-to is network segmentation because I spend most of my time doing networking work. For every vendor who has shit-talked me to Customers ("Wah, wah! Your networking vendor is making this so much harder because they want us to enumerate our traffic!") I have concrete examples I can cite when attacks were stopped by network segmentation (preventing shellcode from downloading a payload, preventing C2 communication, firing off alerts when unexpected network traffic starts coming out of a host, etc).

Beyond network segmentation, I am very suspicious of software that needs to run as a privileged user. So many attacks get easier when privilege escalation in the host OS is already done for you.

22h agoHN ↗

And it's a proper way to use computer nowadays.

Apart from high-overhead solutions like VMs and containers, there are seamless and maintenance-free solutions (after the initial setup):

- systemd service hardening [0] [1]

pretty powerful, but it's a blacklist approach - whack-a-mole

- AppArmor [2]

Whitelist, proactive approach. Contrary to SElinux, it's not a programming language, and could be grasped pretty quickly. I made a tool to easily convert AA logs into usable rules. [3]

[0] https://github.com/alegrey91/systemd-service-hardening

[1] https://github.com/desbma/shh

[2] https://presentations.nordisch.org/apparmor/

[3] https://github.com/nobody43/apparmor-suggest

14h agoHN ↗

How do other people handle this dilemma?

For me: consider this a form of paranoia and ignore it, while worrying more about cleanup costs of non-vetted packages.

Like, even if there is 5% chance that a program I download will start downloading global python or node packages, odds are within a year I'll deal with couple that have mutually incompatible requirements and are impossible to run without more VM surgery than I have patience for, and that I'll discover this only after a botched installation bricks software that used to work before.

But that's solvable with less extra work. Just throwaway containers. With no hand-wringing about read-only access or isolating it from network, because my threat modeling doesn't consider loss of privacy or any data leak from my personal local side to be realistic or impactful threat event (I mean, everything that matters is in someone else's cloud and by design not trivial to access) - OTOH, it assigns great magnitudes to loss of personal time.

1d agoHN ↗

Bonus point for having an IRC channel for community forum.

1d agoHN ↗

It's really great you've done all that work for importing from other apps - I use Karakeep and at first didnt know how much redundancy I have between the two, but now I am going to try this since I have so much of it already setup.

1d agoHN ↗

Had a double take as initially read it as Hitler...

1d agoHN ↗

https://bugzilla.mozilla.org/show_bug.cgi?id=342916

Can I add NOTES about pages? This might be a good spot to do that...? Maybe the interface can be in a web page instead of terminal?

Before Google took off there was a vibrant ecosystem of FOSS dev around search, all different little aspects of it. Then after Google people stopped fiddling with search, search became "solved" or maybe "must be coded by the big boys". Shame.

Thank you for this, looooong time coming

1d agoHN ↗

Been running hister on my work machine for a month or two now. It's one of those things I don't look at until I need to, but when I do need it, it solves the dreaded hunting through the last month of browser history.

I also have it index my Obsidian notes, which is another little bonus for global search.

I did need to build up quite a few exclusion rules early on, but it's been hands off since.

1d agoHN ↗

first line of the open-source readme: ~download the binary for windows~ -- paved with good intentions?

1d agoHN ↗

Roughly in the same space is Zotero <https://www.zotero.org/> which is intended as a way of organizing research materials but is also a great way of quickly archiving web pages you've visited, including quick tagging and full text search.

1d agoHN ↗

Another very useful project is SingleFile. I was ecstatic when I found out about its existence.

https://github.com/gildas-lormeau/SingleFile

"SingleFile helps you to save a complete web page into a single HTML file. SingleFile is a Web Extension (and a CLI tool) compatible with Chrome, Firefox (Desktop and Mobile), Microsoft Edge, Safari, Vivaldi, Brave, Waterfox, Yandex browser, and Opera."

1d agoHN ↗

I use LinkDing for website bookmarking and storage/archiving needs. It is a great and stable piece of software. It archives using a Chrome web driver. Sometimes that fails, e.g. on Captchas, very heavy JS sites or sites behind login. Those I save with SingleFile and attach in LinkDing manually. Simple and works!

1d agoHN ↗

SingleFile can send to self-hosted LinkWarden. So good

23h agoHN ↗

Don't most browsers do this natively? Firefox saves single pages as html. Chrome saves pages as mhtml which isn't supported in firefox but can be easily converted if there's ever a need.

22h agoHN ↗

It doesn't work well with assets served via CDN, for example.

21h agoHN ↗

No it doesn't. Firefox (not sure about Chrome) saves to html, which:

1. Leaves all kinds of css, image file, which might be hundreds for each saved page. SingleFile saves everything in a convenient, working, single file. 2. is not really saving all the info.

I got burned when I was using Mozilla/Internet Explorer to save mhtml files, which ended up not being supported anymore. Additionally, turns out, they were saving the original versions of pages, without the Javascript changes, meaning that all the opened threads of comments I wanted to save were never saved! Never again!

21h agoHN ↗

Firefox has a "complete HTML" option in the save dialog which puts all those assets in a separate directory.

2h agoHN ↗

I don't want to have separate directories. I want a single easily shareable and copyable file. The file that can be opened anywhere in the future.

If you check what kind of stuff SingleFile does, you will find a list of things Firefox is not doing.

1d agoHN ↗

Will definitely be giving this a try. The marketing website looks good. Did you have an LLM do the design?

1d agoHN ↗

This is amazing and something I'd like to integrate with my personal AI assistant. Is there a way to make it also index pages visited from an Android phone?

1d agoHN ↗

What browser do you use? If you can install the extension is should work very easily

1d agoHN ↗

at first glance i thought it was called hitler

1d agoHN ↗

I'd love a extension setting to only send tabs that were visible for ~4+ seconds.

I built myself a little extension last year that tracks what information I was looking at, but focused on generating "new info" recaps for the day / week.

I realized that I open / quick view a lot of pages and close them, which is a strong signal that I don't care about that specific page, and it shouldn't be a source of "new insights" that I learnt that day (since I probably don't care about that topic).

I'd love to re-try a simpler version of that project that builds on Hister as a backend actually.

16h agoHN ↗

Agree on this. There area lots of links I click and immediately close, because I immediately recognize it's AI Slop for instance. No need to register these type of stuff immediately to the hister database.

Adding a timer constraint would be really nice and I guess it might be quite easy to do it since it's only a concern in the browser extension.

23h agoHN ↗

Love this kind of system, so many useful mashup apps to build on top!

23h agoHN ↗

I've been using Hister for over 2 weeks. So far, so good. I really like the interface, the search, everything. Thank you!

21h agoHN ↗

Hi, was wondering if you would be alright with a github set private fork done by someone else if they got bored and wanted to add some private features? Thanks. Now back to my steak frites! :9

21h agoHN ↗

I was just thinking about a tool like this this morning.

20h agoHN ↗

The local file indexing sounds useful. Often forget where I saved that important PDF and Spotlight fails me.

17h agoHN ↗

I can see using this to index the thousands of bookmarks I have and my every growing reading list and see if my local model and find a pattern and/or help surface anything interesting related to the papers I read

17h agoHN ↗

Opera browser has this feature baked in a long time ago, before the Chromium era.

17h agoHN ↗

This is pretty useful, actually. I’ve been using it for the past 2–3 days, and I didn’t find it through YC Hacker News but through some other channel. It’s great to see that so many other people are already using it and praising it—congrats on that!

One of the most useful use cases for me, especially since I work in GTM, is keeping track of new ways to get replies from prospects, whether through cold outbound or things like SEO/GEO optimization. I read at least 2-3 articles a day on this, and it genuinely helps me figure out which ideas are worth trying because I can now keep track of everything I’ve read.

15h agoHN ↗

I use Hister as my default search engine. I’m quite happy with it. If I know I need to branch out, I use the double-bang before my query “!! Hacker News Fujitsu” and it kicks straight to the configured search engine (Kagi in my case).

13h agoHN ↗

Wtf with everyone suggesting new names? Is this an LLM thing?

13h agoHN ↗

Do you have thoughts on the prospects for inter-operation between the "recoll" application and hister? Like, maybe an adapter that let's hister read recoll's xapian database/index? Or, a tool that converts/syncs beween hister's store and recoll's?

12h agoHN ↗

I use Betula (https://codeberg.org/bouncepaw/betula/) for this purpose of a self-hosted personal Google (for websites).

(For file search, I use voidtools' Everything, and I'm not sure why anyone other than Microsoft would want to mix local file results and web results)

This project looks cool, though I misread the name as "Hipster" initially [sips almond milk macha coffee]

12h agoHN ↗

I used to use it, but it would use a lot of CPU and hurt battery life, is the idea that you self host on a different machine?

11h agoHN ↗

My issue with this is that as I had my notes that I curated there was never return on investment for doing that.

Running this would be nice but it still takes time and still there is no ROI for me.

Of course there will be people who find it useful but I am pretty much done with building knowledge bases or having todo lists.

Stuff that I need to do or remember - everything else if I forget nothing happens and it doesn’t impact my life or work.

9h agoHN ↗

It would be nice if it could also search through emails. I'm using emails to myself often as notes and bookmarks. Would be nice if they could be included in the search index.

8h agoHN ↗

I've been using histre.com for years, which builds a personal search engine for the pages you visit by adding a browser extension. It's freed me from the habit of compulsively bookmarking everything in case I might need it again. I also keep a local text index for grepping which is plenty fast even with years of history and ripgrep, and comes in handy often.

7h agoHN ↗

Can Hister handle indexing of large local file shares? I've got 30-50TB of Word, PowerPoint, and Excel files with no easy way to search them currently, beyond Agent Ransack.

Does Hister handle this well? If not, can anyone suggest other options?

3h agoHN ↗

I just wanted to say thank you for not letting the LLM write the README.md for you n