andy = {
"is": "a full-stack engineer who builds agents — heaviest on the backend",
"agent_layer": [
"RAG — chunking, hybrid retrieval, reranking, citations",
"prompt & context engineering — what goes in the window, and what doesn't",
"MCP servers & tool calling — agents that change state, not just describe it",
"evals — measure the pipeline instead of trusting the demo",
],
"backend_under_it": [
"FastAPI · SQLAlchemy · Alembic · Postgres · Redis",
"Kafka for the async seams, Kubernetes and Docker to run it",
"a model layer that swaps Anthropic/OpenAI/DeepSeek/Gemini",
],
"also": "computer vision, trained and shipped on-device",
"off_duty": "photography — 7M views / 57K downloads on Unsplash",
"education": [
"MIT (Artificial Intelligence) @ UNSW Sydney (2025–2026)",
"BSc Computer Science @ University of Toronto",
],
"before_agents": "4 years full-stack — B2B SaaS and payments",
"based_in": "Shanghai · remote",
}Agent harness tooling — plugins for the pi and DeepSeek Harness coding agents, built because a long-running agent kept breaking.
github.com/Andy8647/dsh-auto-approval: Automode for DeepSeek Harness — a fourth permission preset where an LLM classifier, not a human, approves every tool call. Hard-deny rules run first, the classifier second, and anything that times out or fails to parse is denied. Tool output never reaches the classifier, so injected content can't talk it into an allow.
pi extensions:
github.com/Andy8647/pi-tidy: Claude Code-style tool folding for pi — a reply's tool calls collapse to one clickable line, while edits and background jobs stay visible.
github.com/Andy8647/pi-starline: Starline — a Starship-inspired statusline and Opencode-style TUI for pi. Pill footer with directory, git branch & status, runtime detection, context usage, token counts and cost at a glance; themeable colour palette with $ref expansion, fully custom footerFormat templates, model/thinking segments; bordered editor with accent rail, per-mode cursor styles and mouse selection. Forked from pi-zentui, since diverged well past upstream.
github.com/Andy8647/pi-balance: real-time API provider balance in the pi status bar — DeepSeek, Moonshot, OpenRouter, Codex and more.
github.com/Andy8647/pi-ide-context: /ide for pi. Select text in Neovim or VS Code, switch to the agent — it already knows the file, cursor and selection. No copy-paste.
github.com/Andy8647/pi-agent-loop: cross-provider rate-limit detection and auto-resume. Tells a soft quota limit apart from a hard 403, waits for the real reset, picks the task back up.
Upstream contributions
github.com/nicobailon/pi-powerline-footer: 4 merged PRs — opt-in git host icon (GitHub/GitLab/Bitbucket), configurable display formats for context_pct/cache_read segments, session token-scan caching for perf, copyOnSelect config toggle.
pi install npm:@andy8647/pi-agent-loop
pi install npm:pi-ide-context
pi install npm:pi-tidyAgent internals — context engineering and the failure modes underneath
github.com/Andy8647/superpowers (fork): plan generation kept dying on long runs — past ~119K tokens prompt cache dropped to zero, and a 3,000-line plan in one response got the stream killed. The fix was structural, not prompt-level: split plans into an index plus self-contained per-task files, so the controller reads only the index and each subagent reads only its own task. 9 files, +216/−108.
github.com/Andy8647/pdf-injection-scanner: finds prompt injection hidden inside PDFs before an agent reads them — white text, 0.1pt fonts, content positioned off-page.
github.com/Andy8647/agent-atlas: interactive learning platform for the agent application layer — ReAct through harness engineering.
Computer vision — trained, converted, shipped to a device
github.com/Andy8647/MahjongVis: real-time mahjong tile recognition on iPhone. 3,713 self-annotated images across 42 classes, YOLOv8s trained 150 epochs, converted to CoreML with built-in NMS, running live through SwiftUI + AVCaptureSession.





