← Back to Admin

AK Chat Platform

Complete documentation for users and administrators.

What is AK Chat?

AK Chat is a private AI chat platform built for teams. It lets you create custom AI agents powered by any combination of OpenAI, Anthropic (Claude), and Google Gemini models — each with its own persona, capabilities, and workflow.

Every agent can be extended with workflow steps: web search, document lookup, image analysis, email sending, PDF generation, and more — all configured visually without writing code.

Using the Chat

Sending messages

Type your message in the input area and press Enter (or Shift+Enter for a new line). You can also upload image or file attachments using the 📎 button.

Voice input

Click the 🎙️ mic button to speak your message. The browser will transcribe your speech and insert it into the input field. Click again to stop. Requires Chrome or Edge (Firefox not supported).

Text-to-speech

Enable Auto-read responses in the Voice Settings tab of the admin panel to have every AI reply read aloud automatically.

Conversations and projects

Conversations are saved automatically. You can organise them into Projects using the sidebar. Each project can have folders for further organisation.

Working with Agents

Each agent is an AI assistant with a specific purpose. Users can only see agents they have been granted access to. The admin can manage agent access per user in the Users tab.

To start a conversation with an agent, click its card in the sidebar. Some agents have a system prompt only — others run multi-step workflows.

Agent Builder — Overview

The Agent Builder is the visual workflow editor built directly into the admin panel. Access it by clicking Build Agent in the left sidebar of the Admin Panel — it opens as a full-screen tab within the admin interface.

You can also open the builder for a specific agent from the Agents tab → ⚡ Built-in Workflow button.

  • Steps are the building blocks — add them from the palette on the left.
  • Steps run top to bottom when a user sends a message.
  • Every agent must end with a call_llm step — that's what produces the reply.
  • Click a step to open its config panel on the right.
  • Use the ▶ Test button to run your workflow without leaving the builder.
  • Set the agent's icon by uploading an image in the Settings panel (top-right gear icon).
Tip: Use the 📥 Import JSON button to paste Claude-generated workflows directly into the builder. See the agent-workflow-reference.json file in the deployment folder for instructions.

Step Types

StepWhat it does
system_promptSets the agent's persona and rules. Always put this first.
call_llmCalls an AI model and generates the response. Required in every agent.
web_searchSearches the web and injects results before call_llm.
fetch_urlFetches and reads a webpage. Use {{message}} to read a URL the user pastes.
http_requestMakes a GET/POST/PUT to any external API (CRM, Airtable, GoHighLevel, etc.).
rss_feedReads the latest articles from an RSS feed.
summarizeCondenses long text from a previous step before call_llm.
translateTranslates the response into another language.
classifyClassifies the user's message into one of your defined categories.
extract_dataExtracts specific fields from a longer text.
analyze_imageSends an image to a vision model for analysis.
generate_imageCreates an image using DALL-E 3 (requires OpenAI key).
ocrExtracts all text visible in an image.
describe_videoSends a video URL to Gemini for analysis.
conditionChecks for a keyword and adds different context for yes/no branches.
format_outputTells call_llm exactly how to structure its response.
format_responseFinal formatting: tone, length, follow-up questions, sign-off style.
combineMerges all previous step outputs into one context block.
search_knowledgeSearches the agent's uploaded documents. Place before call_llm.
rememberSaves a value per user for future conversations.
recallRetrieves a previously saved value and injects it into the conversation.
generate_pdfConverts the AI response into a downloadable PDF. Place after call_llm.
send_emailEmails the AI response using the platform SMTP settings. Place after call_llm.

Templates

Click 📋 Templates in the Agent Builder to browse built-in templates (Web Researcher, Image Analyst, Lead Qualifier, etc.) and any custom templates you've saved.

To save the current workflow as a template, click 💾 Save as Template. Templates are stored in your browser's local storage.

Knowledge Base

Each agent can have its own set of documents — FAQs, manuals, price lists, policy files. The search_knowledge step searches these documents and injects the most relevant excerpts before call_llm.

Adding documents

There are two ways to add content:

  1. Go to Admin → Knowledge Base.
  2. Select the agent from the dropdown.
  3. Paste text: Click + Add Document, paste the content, and give it a name.
  4. Upload a file: Click 📎 Upload File and select a .txt, .md, .pdf, or .docx file — the text is extracted automatically.
Tip: Keep each document focused on one topic. Smaller, specific documents produce better search results than one large combined file.

Import JSON

You can generate agent workflows using Claude and import them directly into the builder:

  1. Open agent-workflow-reference.json (in the deployment folder) and copy its contents.
  2. Paste it into a new Claude conversation and describe the agent you want.
  3. Claude will return a JSON object — copy that JSON.
  4. In the Agent Builder, click 📥 Import JSON and paste.
// Example prompt to Claude:
"Here is my agent workflow reference. Build me an agent that:
- Searches the web for the user's query
- Extracts the most important facts
- Responds in plain bullet points"

Voice Input

The 🎙️ button in the chat input bar activates speech-to-text using your browser's built-in Web Speech API.

  • Supported: Chrome, Edge, Safari 14.1+
  • Not supported: Firefox (the button is hidden automatically)
  • The button turns red and pulses while recording
  • Transcribed text is appended to whatever you've already typed

