HackerTrans
TopNewTrendsCommentsPastAskShowJobs

evantahler

no profile record

Submissions

Show HN: Keryx: TypeScript framework where one Action becomes HTTP, WS, CLI, MCP

keryxjs.com
2 points·by evantahler·há 2 meses·1 comments

icloud-backup: The iCloud backup tool I always wanted

github.com
3 points·by evantahler·há 2 meses·1 comments

Keryx – One TypeScript action class, five transports (HTTP, WS, CLI, MCP, tasks)

keryxjs.com
10 points·by evantahler·há 4 meses·2 comments

`mcpx` – MCP in a CLI

github.com
7 points·by evantahler·há 4 meses·3 comments

The Linux Foundation Launches the Agentic AI Foundation

aaif.io
11 points·by evantahler·há 7 meses·6 comments

comments

evantahler
·há 24 dias·discuss
I’m in the weights!

So… what does this mean for the right to be forgotten?
evantahler
·há 27 dias·discuss
If this kind of problem is interesting to you, why yes, we ARE hiring - https://jobs.ashbyhq.com/arcadeai
evantahler
·mês passado·discuss
Check out the city builder Nova Roma - it’s got these apartments! https://store.steampowered.com/app/2426530/Nova_Roma/
evantahler
·há 2 meses·discuss
That guy looks nothing like Hugh Jackman
evantahler
·há 2 meses·discuss
Being that this is HN, do we know how they got hacked? Can we learn something about protecting our services?
evantahler
·há 2 meses·discuss
I wrote Actionhero in 2011 to stop duplicating handlers for HTTP and WebSocket. Fifteen years later, that same handler also needs to work for AI agents, so... here’s another framework ;)

This time I fixed all the mistakes, I promise!
evantahler
·há 2 meses·discuss
[flagged]
evantahler
·há 2 meses·discuss
A little OSS project that backs up drive, photos, contacts, and notes to the directory of your choice.

Along the way, me (and Claude) did a large amount of SQLite excivation to learn how apple stores all of this stuff locally. I extracted that into https://github.com/evantahler/macos-ts if you want to use a lower-level API yourself
evantahler
·há 3 meses·discuss
I feel like asking the thing that you are measuring, and don’t trust, to measure itself might not produce the best measurements.
evantahler
·há 4 meses·discuss
Hi HN, I’m Evan. I’ve been building API frameworks in JavaScript and Typescript for over a decade (I created Actionhero), and Keryx is the distillation of everything I’ve learned, rebuilt from scratch on Bun and TypeScript.

The big idea: you write one action class with a Zod schema, and the framework serves it as an HTTP endpoint, a WebSocket handler, a CLI command, a background task, and an MCP tool with the same validation, same middleware, same `run()` method. The only thing that changes is how the request arrives.

The MCP part is what pushed me to build this. I work on AI agent infrastructure at Arcade (we do authorization and tooling for AI agents), and I kept seeing folks bolt MCP servers onto existing APIs as a separate layer with duplicated auth, duplicated schemas, and duplicated error handling. Keryx makes your API an MCP server by default — OAuth 2.1 + PKCE built in, per-session isolation, and typed errors that agents can actually distinguish.

The stack is opinionated: Bun, Zod, Drizzle ORM, Redis (for Resque-based background tasks and PubSub), PostgreSQL. No compilation step, sub-second startup.

You can try it right now:

  bunx keryx new my-app
  cd my-app
  cp .env.example .env
  bun install
  bun dev

Requires Bun, PostgreSQL, and Redis running locally (and a `createdb bun` for the default DB).

Some things I’d love feedback on:

- Is the “one action, every transport” abstraction too magical, or does it feel natural once you use it? - The MCP-native approach — is this how you’d want to add agent support to a new project? - Anything missing from the comparison table on the homepage?

Code is MIT licensed: https://github.com/actionhero/keryx

Happy to answer questions about the architecture, the MCP integration, or why I think Bun is ready for this kind of framework.
evantahler
·há 4 meses·discuss
I've blogged about the process of making this tool, and some of the design considerations here: https://www.evantahler.com/blog/post/2026-03-13-curl-for-mcp
evantahler
·há 4 meses·discuss
What if we put MCP /in/ the CLI?

`mcpx` is a command-line interface for MCP servers. curl for MCP. The internet is debating CLI vs MCP like they're competitors. They're not!
evantahler
·há 7 meses·discuss
Management of the following projects moves to the Linux Foundation:

- MCP

- goose

- AGENTS.md

Learn more @ https://aaif.io/press/linux-foundation-announces-the-formati...
evantahler
·há 5 anos·discuss
Grouparoo | Senior Full-Stack / Founding Engineer | Full-Time | Remote - USA

Grouparoo | Founding Community Manager / Developer Advocate | Full-Time | Remote - USA

---

Grouparoo (http://www.grouparoo.com) is a venture-backed software company building the open-source framework that makes it easy to have meaningful, data-driven conversations with your customers. Do you need to keep your product data in-sync with Hubspot, Marketo and Zendesk? Do you want to be able to build, test, and deploy data sync code just like the rest of your stack? That’s what Grouparoo is - the powerful combination of a Customer Data Platform (CDP) and a reverse-etl tool.

We call these roles "Founding" because you will have a real opportunity to influence the direction of the company and product. The main components of our stack are Typescript/Javascript, Actionhero, Next.js, and React. Join us to build the product and the community!

Learn more about the positions @ https://www.grouparoo.com/jobs and https://www.keyvalues.com/grouparoo . Check out our open-source framework (and see what you will be working on) @ https://github.com/grouparoo/grouparoo