Loading site

ghost

role
Concept development, Systems architecture, Agent tooling, Engineering
date
Apr 2026–present
team
Brand, Creative, Product
my part
I conceived and built Ghost, defining the package structure and tooling that lets teams give agents reusable brand guidance.

brand judgment before generation

Agents now make screens, emails, and copy. Without a brand’s stance, they fall back on the model’s defaults. I designed and built Ghost to give them that judgment before they start working.

Teams record their voice, principles, and decisions about trust alongside concrete materials in a .ghost/ package. Any compatible agent can read it. Designers can deepen that guidance without putting the whole brand into every task.

give the next agent the decision

Correcting one output doesn’t teach the next agent. I made the package a place to record the underlying judgment: when to celebrate, how to deliver bad news, or when brand presence should recede.

Authors write those decisions in Markdown, describe when they apply, and reference existing components, assets, or examples. The package travels with the repo.

Your brand package

Write guidance in Markdown: when it applies, what to do, and which materials to use.

.ghost/
  manifest.yml
  glossary.md
  brand.md
  principle.density.md
  voice.md

Ghost

Your agent uses the CLI to read the package and retrieve guidance.

ghost gather
Get the complete guidance menu.
ghost pull <ids>
Get selected guidance and materials.
requests
context

Your agent

Chooses the guidance that fits your task and uses it to make the work.

Installed ghost skill

Instructions for reading the package and applying its guidance.

less guidance to load

37%

less brand-guidance text in the Square comparison

Ghost’s selected guidance averaged 99.4 KB against a 156.9 KB DESIGN.md containing the full guidance. Across both brands and models, the reduction averaged 30.4%. Human designers reviewed all results and confirmed they met the quality bar.

what agents make with it

Each brief below went through that selection flow against the same package. The outputs explore different situations and interactions within a shared design language.

Celebrate progress ↗ Explain a shortfall ↗ Handle missing data ↗ Compare tradeoffs ↗

internal adoption

I presented Ghost in a leadership deep dive and at a company all-hands, with a positive response to both. I followed up with an educational session on its architecture.

Since then, internal usage has risen sharply. Product teams have reached out to test integrations.

Project site · Source on GitHub · Development log

Open-source development preview.

© 2026 Nahiyan Khan

Built with Astro · Hosted on Vercel · Privacy
root about work contact
Drag the active highlight to preview pages. Release to choose. Escape cancels. Or use arrow keys and page links.