Chris Bell | knock.app
@cjbell_
Followers
2K
Following
20K
Media
371
Statuses
5K
co-founder @knocklabs. the british half of @elixirtalk and organis(z)er @empexco.
nyc
Joined January 2009
It’s day one of launch week @knocklabs and we’re starting things off with a bang. Introducing Knock Agent Toolkit. Agent Toolkit exposes Knock’s APIs as tools to your AI agents so you can effortlessly build cross-channel agent to user messaging flows.
5
12
66
We saw this as an interesting version of our agent to explore though where instead of writing tools to interact with resources, we just have the agent update files and sync back to us. Something we already have for all resources!
0
0
0
The problem was that while it worked, to go from user input to working took a very long time, and then the sandbox can randomly go away too so you might have to repay the tax to clone the content.
1
0
0
Our use case is maybe a bit odd, but using our CLI you can locally pull all of your workflows and templates from Knock into your file system. So then making the agent make updates to this fit naturally into something Claude code is good at, without us building much
1
0
0
We ran a poc to build our agent on top of claude code (and our CLI!) running in a CF sandbox. This closes one of the biggest gaps we saw there that really affected perf around needing to pay the cold start tax to get content for Claude code to use.
1
0
2
Next week the @knocklabs team is at JSNation and React Summit. We’ll be showing our latest features, where Knock is headed next, and how teams like Vercel and Webflow use Knock in production today. If you're in NY, come say hi and grab a hat from our F/W line.
1
2
11
Central Park in the fall. (📸 claire_schaper on instagram)
2
0
11
If you're thinking "does Oban scale though" – we can tell you that a Postgres backed job queue takes you pretty far. We've processed billions of jobs. There's a great post on a similar theme:
lucumr.pocoo.org
Durable execution with just postgres.
0
0
4
The Oban team also had a great blog post on how add_cascade/4 is really useful for building agent workflows:
oban.pro
Discover how to build robust agentic workflows with cascading workflows, human-in-the-loop checkpoints, and dynamic workflow grafting—all with reliable, distributed functions and transactional...
1
1
3
Of course, it's not as succinct as the Typescript version (less magic!), but the ability to just pass in a function capture without more boilerplate is really nice. And you can still define job options like max_attempt, uniqueness, etc per cascade!
1
0
0
If you're curious, the `sleep_for_7_days/1` just simply uses the `{:snooze, 7 * 24 * 60 * 60}` to snooze the workflow for a week. Oban handles this stuff like a champ.
1
0
1
If you're using Elixir and want a version of this that can make your functions durable, then take a look at Oban and the `Workflow.add_cascade/4` function in Oban Pro.
"use workflow" And your async await calls become durable. Supported everywhere TypeScript runs https://t.co/G0kGMr3M0X
4
10
139
Late to this party. We've been on a Clickhouse journey @knocklabs for the past 2 years. Now doing 1bn writes a day 📈 - All our logs (API logs, workflow run logs, event logs, etc) now in CH - Analytics moving to be powered from event logs via materialized views (it's super fast)
1
2
16
My pretty, pretty good Larry, and Brooke as Diane Keaton.
2
0
11
With Zoi, it already outputs to a JSON schema, and I'm really encouraged to see `oaskit` ( https://t.co/Om2tM6VFwA) having first-class support.
2
0
8
I love changesets, but I've long wanted a better way to describe and validate schemas, especially at the API layer. What we ended up with there is Ecto schemas for the params, and then separate spec files for the OpenAPI spec. Annoying to maintain and error-prone.
3
0
7
I really like Zod, so I'm happy to see Zoi ( https://t.co/GKjg8X8DHN) gaining traction in the Elixir ecosystem.
8
19
156