Comments

Hacker News

Author here. This post covers how we rebuilt our agent after a tool-per-resource approach didn't scale — we replaced most of our tools with a virtual filesystem the agent explores via bash.

A few things that might be interesting to discuss:

- We didn't want to boot a container per session, so we run a bash interpreter + virtual FS in-memory as a process in our Elixir cluster. This is a port of Vercel's just-bash (TypeScript) to Elixir. The original's test suite made it a well-defined target for an agent-assisted port — we reused the fixtures verbatim: https://github.com/elixir-ai-tools/just_bash

- The "why not a real sandbox" tradeoff is the one I'm least certain about long-term. In-memory gets us instant starts and no sync problems, but if we add a real scripting language (Python) for the agent, we'll probably have to swap in a real sandbox. We've kept the interfaces decoupled so that swap stays cheap.

- For data that doesn't map well to static files (logs, message history), we registered a `knock` CLI inside the bash environment instead of adding more tools. Because it has --help for every resource, the agent learns it with almost no steering.

Happy to answer questions about the architecture, the Oban-backed agent loop, or how we're evaluating trajectories (nightly evals, pass^k on common tasks).

by cjbell88

What harness are you guys running?

by Tsarp

We ended up doing the same, own harness with a world view (schema.org) and map reduce rather than a RAG. Happy with the results and context hydration speed

by n4pw01f

I thought it would be bash+fuse but it's actually running in the matrix: simulated bash in Elixir ported from Vercel's just-bash:

> A virtual bash environment with an in-memory filesystem, written in TypeScript and designed for AI agents.

>Broad support for standard unix commands and bash syntax with optional curl, Python, JS/TS, and sqlite support.

https://github.com/vercel-labs/just-bash/tree/main/packages/...

See also (credited by TFA):

https://vercel.com/blog/how-to-build-agents-with-filesystems...

by andai

Join the discussion

Write your take first — we'll ask for email only when you're ready to publish.

  • Hacker News
  • Author here. This post covers how we rebuilt our agent after a tool-per-resource approach didn't scale — we replaced most of our tools with a virtual filesystem the agent explores via bash.

    A few things that might be interesting to discuss:

    - We didn't want to boot a container per session, so we run a bash interpreter + virtual FS in-memory as a process in our Elixir cluster. This is a port of Vercel's just-bash (TypeScript) to Elixir. The original's test suite made it a well-defined target for an agent-assisted port — we reused the fixtures verbatim: https://github.com/elixir-ai-tools/just_bash

    - The "why not a real sandbox" tradeoff is the one I'm least certain about long-term. In-memory gets us instant starts and no sync problems, but if we add a real scripting language (Python) for the agent, we'll probably have to swap in a real sandbox. We've kept the interfaces decoupled so that swap stays cheap.

    - For data that doesn't map well to static files (logs, message history), we registered a `knock` CLI inside the bash environment instead of adding more tools. Because it has --help for every resource, the agent learns it with almost no steering.

    Happy to answer questions about the architecture, the Oban-backed agent loop, or how we're evaluating trajectories (nightly evals, pass^k on common tasks).

  • What harness are you guys running?
  • We ended up doing the same, own harness with a world view (schema.org) and map reduce rather than a RAG. Happy with the results and context hydration speed
  • I thought it would be bash+fuse but it's actually running in the matrix: simulated bash in Elixir ported from Vercel's just-bash:

    > A virtual bash environment with an in-memory filesystem, written in TypeScript and designed for AI agents.

    >Broad support for standard unix commands and bash syntax with optional curl, Python, JS/TS, and sqlite support.

    https://github.com/vercel-labs/just-bash/tree/main/packages/...

    See also (credited by TFA):

    https://vercel.com/blog/how-to-build-agents-with-filesystems...