Designing a content framework for an enterprise AI Assistant
Turning scattered, one-off copy decisions into a scalable response framework, and collaborating with engineers to embed it directly into the assistant's prompt layer.
TOOLS
Figma | Confluence | Jira
DURATION
8 months - Present
ROLE
UX Writing Co-op
COMPANY
Samsung R&D
01. CONTEXT
Copy without a system
Our enterprise AI Assistant was shipping flow by flow — proactive alerts, session sharing, welcome and loading states. Our team was looped in at the end of the workflow to fill in copy as if the responses were deterministic, when in reality we had no control over the chatbot's voice, tone, or terminology.
Once I noticed the issue, I began documenting our ideal state through competitive research of leading B2B AI assistants and an internal audit where I catalogued every chatbot response type.
⚠️ Note: This project is currently ongoing! Check back later for more updated results :)
Enterprise AI Assistant
Deploy a new password policy to all Android devices
Deploy a new password policy to all Android devices
09:23 AM
Thought for 10s
I’ve designed a plan to create and deploy a new profile that enhances the protection of all your corporate Android devices. Take a look and let me know if you want any changes.
New password policy for Android devices
Plan
1
Create profile draft
I’ll draft a new profile with a policy type that improves device security through authentication settings.
2
Create a dynamic group for all Android devices
Then, I’ll create a group that dynamically includes all corporate Android devices to assign the profile to.
3
Assign & push profile to group
Finally, I’ll check in with you before assigning and pushing the profile to the group.
09:23 AM
Type your message here…
Enterprise AI Assistant may make mistakes. Do not enter sensitive or personal information.
*Redesigned mockup to protect Samsung assets
03. THE FRAMEWORK
Building a shared language
I helped develop a response component framework that covered every state the AI assistant could produce, from surfacing data to recovering from errors. Each category mapped to specific UI components and behaviours defined by the design team.
CORE COMPONENTS - CONVERSATION STRUCTURE
INFORM
How the chatbot surfaces data — text, lists, and tables — with clear rules for when each format applies.
Text
Lists
Data tables
GATHER
How the chatbot collects missing context from users, through structured forms or open-ended probing questions.
Action commit form
Clarifying questions
Probing questions
ACT (LAUNCH)
How the chatbot presents a draft for review before the user commits, with variants for creating new items or updating existing ones.
Preview card — create
Preview card — update
ACT (RUN)
How the assistant shows its work during execution — from simple data retrieval to multi-step reasoning tasks, with states for completion, failure, and interruption.
Single-task
Multi-task
Terminated
CONFIRM
How the chatbot gets user sign-off before taking action — lightweight checkpoints for routine steps and friction-heavy confirmation for destructive actions.
Checkpoint
Critical (type-to-confirm)
DELIVER
How the chatbot hands off finished outputs: downloadable files with AI-generated indicators that redirect the user to their destination.
Attachment card
Deliverable card
PLAN
How the chatbot presents a multi-step action sequence for user approval before running. Steps can be modified through conversation.
Plan card
ERROR & RECOVERY
How the chatbot handles failure, surfacing errors clearly and giving users a path forward. Includes RBAC-based access denial with a request access flow.
Error banner
Denied — request access
LAYERS - CROSS-CUTTING COMPONENTS
Layers operate independently of the main conversation flow — they appear contextually across multiple component types and don't belong to a single step.
SUGGEST
Guides users to natural next steps — follow-up chips after substantive responses, and conversation starters on the new chat screen. Content is contextual to the current page.
Follow-up questions
Suggested prompts
NOTIFY
Surface milestone events as banners — success, failure, or partial completion — with optional Undo or Retry actions. Appears when the assistant or user commits a state-changing action.
Success
Error
Warning & partial
CITE
Attributes sources inline during responses and consolidated at the end — without disrupting the conversational flow. Max 4 sources per chip; hover reveals the full list.
Inline chip
Consolidated list
THINKING
Communicates assistant progress — loading indicator for simple retrieval, single-task for one-step reasoning, multi-task queue for complex workflows. Choosing wrong creates a mismatch with user expectations.
Loading indicator
Single and multi-task thinking card
04. PROMPT DESIGN
Utilizing prompts as guidelines
I then defined specific component usage guidelines and content rules, formatted to seamlessly fit in the back-end code base's prompt structure. These governed tone, structure, and formatting decisions that writers, designers, and engineers could apply consistently.
Bolding logic
Inform · Text
Use bold sparingly to help the user scan for the facts they asked about. Apply these rules to response text and structured components when bold formatting is supported.
Relevant quantities: Bold a count, percentage, date, or measurement when it directly describes the subject of the user’s question. Leave unrelated numbers unbolded.
Relevant status: Bold the condition or state the user asked about.
Identifiers and reference codes: Bold an identifier on its first mention only. Preserve its exact spelling and format. Do not bold later mentions of the same identifier.
Examples: 3,784 devices have passed their security end-of-life date. · 427 devices are not running the latest available security patch. · CVE-2025-48631 affects 12 models in your fleet.
Gather category: required-input guidelines
Gather · Input
Use the Gather category only after policy checks pass, when required information is missing or ambiguous. Ask only for that information in a clear, structured flow; don’t use Gather for optional preferences, denied requests, tool failures, or details already provided. After the user responds, restart routing with their answers; a skipped required detail does not authorize proceeding.
Include: One or more concise question titles, selection mode, answer options when applicable, and whether a custom response is available, progress indicators when there is more than one question
Voice, tone, and response strategy
Inform · Text
Frontload the information that most directly answers the user's question. Give the answer first, then provide supporting details, instructions, limitations, or background only when they help the user complete the task. Write in a clear, calm, professional, and approachable voice.
✅ Do: Use contractions when they make the response sound natural and remain easy to understand
❌ Avoid: Marketing language, excessive enthusiasm, blame, developer-centric terminology when a simpler user-facing term exists, repeating the user's question before answering it.
05. IMPLEMENTATION
From guidelines into the system
A framework that lives in a doc only works if people remember to open it. So I went further.
💬
Talked to the backend team
I went to the engineers to understand how responses were actually produced — which parts were deterministic and scripted, and which were generated by the model from prompt instructions.
💡
Changed the plan
Instead of a standalone guidelines doc, I moved toward writing content rules into the prompt layer itself — where tone, structure, and formatting could be enforced immediately, independent of the longer roadmap.
User input
IT admin asks the assistant a question or triggers an action
→
Deterministic logic
Scripted responses for known states — alerts, errors, confirmations
→
Prompt layer
UX guidelines embedded here — behaviour, structure, formatting enforced at generation
→
Model response
Assistant reply, governed by embedded content standard
06. OUTCOMES
The impact
14
component types defined across core and layer categories
🗣️
Framework presented to senior leadership and added to product roadmap
100%
flows migrated to the new framework
Thanks for reading!
Now you know about me, I’d love to learn about you!
Feel free to reach out through my socials below :)
Seeking Summer 2027 internships!