Live data from Hacker News

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

github.com

131–140 of 145 posts

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

#131
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…

great job, well done! More should be blog part, we need more seo focused.

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

#132

Earlier quoted context omitted.

I was looking at something similar. What does your agent-lib.sh look like?

Something like this: https://github.com/craigjperry2/tiny-agents/blob/main/lib/ag...

That is probably a private repo? 404, so not something I can access

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

#136
Really cool approach, I like the “Unix philosophy” for agents. Curious how you handle state persistence and chaining sub-agents when agents are depth-limited. Also, do you have any strategies for ensuring data consistency across runs, especially when multiple agents interact with the same files?

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

#138

Earlier quoted context omitted.

I was looking at something similar. What does your agent-lib.sh look like?

Something like this: https://github.com/craigjperry2/tiny-agents/blob/main/lib/ag...

Bump.

Would love to see your tiny agents project. But understand that it might contain something sensitive and will therefore stay private.

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

#139

This is what I've been trying to get nanobot to do, so thanks for sharing this. I plan to use this for workflow definitions like filesystems. I have a known workflow to create an RPG character with steps, lets automate some of the boilerplate by having a succession of LLMs read my preferences about each step and apply their particular pieces of data to that step of the workflow, outputting their result to successive…

Where is the nanobot approach not working for you?

For me its mostly that nanobot is very not stable, its only 0.1.4.post4 and who knows what software provenance it's got. Functionality that worked last week doesn't work this week (anecdote: I used to be able to do long tool chains and conversations back to back but after more recent updates, the tool seems to only do one tool write then report back that it's done more tool writings and I have to remind it to finish the job).

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

#140

Earlier quoted context omitted.

Something like this: https://github.com/craigjperry2/tiny-agents/blob/main/lib/ag...

Bump. Would love to see your tiny agents project. But understand that it might contain something sensitive and will therefore stay private.

Ahh apologies

#!/usr/bin/env bash # agent-lib.sh — shared plumbing for all claude -p agents

AGENTS_DIR="${AGENTS_DIR:-$HOME/Code/github.com/craigjperry2/tiny-agents}" SKILLS_DIR="$AGENTS_DIR/skills" CLAUDE_OPTS="${CLAUDE_OPTS:-}"

# Build a system prompt by concatenating skill files # Usage: load_skills core/unix-output.md domain/git.md output/plain-text.md load_skills() { local combined="" for skill in "$@"; do local path="$SKILLS_DIR/$skill" if [[ -f "$path" ]]; then combined+=$'\n\n'"$(cat "$path")" else echo "[agent-lib] WARNING: skill not found: $skill" >&2 fi done echo "$combined" }

# Core invocation: reads stdin, prepends system prompt, calls claude -p # Usage: run_agent [extra claude opts...] run_agent() { local system_prompt="$1" shift local stdin_content stdin_content=$(cat) # buffer stdin

    if [[ -z "$stdin_content" ]]; then
        echo "[agent] ERROR: no input on stdin" >&2
        exit 1
    fi

    # Combine system prompt with stdin as user message
    printf '%s' "$stdin_content" \
        | claude -p \
            --system-prompt "$system_prompt" \
            --output-format text \
            $CLAUDE_OPTS \
            "$@"
}

# Run agent then pipe through a guard # Usage: run_agent_guarded run_agent_guarded() { local guard="$1" shift local system_prompt="$1" shift

    local output
    output=$(run_agent "$system_prompt" "$@")
    local agent_exit=$?

    if [[ $agent_exit -ne 0 ]]; then
        echo "$output"
        exit $agent_exit
    fi

    # Pass through guard
    echo "$output" | "$AGENTS_DIR/guards/$guard"
    exit $?
}

# For structured output: run agent then validate with jq run_json_agent() { local system_prompt="$1" shift run_agent "$system_prompt" --output-format text "$@" | guard-json-valid }

Post reply on HN