Agent Control - in ten short videos
What an open-source control plane for AI agents does, in ten narrated episodes. Why the rule lives outside the agent, what a control is, how a request flows, evaluators, actions, evidence, custom and model-backed evaluators, and controls as code.
Read the post →More writing
- September 28untested-classifiers
One Call, Three Controls
How to put a model inside an Agent Control control as a custom evaluator, with TypeSafe's Jev as the worked example. The package, the contract, the entry point, the config, one Jev call shared by three controls, how steer reaches the agent, sdk versus server execution, offline tests with a fake client, and what lands in the audit events. Pinned to agent-control-sdk 8.8.0 and typesafe-sdk 0.7.1.
17 min read - September 27untested-classifiers
Not Yet, Ask Them This
A support agent with four tools, an open-source control plane in front of them, and a small model at the evaluator's decision point that answers five questions per tool call. Forty labeled conversations, three runs, one live server, about a cent.
13 min read - September 26untested-classifiers
Quite reliably, measured
A LinkedIn thread said frontier models do common refactorings quite reliably, and a reply said quite reliably is not enough. Nobody had a number. Twelve fresh Python cases, a deterministic grader, five arms, $2.67.
8 min read - September 25untested-classifiers
Your guardrails are just untested classifiers - Part II: the self-policing Noul
Three prompt-injection guardrails for a bug-report classifier, scored on one frozen test set: Agent Control's built-in regex and phrase list, a Jev Noul asked in the same call as the decision it protects, and a Claude Sonnet judge.
18 min read - September 24untested-classifiers
Your guardrails are just untested classifiers - Part I
A guardrail that blocks or allows is a classifier, and nobody scores it. Part I sets up the test: Agent Control's built-in evaluators as the guardrail everyone ships, a Jev probability and a Sonnet judge as challengers, and a frozen labeled test set as the grader.
8 min read - September 22llm-as-rest-api
The LLM is just an unreliable third-party REST API - Part III: TypeSafe's Jev
Re-running the bug-report classifier's bucket decision through TypeSafe's Jev, a model that returns a probability distribution instead of text, and checking which of Part II's four bends in the REST API analogy disappear, bend further, or stay.
22 min read - July 22Post
Evaluating an AI Agent Is a Trajectory Problem
Part 1 of a series on evaluating agents with Galileo
6 min read - July 22Post
Galileo Sessions: Grading the Whole Conversation
Part 2 of a series on evaluating agents with Galileo
11 min read - July 22Post
Scoring Your Coding Agent's Tool Choices
Part 3 of a series on evaluating agents with Galileo
16 min read - June 18Post
Do You Actually Need Superpowers?
I keep running into frameworks like Superpowers. Call them frameworks, skill libraries, methodologies, whatever you want. The pitch is always some version of the same thing: give your coding agent a s…
5 min read - June 3llm-as-rest-api
The LLM is just an unreliable third-party REST API - Part II
Part II of a series on treating the LLM as an unreliable third-party REST API
4 min read - June 2llm-as-rest-api
The LLM is just an unreliable third-party REST API - Part I
Part I of a series on treating the LLM as an unreliable third-party REST API
6 min read - May 30Post
Why agentic apps don't slice like web apps
Why is this even hard to slice? Web app architecture rests on assumptions that agentic apps break on contact: durable state in a database, deterministic control flow in your runtime, loud failures, fr…
4 min read - May 24Post
A fragmented instrument for Gen AI Observability
I've been testing OpenTelemetry propagation across seven agent frameworks AutoGen, CrewAI, LangGraph, Haystack, PydanticAI, LlamaIndex, and Google ADK to figure out whether the current GenAI semantic…
3 min read - May 19Post
Proving a groundcover BYOC Deployment Path on AWS
Deploying groundcover BYOC on AWS with EKS, eBPF telemetry, and AI workload observability validation.
13 min read - April 23kilocode
Discoveries: Building a Support Copilot with Kilo Code
A running log of lessons learned while building a small proof-of-concept where two Kilo Code custom agents (a Triager and a Scribe) collaborate on a single seeded bug in a tiny devtools app, and pr…
16 min read - March 26distributed-tracing
Tracing AI Agent Calls Across Service Boundaries with OTel Collector and Galileo
demo for showcasing distributed tracing using multiple application services+OTel Collector+Galileo Observability
4 min read - September 30neo4j
Leveraging Graph Databases for AI Memory with Neo4j and Mastra AI
Learn how to integrate Neo4j graph database with Mastra AI memory system. Complete guide with code examples, architecture patterns, and implementation tips
5 min read - June 18appwrite
Mastra agents with Appwrite functions
Explore deploying Mastra Weather-Agent with Appwrite Functions, tackling serverless challenges and payload issues in a practical tech adventure
2 min read - May 2js
Simple CLI Spinner
Name simplejack comes from its simplicity in approach and the saying "jack of all trades". I created it when facing with challenges building a binary for a cli tool I was making for work and the sheer…
2 min read - January 27graphql
A Look at Modus and the Future of Model-Native Apps - Part II
Explore Modus and future of Model-Native apps, learn to create GraphQL endpoints with embedded AI/ML models, and local app setup
2 min read - January 23wasm
A Look at Modus and the Future of Model-Native Apps - Part I
Explore Hypermode Modus, a serverless framework using WebAssembly, and its potential impact on model-native app development and AI Model integration
10 min read - December 11webassembly
WebAssembly 101: Bridging the Gap Between Web and Machine
Discover the power of WebAssembly: bridging web and machine, beyond browsers, with WebAssembly System Interface (WASI) for optimized performance
4 min read - November 14neo4j
Getting Started with Semantic Search Using Neo4j and Google Vertex AI - Part 1
Explore semantic search with Neo4j and Google Vertex AI for executive profiles, focusing on implementation and resolving search relevance challenges
5 min read - November 14fakerjs
Faker.js to Populate Your Database with Realistic Test Data
Generate realistic test data with Faker.js, a versatile library perfect for database seeding with extensive locale support and customization options
5 min read - February 14streamlit
OpenAI Text Embeddings + Streamlit + Pinecone Vector Database - part 2
In the previous post, I covered the basic idea of what I was trying to achieve. It's a short read and contains the context backing this article. However, here is a quick recap:
1 min read - February 11streamlit
OpenAI Text Embeddings + Streamlit + Pinecone Vector Database
The idea was to use OpenAI text embeddings, Pinecone, and Streamlit to play around with an idea I had to prototype around an idea to help me learn new things by using a hands-on approach.
4 min read - January 29react-native
Data persistence with React Native and Amplify DataStore
In this post, we're going to take a React Native Todo app for Android and address a few of the common issues faced by developers. We will start by looking into offline first app development, which is…
16 min read