HNHacker News
TopNewBestAskShowJobs

nicoty

95 karma · joined April 13, 2018

submissionscomments
nicoty··on Docker Sandboxes – Disposable, isolated sandboxes for AI agents
I have a solution based on Nix that can be used to generate reproducible container images: https://github.com/nothingnesses/agent-images . It lets you customise which agents, harnesses, or any other packages you want included in the VM and it uses `agent-box` for sandboxing.
nicoty··on Benchmarking Opus 5 on SlopCodeBench
I've been thinking a lot about this recently. In my case: how do I get an agent to see the important parts of the current plan and get it to stick to it without deviating, especially as loops get into longer and longer cycles and compactions erase prior context?

I think the problem with just encoding a whole plan in a single markdown file is that it gets polluted really quickly (agents can stop adhering to instructions to keep it clean and conform to a specific structure), which makes it harder for agents to see which parts of the plan they should focus on. As such, I've reached a similar conclusion about giving the agent access to CLI tools to help them deal with this. To try to mitigate this, I've been getting Claude to develop for me a CLI tool that:

1. Scaffolds reusable, structured plan templates and a reusable workflow that structures how to tackle the plan, step by step.

2. Validates that the plan files still conform to the correct, parseable structure.

3. Parses and evaluates the plan files, to determine what the current state is and what the next valid transitions and states are according to the workflow, like a state machine, and outputs instructions and reminders for agents as to what they should do at each step of the workflow.

