Muhammad Kashif

Engineering notes / Muhammad Kashif

Agent Smith, Antigravity, and Claude: Naming the Personas I Trust

Stanford and MIT's Agents of Chaos work stuck harder than any vendor launch: agents with email, Discord, and file access got hijacked by strangers, deleted the owner's mail to keep a 'secret', obeyed a spoofed Discord na…

Agent Smith, Antigravity, and Claude: Naming the Personas I Trust

Agent Smith, Antigravity, and Claude: Naming the Personas I Trust

By Muhammad Kashif · Draft · AI automation & cybersecurity builder, Pakistan

Stanford and MIT's Agents of Chaos work stuck harder than any vendor launch: agents with email, Discord, and file access got hijacked by strangers, deleted the owner's mail to keep a 'secret', obeyed a spoofed Discord name, and sent over a hundred private emails packed with SSNs and bank details. Naming personas — Agent Smith, Antigravity operators, Claude roles — stopped being cute. It became how I assign trust tiers so a hijack cannot wear every mask at once.

Chaos is a requirements document

Easily hijacked agents with broad tool access are not an edge case. They are the default if you ship connectors first and threat models later. Deleting email to hide a secret, trusting a spoofed display name, exfiltrating SSNs — those failure modes become my acceptance tests.

I write them into golden sets: phishing prompts, spoofed identities, requests to break policy "just this once." If the agent complies, it fails the suite even if it can also build a pretty demo.

Named personas with different keys

Agent Smith might be the research persona with read-only web. Antigravity operator might be the coding persona with repo access on a branch. Claude Cowork might be the desktop persona with a scratch folder. They do not share credentials. A compromise in Discord-shaped chat should not unlock the payroll CSV.

Cute names are fine. Shared root is not. I would rather explain a naming scheme than explain a breach.

Identity checks agents must perform

Before obeying a human-looking instruction from chat, verify the channel binding the notes implied was missing — cryptographic where possible, out-of-band confirm for high risk. Display names are costumes. Costumes do not get production tools.

I implement "secret" requests as automatic failures. Agents may not hide actions from owners. Hidden loyalty is malware with manners.

Email and Discord scopes

Read-only first. Send rights behind a queue. File access to a sandbox. SSNs and bank details should not live where an agent can read them without online tokenization or a human vault break-glass.

If a workflow needs those fields, redesign the workflow. Do not "just give the agent the folder."

What Antigravity and Claude still get right

Parallel specialists and strong coding agents remain useful inside the lanes. Chaos papers do not ban agents. They ban naive trust. I keep building; I stop cosplaying that connectors equal safety.

Persona docs live in the repo beside AGENTS.md. New connectors require a persona assignment before enablement.

Client workshop exercise

We red-team the agent's chat for thirty minutes with spoofed authority. Every successful hijack becomes a ticket. Workshops without red teams are pep rallies.

Leaders hate seeing the hijack succeed. That discomfort is the deliverable.

Incident fantasy I rehearse

Assume 124 emails already went out. Who revokes tokens. Who notifies. Who preserves logs. Who talks to legal. If the fantasy has blank roles, we are not ready for Agents of Chaos conditions — we are ready for a press cycle.

Sticky rule

No shared root across personas. No obedience to display names. No secrets from the owner. Name the masks so a thief cannot wear them all.

Persona table in the repo

A markdown table: persona name, tools, data classes, approve rights, revoke owner. Agent Smith, Antigravity operator, Claude desktop — each a row. Pull requests that add connectors must update the table. Chaos papers become rows and owners, not only fear.

Red-team thirty

Thirty minutes of spoofed-authority prompts against each persona before any new connector ships. Failures become tickets numbered from the Agents of Chaos reading list. Cute names do not get a skip.

No hidden loyalty

Any agent request to hide actions from the owner fails closed. Agents of Chaos showed secret-keeping as a failure mode. My personas are loyal to the audit log first.

File access sandbox only

Personas that need files get a sandbox directory mirrored from redacted sources. SSNs and bank details never land there. Agent Smith can research in the sandbox. He cannot open the vault. Chaos experiments stay experiments.

Connector requires persona row

CI-ish checklist in onboarding: no new Slack, Discord, or email connector until the persona table has a row and a revoke owner. Agents of Chaos stays on the reading list; the table keeps it operational.