---
name: aj-chandler
role: AI systems engineer · agentic infrastructure + product
focus: bounded agents + full-stack execution
memory: plain markdown, human-reviewed
---

I build AI systems that can act, explain themselves, and fail safely.

From native apps and encrypted APIs to local-model routing and tool-using agents, I engineer the whole authority chain: model, tools, data, policy, observability, and recovery.

web + native + edgeproduct surfaces
local + frontiermodel routing
default-denyagent authority
evidence-firstsystem outputs
setup

I use agents as an operating system, not a chat window

Hermes, my independent agent lab, runs through one loop: an orchestrating agent with explicitly scoped tools, durable plain-text memory it reads before working and writes back to after, and a local model for small, verifiable tasks. It plans, builds, checks, remembers, and recovers without receiving ambient authority.

Claude Code

The orchestrator. Plans work, calls scoped tools, and writes and reviews code under my supervision.

MCP layer

Typed tool boundaries between the model and the code, data, and services it may use.

Obsidian vault

Durable memory. Plain Markdown, versioned, human-reviewed before anything becomes canon.

Local model

On-device inference for quick work whose answer can be verified at a glance.

proof

I ship the product around the model

My independent portfolio spans React and TypeScript web applications, Swift native clients, Rust desktop software, edge workers, PostgreSQL services, authentication, encryption, deployment, and CI. The model is one subsystem. The engineering around it determines whether the product deserves trust.

Whole-stack executionInterface, API, data contracts, infrastructure, observability, and recovery ship as one system.
Deterministic where it mattersCalculations, authorization, invariants, and write gates remain testable code.
Probabilistic where it helpsModels classify, summarize, search, and rank where judgment adds value.
independent build

Wadevo Finance - AI inside a real, secured financial product LIVE INDEPENDENT PRODUCT

At app.wadevo.com, I built a full-stack personal-finance product with cash-flow forecasting, bill and credit tracking, and natural-language financial search. AI sits beside a deterministic attention engine that keeps urgent calculations fresh without waiting on a model.

The surrounding system is the achievement: invite-only authentication, tenant-scoped data, authenticated encryption for sensitive fields, CSRF and rate limiting, moderation, prompt-injection defenses, and tamper-evident audit logs.

Deterministic attentionFinancial alerts and projections stay current without outsourcing arithmetic or urgency to an LLM.
Layered trustAuthentication, tenant boundaries, encryption, request defenses, and hash-chained audit evidence reinforce one another.
Adversarial AI boundaryModeration, injection detection, rate limits, and bounded model access treat hostile input as normal operating reality.
Healthspan
A native iPhone and watchOS system with tenant-isolated ingestion, signed and replay-resistant requests, encrypted health values, and versioned metrics. Every derived result exposes provenance, coverage, confidence, limitations, and algorithm version.
CMA Copilot
A local-first, synthetic-data comparable-sales workflow with explicit conflict resolution, evidence review, editable pricing strategies, and a human-owned final recommendation.
Resume Builder
A Rust and Tauri desktop application that turns career artifacts into tailored resumes, gap analysis, interview preparation, and HTML, PDF, or text exports through a conversational workflow.
Wadevo Tasks
An ADHD-friendly task product where a user can brain-dump unstructured thoughts and let AI organize them into actionable work.
Multi-surface product engineering
Wadevo Finance has been explored across a Railway web application, native Swift and SwiftUI clients, and a cross-platform Tauri and Rust desktop client.
SaaS foundation
A reusable full-stack starter with authentication, security hardening, audit logs, end-to-end testing, accessibility checks, performance CI, and automated deployment.
skills

Reusable agent patterns I turn into versioned skills

These are the repeatable behaviors behind my agent work. They are designed to travel without carrying anyone else's data, infrastructure details, or institutional context with them.

tools

Infrastructure I built so agents could work safely

local-model MCP server

An ask_local tool backed by quantized on-device inference. Small, glance-verifiable tasks stay local; concurrency limits and explicit timeouts keep the machine responsive.

Agent-scoped tool access

Purpose-built, least-privilege interfaces expose only the reads or writes a workflow actually needs. The authorization boundary lives below the prompt.

Health and backup sentinel

Scheduled checks verify service health, backup freshness, and restore evidence. Missing proof blocks a healthy-state claim.

Agent supply-chain gate

Skill installation passes through source review, permission analysis, static checks, and sandboxed execution before trust is granted.

The routing policy. The local model gets work by default when the answer is verifiable at a glance; the frontier model keeps anything where a subtly wrong answer costs more than a slow one. The policy is written down, versioned, and enforced in the agent's instructions:

ROUTE TO THE LOCAL MODELKEEP ON THE FRONTIER MODEL
Regex generation, unit conversions, date mathMulti-file code changes, architecture decisions
JSON/YAML transforms, cron expressions, git one-linersSecurity-sensitive analysis: credentials, auth, permissions
Boilerplate: shell scripts, Dockerfiles, config stubsTone-sensitive writing meant for other humans
Commit message and branch name draftsAnything needing tools, context, or institutional knowledge
Verifiable-at-a-glance answersTasks where subtly wrong is worse than slow
lab

Hermes: a personal agent appliance built to fail closed

Hermes is my dedicated Windows 11 lab for governed autonomy: a source-controlled control plane, local and frontier model routing, durable memory, scheduled health and backup checks, and bounded workers. It is active systems research, not a production compliance claim.

The interesting part is not that agents can act. It is that authority is explicit, reviewable, and removable. A failed health check or missing proof blocks the claim instead of becoming optimistic prose.

Bounded autonomyExplicit workflow contracts, finite retries, idempotency keys, tenant scoping, and protected-action gates constrain what automation can advance.
Evidence before authorityConsequential write paths remain disabled until deterministic tests, independent review, and a separate human authorization all agree.
Recoverable stateAtomic state, encrypted backups, hash-bound artifacts, health checks, and documented rollback make failure a designed state.
memory

Agents forget. The vault doesn't.

Cross-session memory is the difference between an assistant and a colleague. Mine is an Obsidian vault of plain Markdown: no plugins, no sync daemons, no database. Every file is greppable, diffable, and readable by a human without any tooling at all.

conceptual schema
vault/
├── maps/ # where active work lives
├── projects/ # one note per system
├── context-packets/ # per work session
└── reference/recipes/ # the operating model
  • read-first: before material work, the agent reads the smallest relevant set: the map, the project note, the current packet. Not the whole vault.
  • write-back: decisions, deliverables, and new risks get written to the canonical note before the session ends. Git holds code truth; the vault holds context truth.
  • human review gate: every agent-authored note carries agent_authored: true in its frontmatter and isn't canon until I've reviewed it.
  • sparse links: connections are added with a stated reason, not auto-generated. A sparse graph you trust beats a dense one you don't.
principles

How I build with LLMs