Live data from Hacker News

Show HN: Axe – A 12MB binary that replaces your AI framework

github.com

91–100 of 145 posts

Re: Show HN: Axe – A 12MB binary that replaces your AI framework

#91
post #71
post #70

Cool work! Aside but 12 MB is ... large ... for such a thing. For reference, an entire HTTP (including crypto, TLS) stack with LLM API calls in Zig would net you a binary ~400 KB on ReleaseSmall (statically linked). You can implement an entire language, compiler, and a VM in another 500 KB (or less!) I don't think 12 MB is an impressive badge here?

it's written in golang. 12MB barely gets you "hello world" since everything is statically linked. With that in mind, the size is impressive.

golang doesn't statically link everything by default (anymore?), this is from FreeBSD:

    $ ls -l axe
    -rwxr-xr-x  1 root wheel 12830781 Mar 12 22:38 axe*
    
    $ ldd axe
    axe:
        libthr.so.3 => /lib/libthr.so.3 (0xe2e74a1d000)
        libc.so.7 => /lib/libc.so.7 (0xe2e74c27000)
        libsys.so.7 => /lib/libsys.so.7 (0xe2e75de6000)
        [vdso] (0xe2e7366b000)

Re: Show HN: Axe – A 12MB binary that replaces your AI framework

#93
post #67
post #65

Earlier quoted context omitted.

Splitting mauls have a wider angle to help separate wood pieces and a beefier back to use with/as a sledgehammer or splitting wedge. What's rendered is definitely more like an axe than a splitting maul.

What you're describing is exactly what I see in the image.

Fair enough. Hard to tell one way or another with all the "action" marks.

Re: Show HN: Axe – A 12MB binary that replaces your AI framework

#94
post #77
post #70

Cool work! Aside but 12 MB is ... large ... for such a thing. For reference, an entire HTTP (including crypto, TLS) stack with LLM API calls in Zig would net you a binary ~400 KB on ReleaseSmall (statically linked). You can implement an entire language, compiler, and a VM in another 500 KB (or less!) I don't think 12 MB is an impressive badge here?

12 MB is not large; it's like 3 minutes of watching YouTube. Actual RAM consumption is only very weakly correlated to the binary size, and that's what matters.

It is large compared to a stripped Zig ReleaseSmall binary with no runtime. With agents, one can take this repo, and create an extremely small binary.

To your point, why even advertise the number? If that particular number is completely irrelevant in practical usage, why mention it? It seems like the point is to impress, hence my response.

Re: Show HN: Axe – A 12MB binary that replaces your AI framework

#95
post #34
post #7

What are some things you've automated using Axe?

I have a few flows I'm using it for and have a growing list of things I want to automate. Basically, if there is a process that takes a human to do (like creating drafts or running scripts with variable data) I make axe do it. 1. I have a flow where I pass in a youtube video and the first agent calls an api to get the transcript, the second converts that transcript into a blog-like post, and the third uploads that bl…

Aren't your Hackernews answers automatised?

Re: Show HN: Axe – A 12MB binary that replaces your AI framework

#96
post #84

looks really cool, how does it differ from something like running claude headless with `claude -p`?

You don't have all the Claude Code overhead. It only gets what you give it.

what do you mean by that, not sure I understand

Re: Show HN: Axe – A 12MB binary that replaces your AI framework

#97
I really like this idea. Gonna need an "Awesome Axe" page that collects agents.

One idea I'm thinking of is, after an agent has been in use for a while, and built up and understanding of the task, would be something like, "Write a Python script to replace this agent."

I could imagine this would work with agents that are processing log files or other semi-structured data for example.

Re: Show HN: Axe – A 12MB binary that replaces your AI framework

#98
I've had good success with something along these lines but perhaps a bit more raw:

    - claude takes a -p option
    - i have a bunch of tiny scripts, each script is an agent but it only does one tiny task
    - scripts can be composed in a unix pipeline
For example:

    $ git diff --staged | ai-commit-msg | git commit -F -
Where ai-commit-msg is a tiny agent:

    #!/usr/bin/env bash
    # ai-commit-msg: stdin=git diff, stdout=conventional commit message
    # Usage: git diff --staged | ai-commit-msg
    set -euo pipefail
    source "${AGENTS_DIR:-$HOME/.agents}/lib/agent-lib.sh"
    
    SYSTEM=$(load_skills \
        core/unix-output.md \
        core/be-concise.md \
        domain/git.md \
        output/plain-text.md)
    
    SYSTEM+=$'\n\nTask: Given a git diff on stdin, output a single conventional commit message. One line only.'
    
    run_agent "$SYSTEM"
And you can see to keep the agents themselves tiny, they rely on a little lib to load the various skills and optionally apply some guard / post-exec validator. Those validators are usually simple grep or whatever to make sure there were no writes outside a given dir but sometimes they can be to enforce output correctness (always jq in my examples so far...). In theory the guard could be another claude -p call if i needed a semantic instruction.

Re: Show HN: Axe – A 12MB binary that replaces your AI framework

#100
> 12MB binary, two dependencies. no framework, no Python, no Docker (unless you want it)

Does it do anything CPU-bound on its own, such that it benefits significantly from being a compiled (Go) executable? I actually like having things like this done in Python, since there's more potential to hack around with them.

Post reply on HN