News for hackers. Stuff that matters.

nikvdp

Re:Colorfigures on Monday October 26, 2026 @12:40PM (#50246748)
This looks very similar to https://github.com/wheresryan22/anatomy which popularized a very similar style of figure a few weeks ago. You can also quickly make similar diagrams with sites like https://diagrams.ink (disclaimer: affiliated) or https://three.ws/anatomy
What are people actually using these hosted search providers for? For personal use I've found using searxng-ai-kit [1] (disclaimer: I'm the author) or similar tools to be far more cost effective (free!). oh-my-pi uses a similar method and will scrape search results for you out of the box, no api key or search provider needed.

[1]: https://github.com/nikvdp/searxng-ai-kit

Show HN: Standalone SearXNG CLI+MCP (no server needed)

https://github.com/nikvdp/searxng-ai-kit

Hi HN, Codex and Claude are pretty good at (re)searching things on the web these days, but the open coding agents (OpenCode, pi coding agent and friends) don't have access to the labs' proprietary search APIs. I wasn't happy with this state of affairs, and wanted a truly open source version that was portable and harness independent.I'd previously implemented agentic web search using SearxNG for...

( Read More... | no comments | on HN )
Re:SearXNG: A free internet metasearch engine on Saturday July 04, 2026 @07:18AM (#48784563)
I built something similar ([1]) that you might find interesting. Similar to your project, but with the fun tweak that it bundles searxng inside itself, so you don't need to run or find a searxng instance to use it.

[1]: https://github.com/nikvdp/searxng-ai-kit

Re:Markdown CLI viewer with VI keybindings on Wednesday February 11, 2026 @04:41AM (#46972914)
If you like the man page aesthetic, using pandoc with groff is the most readable way to read markdown on the terminal I've found:

    mdless() {
        if command -v pandoc >/dev/null; then
            if [[ -z "$1" ]]; then
                cat | pandoc -s -f markdown -t man | groff -T utf8 -man | less
            else
                pandoc -s -f markdown -t man "$*" | groff -T utf8 -man | less
            fi
        else
            less "$@"
        fi
    }
Re:Running Claude Code dangerously (safely) on Tuesday January 20, 2026 @12:53PM (#46695269)
For a similar but lighter weight (and less isolated) tool that uses the OS's sandboxing functionality (bubblewrap on linux, Seatbelt/sandbox-exec on macos) or docker check out cco [1] (note: I built it). It's primarily useful now because it can also sandbox other agents like opencode or codex since Anthropic has added native sandboxing functionality to Claude Code itself now. Their sandbox works similarly, also using bubblewrap and seatbelt, and can be accessed via the /sandbox slash command inside Claude Code [2].

[1]: https://github.com/nikvdp/cco [2]: https://code.claude.com/docs/en/sandboxing

Re:Welcome to Gas Town on Monday January 05, 2026 @10:35PM (#46508460)
Good call, added a link.

Linear is great, it's what JIRA should've been. Basically task management for people who don't want to deal with task management. It's also full featured, fast (they were famously one of the earlier apps to use a local-first sync-engine style architecture), and keyboard-centric.

Definitely suitable for hobby projects, but can also scale to large teams and massive codebases.

Re:Welcome to Gas Town on Monday January 05, 2026 @08:35PM (#46507703)
You might like linear-beads[1] better. It's a simpler and less invasive version of beads I made to solve some of the unusual design choices. It can also (optionally) use linear as the storage backend for the agent's tasks, which has the excellent side effect that you as a human can actually see what the agent is working on and direct the agent from within linear.

Despite it's quirks I think beads is going to go down as one of the first pieces of software that got some adoption where the end user is an agent

[1]: https://github.com/nikvdp/linear-beads

Re:Show HN: Radioactive Pooping Knights on Saturday December 06, 2025 @02:45AM (#46171462)
omg the sound when you win is certainly not the reward I was hoping for
Thanks glad you enjoyed it!
I couldn't resist the pun :)
I made a similar thing not long ago that lets you choose between docker, seatbelt (macOS's native sandboxing) and bubblewrap (on Linux).

I use it on macOS primarily, and have basically stopped using docker mode in favor of the native sandboxing because features like image pasting Just Work™.

http://github.com/nikvdp/cco

Re:Up to date prices for LLM APIs all in one place on Friday July 25, 2025 @12:22PM (#44684946)
there's also http://llmprices.dev. similar, but with a searchbox for quick filtering

Show HN: Cco – a sandbox for Claude Code so you can YOLO made safe(ish)ly

https://github.com/nikvdp/cco

I love the feeling of using Claude Code with --dangerously-skip-permissions on, but it always made me feel a bit uneasy. It's not that hard to trick Claude into doing bad things, and with web search enabled especially, the odds of Claude running into prompt injection attacks or accidentally downloading and running a virus don't actually seem all that low.Running Claude Code without web search...

( Read More... | 1 comment | 2 points | on HN )
you guys might also like http://llmprices.dev, similar but it's automatically updated with the latest info every 24h

Show HN: Simple way to compare LLM prices

https://llmprices.dev/

Hey all,I constantly find myself checking openrouter's website to compare LLM prices when trying to figure out what model to use for a project, but their site doesn't make comparison easy. So I put together a quick website with a searchable table to let you easily compare the latest model prices, context lengths, etc.All the data is sourced directly from openrouter.ai, and it automatically...

( Read More... | no comments | on HN )
Re:Show HN: Wat – Deep inspection of Python objects on Tuesday July 30, 2024 @01:49AM (#41106365)
> If you want to quickly debug something, you can use this inspector without installing anything, in the same session.

> Load it on the fly by pasting this snippet to your Python interpreter

The idea of having a project's readme include a full copy of the project itself as base64'd compressed data is pretty ingenious!

especially for a project like this where you may not have had the foresight to preload it into the environment where you most need it

Re:Mistral "Mixtral" 8x7B 32k model [magnet] on Saturday December 09, 2023 @03:56AM (#38580025)
This piqued my interest so I made an ollama modelfile of it for the smallest variant (from TheBloke's GGUF [1] version). It does indeed seem impressively gpt4-ish for such a small model! Feels more coherent than openhermes2.5-mistral which was my previous goto local llm.

If you have ollama installed you can try it out with `ollama run nollama/una-cybertron-7b-v2`.

[1]: https://huggingface.co/TheBloke/una-cybertron-7B-v2-GGUF

Re:So you've installed `fzf`. Now what? on Tuesday March 21, 2023 @10:51PM (#35256206)
Same, I enjoyed atuin but found myself missing fzf's fuzzy search experience so I ported fzf's own ctrl-r zsh widget to read from atuin instead of the shell's history to solve this. Best of both worlds imo, you get fzf's fuzzy search experience and speed with atuin's shell history management and syncing functionality.

Zsh snippet below in case it's helpful to anybody. With this in your .zshrc ctrl-r will search your shell history with fzf+atuin and ctrl-e will bring up atuin's own fuzzy finder in case you still want it.

It only searches the last 5000 entries of your atuin history for speed, but you can tweak ATUIN_LIMIT to your desired value if that's not optimal.

    atuin-setup() {
        if ! which atuin &> /dev/null; then return 1; fi
        bindkey '^E' _atuin_search_widget

        export ATUIN_NOBIND="true"
        eval "$(atuin init "$CUR_SHELL")"
        fzf-atuin-history-widget() {
            local selected num
            setopt localoptions noglobsubst noposixbuiltins pipefail no_aliases 2>/dev/null

            # local atuin_opts="--cmd-only --limit ${ATUIN_LIMIT:-5000}"
            local atuin_opts="--cmd-only"
            local fzf_opts=(
                --height=${FZF_TMUX_HEIGHT:-80%}
                --tac
                "-n2..,.."
                --tiebreak=index
                "--query=${LBUFFER}"
                "+m"
                "--bind=ctrl-d:reload(atuin search $atuin_opts -c $PWD),ctrl-r:reload(atuin search $atuin_opts)"
            )

            selected=$(
                eval "atuin search ${atuin_opts}" |
                    fzf "${fzf_opts[@]}"
            )
            local ret=$?
            if [ -n "$selected" ]; then
                # the += lets it insert at current pos instead of replacing
                LBUFFER+="${selected}"
            fi
            zle reset-prompt
            return $ret
        }
        zle -N fzf-atuin-history-widget
        bindkey '^R' fzf-atuin-history-widget
    }
    atuin-setup
Re:LED Lights and Screens Are Killing You on Thursday February 23, 2023 @05:41AM (#34908943)
iOS actually has a hard to find setting that lets you make the screen super dim. It's been a lifesaver when using my phone in the evening. To enable it go to Settings -> Accessibility -> Zoom and then tap the Zoom toggle switch.

Once that's enabled iOS will now bring up a super secret popup menu whenever you double tap the screen with three fingers. From the little popup menu go to Choose Filter -> Low Light and your screen will go dimmer than is normally possible. With this on and the normal brightness mode set to its lowest setting the screen can get quite dim indeed.

Re:Just: A Command Runner on Monday January 09, 2023 @11:02PM (#34320350)
https://www.shellcheck.net/ and it’s accompanying cmdline tool/ lsp integrations is a lifesaver for preventing that kind of thing. It’ll warn you if you’re doing anything not portable and even smartly changes it’s behavior depending whether your shebang line uses bash or sh (iirc)
Re:Show HN: Use GitHub as a Free CDN on Thursday December 29, 2022 @05:19AM (#34171221)
this looks cool! had a hard time finding the repo from the website tho! (for anyone who comes across this later, it's here: https://github.com/toughyear/gaac)
this is awesome, and what a name!
Re:pbproxy: pbpaste and pbcopy to all your (remote) machines on Wednesday December 28, 2022 @10:32PM (#34169151)
how do you access another machine's clipboard with tmux?
Re:pbproxy: pbpaste and pbcopy to all your (remote) machines on Wednesday December 28, 2022 @04:12AM (#34159063)
pbproxy is a small wrapper to give you a consistent and remotely accessible interface to your system clipboard on linux and mac.
what's the missing half? file transfer?
I keep a cobbled together version of something like this in my rc files. The ui mimics macOS’s pbcopy/pbpaste commands (it degrades gracefully on linux boxes too by falling back to xsel if available, and then to a tmp file for use on headless servers).

The special sauce is that you can put a server name from your ssh config on the end of a pbcopy or pbpaste command so you can do stuff like run `echo hello | pbcopy server2` on server1, after which doing `pbpaste` from server2 would print 'hello'. You can also do this in the other direction with pbpaste, eg from server2 you can run `pbpaste server1` and it'll print out the contents of server1's clipboard.

The current setup is a bit coupled to my rc files, but if there's interest would be glad to refactor a bit and toss it on github

shameless plug, but try http://birdbear.app

Older »