So far, I've been dogfooding the tool and it seems promising: I can leave Claude running for longer and it doesn't drift as much. However I haven't ran any benchmarks yet and I'm still not entirely happy with the state of the codebase ( https://github.com/nothingnesses/agent-scaffold ), so take this with a grain of salt.

That said, I'm also bullish on using agents with formal methods and proofs. Type checkers and compile-time checking in general are great because they surface errors early and with great specificity. So if you can encode your specifications with, e.g. dependent types, you can use the type-checker as a way to steer the agent when it goes wrong and gets off-track.

nicoty··on Write code like a human will maintain it
I've codified mine into a reusable workflow https://github.com/nothingnesses/agent-scaffold . To be honest, this isn't fool-proof though, since the agents can simply choose to ignore them, so I also like to pair this with deterministic linting and compile time checking.

For a Rust project, I created macros that output compiler errors when documentation and tests are not in a shape I want them to be, like missing function invocations or assertions, which forces the agent to address them, where otherwise they would've just worked around them by adding stupid trivial assertions like `assert_eq!(true, true)`.

That still isn't fool-proof either, but it helps minimise those instances. I'm bullish on the idea of integrating formal methods and model-checking with AI. I think that combo feels like a promising avenue for constraining the stochastic side of AI-generated code with something closer to deterministic verification. Provided you can write correct specs of course!

nicoty··on ZCode – Harness for GLM-5.2
I've contributed to https://github.com/0xferrous/agent-box which allows you to bind-mount git repositories into containers that agents operate in, preventing the agents from accessing files that aren't bind-mounted. Your usual .gitignore can then be used to also ignore files within the repo to be bind-mounted, which prevents agents from accessing them at all, essentially working as a sandbox.

I also maintain https://github.com/nothingnesses/agent-images which allows you to use Nix to reproducibly spin up OCI container images containing agents and any other tools you need for development and use these with agent-box.

I use both at the moment to work on some personal projects with agents, where I set up multiple separate git worktrees for the agents to work in, preventing them from accessing anything outside of the worktrees and from trampling over each other's work.

nicoty··on A way to exclude sensitive files issue still open for OpenAI Codex
I've contributed to https://github.com/0xferrous/agent-box which allows you to bind-mount git repositories into containers that agents operate in, preventing the agents from accessing files that aren't bind-mounted. Your usual .gitignore can then be used to also ignore files within the repo to be bind-mounted, which prevents agents from accessing them at all, essentially working as a sandbox.

I also maintain https://github.com/nothingnesses/agent-images which allows you to use Nix to reproducibly spin up OCI containers containing agents and any other tools you need and use these with agent-box.

I use both at the moment to work on some personal projects with agents, where I set up multiple separate git worktrees for the agents to work in, preventing them from accessing anything outside of the worktrees and from trampling over each other's work.

nicoty··on Apple to skip high-end M6 Mac chips in favor of AI-focused M7 line
I don't now how the MacOS equivalent compares, but Linux/Windows has KDE Connect that I use for that https://kdeconnect.kde.org/
nicoty··on C constructs that still don't work in C++
Out of curiosity, what do you think is wrong with monomorphization-based polymorphism? The other alternatives I'm aware of are 1. type-erasure via v-table based dynamic dispatch (which Rust also has in the form of the `dyn` keyword), which has performance and memory-allocation overhead and 2. macros, which Rust also has and, if used for polymorphism, would essentially be like compile-time monomorphization, but clunkier.

Maybe I'm missing something though and there are other alternatives done differently in other languages?

nicoty··on Why I still reach for Lisp and Scheme instead of Haskell
https://github.com/carp-lang/Carp might be of interest. It's a statically typed lisp.
nicoty··on Hegel, a universal property-based testing protocol and family of PBT libraries
How does this compare to https://academy.fpblock.com/blog/quickcheck-hedgehog-validit... ? As far as I understand, Validity also has free generators and shrinking for types by having them implement various typeclasses that represent invariants and also has pre-made combinators to test properties with.
nicoty··on The future of version control
How would they do that if they don't use git for version control? Does GitHub allow other forms of version control other than git?
nicoty··on Cowork: Claude Code for the rest of your work
Filesystems like zfs, btrfs and bcachefs have snapshot creation and rollbacks as features.
nicoty··on Workers at Redmond SpaceX lab exposed to toxic chemicals
I know I'll sound like a rube but somehow it rubs me the wrong way that the rich and powerful are spending billions trying to establish multiplanetary civilisations despite the fact that we still have plenty of unfixed problems here at home that also deserve attention and resources, if not more so.
nicoty··on Mind-reading devices can now predict preconscious thoughts
Like how capsaicin makes food feel hot even when it isn't?
nicoty··on New interpretations suggest the "heat death" hypothesis might not hold (2023)
Thanks for the spoilers
nicoty··on Iterative DFS with stack-based graph traversal (2024)
I implemented an iterative, stack-based DFS iterator in JS last year for a project that I didn't end up using it on. Maybe someone else can find some use of it: https://gist.github.com/nothingnesses/5f974a43a2da5d1d8a6b9c...
nicoty··on Svalboard: Datahand Lives
Is it possible to press multiple keys on opposite axes at the same time? E.g. q and z or w and x on the qwerty layout.
nicoty··on Why Algebraic Effects?
What's wrong with static type systems?
nicoty··on The Windows Subsystem for Linux is now open source
Still somewhat janky. I use it on my work machine (since it at least seems a bit faster than using VirtualBox) and regularly run into issues where npm won't build my project due to the existence of symlinks [1,2]. wslg windows also don't yet have first-party support from the windowing system [3]. I also remember having trouble setting up self-signed certs and getting SSL working.

1. https://stackoverflow.com/questions/57580420/wsl-using-a-wsl... 2. https://github.com/microsoft/WSL/issues/5118 3. https://github.com/microsoft/wslg/issues/22

nicoty··on Basic Income Pilot Project: Study results
> First tier, high cost of living should be for high earners, singles or childless people, they should pay more taxes while second tier areas should offer UBI, and should generally subsidise people having children

That seems unfair to me. Why should singles and childless people subsidise people with children?

nicoty··on Claude can now search the web
Copied verbatim from the AI generated summary:

To choose the best rice cooker, consider these factors:

Top Brands: Zojirushi is often considered the best brand, with Cuckoo and Tiger as close contenders. Aroma is considered a good budget brand 1. Types: Basic on/off rice cookers: These are good for simple white or brown rice cooking and are usually affordable and easy to use 2. Considerations: When buying a rice cooker, also consider noise levels, especially from beeping alerts and fan operation 3. Specific Recommendations: Yum Asia Panda Mini Advanced Fuzzy Logic Ceramic Rice Cooker is recommended for versatility 4. Yum Asia Bamboo rice cooker is considered the best overall 5. Russell Hobbs large rice cooker is a good budget option 5. For one to two people, you don't need a large rice cooker unless cost and space aren't a concern 6. Basic one-button models can be found for under $50, mid-range options around $100-$200, and high-end cookers for hundreds of dollars 6. References What is the best rice cooker brand ? : r/Cooking - Reddit www.reddit.com The Ultimate Rice Cooker Guide: How to Choose the Right One for Your Needs www.expertreviewsbestricecooker.com Best Rice Cooker UK | Posh Living Magazine posh.co.uk Best rice cookers for making perfectly fluffy grains - BBC Good Food www.bbcgoodfood.com The best rice cookers for gloriously fluffy grains at home www.theguardian.com Do You Really Need A Rice Cooker? (The Answer Is Yes.) - HuffPost www.huffpost.com

nicoty··on Austral: A Systems Language with Linear Types and Capabilities (2022)
If the author/someone with knowledge of the language lurks here, there's these unanswered questions from the previous discussions that I'd interested about: https://news.ycombinator.com/item?id=34205220
nicoty··on A look at Firefox forks
In case you didn't know, Arc isn't being developed since 5 months now. The company has moved on to another project called Dia.
nicoty··on Magpies and crows are using “anti-bird spikes” to make nests (2023)
The article says the birds make different nest configurations, with one incorporating a softer cup layer on top of the spiky layer made with the spikes and another configuration using the spikes as part of a dome on top of the nest.
nicoty··on Treating bullying as everyone's problem reduces incidence in primary schools
Fumny you mention that, guess what the article is about.
nicoty··on Show HN: I Wrote a Book on Java
I'm not familiar with Java. Does it have no notion of structural types at all? If it does, maybe you could wrap those fields in `Car` with `Maybe`/`Option` (I’m not sure what the equivalent is in Java) so you get something like `Car(Maybe Make, Maybe Model, Maybe Year, Maybe Colour)`?
nicoty··on Hi-Tech Bifocals Improved My Eyesight but Made Me Look Like a Dork
Do they also automatically correct for for muscle weakness? Some people's (my) prescription involves the use of prism lenses to correct for this and would otherwise get double-vision without them.
nicoty··on Launch HN: Deepsilicon (YC S24) – Software and hardware for ternary transformers
Could the compression efficiency you're seeing somehow be related to 3 being the closest natural number to the number e, which also happens to be the optimal radix choice (https://en.wikipedia.org/wiki/Optimal_radix_choice) for storage efficiency?
nicoty··on My favorite programming problem to teach: Digit length (2019)
I asked a similar question to stack overflow some time ago (to calculate the number of digits in a range) and received a performant solution using only integer arithmetic https://stackoverflow.com/questions/68908632/is-there-a-comp...
nicoty··on Hermit is a hermetic and reproducible sandbox for running programs
It sounds similar to that antithesis testing service that was on front page recently as well. That also claimed to be able to run programs deterministically as well. I wonder if the two projects are related at all.
nicoty··on Shiakaku of the Day
#ShikakuOfTheDay #EASY240413 02:39.21 #MEDIUM240413 04:40.83 #HARD240413 12:20.11 #EXPERT240413 58:44.96 https://shikakuofthe.day

I imagine master will take a couple of hours to complete, so I didn’t even attempt it.

Page 1 of 3Next →