Not another AI chatbot: how to integrate AI into an existing product
I start AI integration with the expensive user job, not with a chat interface. The feature earns its place only if it improves that job measurably.
A chat panel is an interface choice, not an AI strategy. Before choosing the interface, identify where users spend too much effort combining information, repeating steps or making uncertain decisions.
type AIWorkflow = { trigger: string; context: string[]; reasoningTask: string; actions: string[]; guardrails: string[];};Context is product architecture
More context is not automatically better. Select only the data that improves the task, keep unrelated or sensitive information out, and define freshness rules.
Actions need permissions
const permissions = { read: ['tasks', 'projects'], propose: ['task.create', 'schedule.move'], executeWithoutApproval: [],};Evaluation makes the feature manageable
type Eval = { taskSuccess: number; correctionRate: number; latencyMs: number; costPerSuccessfulTask: number;};The final sequence I use is simple: problem, job, context, model, action, guardrail, evaluation, then UI. The interface comes last because value comes from the job improved, not the chat bubble added.
Building Products with AI
From vibe coding and agent orchestration to production Lovable workflows and real AI integration: keeping product and architecture control while moving faster.