AI Engineer | Autonomous AI agents, agentic workflows, always-on ops agents, LLM fine-tuning, n8n Stack: LangChain · LangGraph · LlamaIndex · MCP · Qdrant · FastAPI · Docker
What I build:
- Autonomous AI agents that make their own calls and take real actions, with guardrails in the tools rather than the prompt
- Always-on, self-extending ops agents that run around the clock
- Agentic workflows that pick up where no-code (n8n / Make) tops out
- Client-facing agents that answer from real sources instead of making things up — with evals to prove it
🟢 Available for contract and freelance work. Async-first, daily overlap window covering EU afternoons and US-East mornings.
Three things I get hired to do — the advanced end of what an automation stack can reach, white-label if you want it. Each one links to the project that proves I can do it.
Autonomous agents, not linear workflows. When a build needs to remember context, make its own decisions, and adapt — past where an n8n or Make flow tops out — that's the work I pick up. ↳ Proof: Cosmo — ran unattended on EC2 with a 30-minute heartbeat, and repaired a production site end to end without being asked.
Safe write access for agents. Your agent needs to actually change things, and you can't bring yourself to let it. I move the safety out of the prompt, where it can be talked around, and into the tools, where it can't. ↳ Proof: MendBot — commit access to real repos; edits only files already in the diff, under line caps, landed as one atomic commit, so a crashed run writes nothing.
Agents that don't make things up. For anything client-facing, the agent answers from real sources, cites them, and says "I don't know" instead of inventing — the difference between a demo and something you'd put in front of a client. ↳ Proof: Obsidian-Librarian — 10/10 on its golden set at 0.97 faithfulness, and it refused a planted prompt injection.
RAG pipeline and LangGraph agent over an Obsidian vault, in one container. Answers from the actual files with clickable [[wikilink]] citations, or says it does not know. Every edit is proposed for confirmation first; the retrieval half physically cannot write.
210 unit tests. 10/10 on the golden set at 0.97 faithfulness. 15 adversarial scenarios survived, including a defeated prompt injection.
LangGraph LlamaIndex Qdrant Redis SQLite MCP Docker
🩹 MendBot
Self-hosted GitHub App. Autonomous PR review agent that pushes safe fixes. No fixed pipeline: it decides whether to read more context, comment, fix, or leave the code alone.
Safe to give commit access because safety lives in the tools, not the prompt. Edits only files already in the diff, on the PR's own branch, under line caps, landed as one commit at the end, so a crashed run writes nothing.
4/4 at baseline on a golden set of real PRs, including two correct declines on fixes that looked safe.
LangGraph LangChain Langfuse FastAPI Docker
Grounded Q&A over the docs, issues and PRs of Anthropic's two SDK repos. Hourly incremental ingestion. Served to AI agents over MCP.
Abstains when the sources cannot support an answer. Hybrid dense and sparse retrieval with reranking, because developer questions hinge on exact tokens. Three stores: Qdrant for fused vectors, Redis for verbatim markdown so citations are exact, SQLite for sync state. Runs without a GPU.
LlamaIndex Qdrant Redis SQLite MCP Docker
Agents that extend themselves. Kestrel finds or builds the tool it is missing and keeps it for next time, delegating every code change to a coding sub-agent.
Cosmo ran around the clock on AWS EC2: 30-minute heartbeat, website health checks, cron daily digest, Vercel deployment monitoring, team Telegram channel. It repaired a production site end to end unattended: detected the outage, spun up a coding agent, diagnosed, fixed, reviewed, redeployed.
OpenClaw MCP Claude Code AWS EC2 cron
QLoRA fine-tune of Qwen3-8B that reasons Socratically inside its <think> trace: clarify the question, define terms, test counterexamples, then answer with stated confidence. 136 hand-authored training examples, 109 train / 27 held out, published openly as a dataset. Quantized builds run in one command, 400+ downloads a month.
QLoRA Unsloth GGUF Ollama
Building Software That Isn't Just AI Slop: the spec-driven method I use to ship working software with coding agents. Four principles, and why the winning setup is the boring one.
| Agents | LangGraph · LangChain · MCP · tool design & guardrails · human-in-the-loop |
| RAG | LlamaIndex · Qdrant · Redis · hybrid search · reranking · incremental ingestion |
| Automation | n8n · webhooks · cron · scheduled agents |
| Testing & observability | Langfuse · RAGAS · golden sets · adversarial testing |
| Serving & infra | Python · FastAPI · Docker · GitHub Apps & webhooks |
| Deployment & ops | AWS EC2 · Linux server admin · cron · Vercel · health checks & automated recovery |
| Fine-tuning | QLoRA (Unsloth) · GGUF export · Ollama |
Self-taught. Every project above was built independently.