PDF Export

Add a generate_pdf step after call_llm in your workflow. When the step runs, it converts the AI response to a PDF file and appends a download link to the chat message.

{
  "type": "generate_pdf",
  "config": {
    "filename": "daily-report"
  }
}

The filename will have a timestamp appended automatically (e.g. daily-report-1710000000000.pdf). PDFs are stored in the uploads/ folder.

Email — send_email Step

The send_email step emails the AI response using your configured SMTP server.

{
  "type": "send_email",
  "config": {
    "to": "[email protected]",
    "subject": "Daily AI Briefing",
    "body_source": "response"
  }
}

body_source options:

  • "response" — the AI's generated reply
  • "injected" — raw data gathered by previous steps (before AI processing)
  • any other string — sent as literal text
Requires SMTP: Configure your SMTP server in Admin → Settings before using this step.

Scheduled Agents

Run any agent automatically on a recurring schedule — useful for daily briefings, weekly summaries, monitoring tasks, and timed reports.

Setting up a schedule

  1. Go to Admin → Schedules.
  2. Click + Add Schedule.
  3. Choose an agent and enter a prompt (this is the message sent to the agent each run).
  4. Use the visual frequency picker to set the timing — no cron syntax knowledge required.
  5. Enable it and save.

Visual cron builder

The schedule modal includes a point-and-click frequency builder. Select how often to run, set the time, and the cron expression is generated automatically.

You selectGenerated expressionMeaning
Daily at 9:000 9 * * *Every day at 9:00 UTC
Weekly — Mon at 9:000 9 * * 1Every Monday at 9:00 UTC
Monthly — 1st at 8:000 8 1 * *1st of every month at 8:00 UTC
Every 30 minutes*/30 * * * *Every 30 minutes, all day
Every 2 hours0 */2 * * *Every 2 hours, on the hour
Custom(you type it)Full cron expression, 5 fields
All times are UTC. If your team is in UTC+2, a "9:00am" schedule means 11:00am local time.

Use ▶ Run in the Schedules table to trigger any schedule immediately and verify it works before waiting for the next scheduled time.

Widgets / Hub

The Hub is the quick-access panel in the chat sidebar. It shows shortcut buttons (widgets) that users can click to jump straight to common actions.

Two built-in widgets are always present: New Chat and New Project. Admins can add custom widgets that open any URL.

Adding a custom widget

  1. Go to Admin → Widgets.
  2. Click + Add Widget.
  3. Enter a title, upload an icon image, and paste the URL to open when clicked.
  4. Save — the widget appears in the Hub for all users immediately.
Use case examples: Link to your company Notion, a GoHighLevel pipeline, a booking page, a Slack channel, or any internal tool your team uses alongside the chat.

Dashboard Charts

The Dashboard tab shows two bar charts:

  • Model Usage — total requests per AI model
  • Monthly Cost History — estimated USD cost per month

Hover over any bar to see the exact value. Charts update every time you open the dashboard tab.

Admin Panel

The admin panel is accessible at /admin.html. Only users with the admin role can access it.

TabPurpose
DashboardUsage stats, API costs, monthly charts
UsersCreate/edit users, assign agent access
AgentsCreate/edit agents, open Agent Builder
Build AgentFull visual workflow editor — embedded directly in the admin panel
ModelsAdd AI models (API keys, pricing, provider)
ConversationsBrowse and manage all conversations
ProjectsManage projects and folders
Knowledge BaseUpload documents per agent (paste text or upload PDF/DOCX/TXT/MD)
SchedulesRecurring agent runs with visual cron builder
WidgetsHub shortcut buttons shown to all users in the chat sidebar
CalendarSocial media posting calendar
BrandingLogo, colors, site name, PWA icons
VoiceTTS voices, auto-read settings
SettingsSMTP configuration

AI Models

Add models in Admin → Models. Each model needs:

  • Name — display name (e.g. "Claude Sonnet 4.6")
  • Model ID — the provider's model ID (e.g. claude-sonnet-4-6)
  • Provideranthropic, openai, or google
  • API Key setting — which settings key holds the API key
  • Pricing — cost per 1M input/output tokens (for cost tracking)

The API keys themselves are stored in Admin → Branding → API Keys (or directly in the Settings table as anthropic_api_key, openai_api_key, google_api_key).

Users & Access

User roles:

  • admin — full access to admin panel and all agents
  • user — access only to assigned agents

In Admin → Users, click Edit on any user to change their role, reset their password, or update which agents they can see.

SMTP Settings

Configure email sending in Admin → Settings → SMTP / Email.

FieldExample
SMTP Hostsmtp.gmail.com
Port587 (STARTTLS) or 465 (SSL)
TLSSTARTTLS for port 587 — SSL/TLS for port 465
Username[email protected]
PasswordApp password (Google) or SMTP password
From AddressAK Chat <[email protected]>

After saving, use Send Test Email to verify delivery before using the send_email step in production.

Gmail tip: Use an App Password (Google Account → Security → 2-Step Verification → App passwords). Do not use your main Google password.