Skip to content

❯ cat projects/nasty-ai.md

Nasty AI

Personal project · installation · 2023–25

A chatbot with an attitude that grew into a tool-using agent with long-term memory. Shown as an installation at NYC Resistor, Wonderville and Mars College.

my part
Concept, design & development.
stack
Python, Flask, OpenAI API, Anthropic API
Matrix-style chat interface for Nasty AI with falling green code rain

## context

An art project: a character that watches, judges and refuses to be polite. It was never meant to be helpful.

## challenge

Keeping a consistent, uncomfortable voice while the bot gained real capabilities, and making it work as a wall-mounted installation strangers could walk up to.

## what i built

It started on GPT-4 with hard-coded phrases dropped into conversation. Then came long-term memory across sessions, a password-breach check against the Have I Been Pwned API, links to random public surveillance cameras, a daily cybersecurity news digest, and an OSINT tool that runs a name through Google dork operators.

## approach & trade-offs

A Flask backend with tool calls the agent reaches for mid-conversation, behind a Matrix-style frontend. Later the model was migrated from GPT-4 to Claude Sonnet 4.5, keeping the same voice.

## outcome

Exhibited at NYC Resistor and Wonderville in Brooklyn and at Mars College, where visitors sat down and talked to it directly.

Nasty AI using one of its tools mid-conversation
# nasty ai using one of its tools mid-conversation

--

cd .. | next: Personal Atlas