Welcome to Autonomous AI
This guide will walk you through everything — in plain, simple language. No technical background needed. By the end, you'll know exactly how to put AI to work for you.
You don't need to know how to code. Everything in this platform is done by clicking, typing instructions in plain English, and letting AI do the rest.
What can this platform do?
Agents
Your personal AI workers. Each one is trained to do a specific job — like reading emails, analysing data, or browsing the web.
Workflows
A sequence of tasks that run automatically, one after another. Like a recipe — agents follow the steps you define.
AIK Chat
Your AI assistant. Talk to it in plain English to get things done, ask questions, or build new workflows just by describing what you need.
Scheduling
Set any workflow or agent to run automatically — every morning, every Friday, or on any custom schedule you choose.
Debugger & Live Feed
Watch every step your agents take in real time on the Dashboard. Replay any failed workflow from the exact step that broke.
Start by reading Key Concepts (2 minutes), then jump straight to Agents to create your first one. Most people are up and running in under 10 minutes.
Understanding the Basics
Three simple ideas power everything on this platform. Once you understand these, the rest will click naturally.
🤖 What is an Agent?
Think of an agent as a specialist employee. You hire one for a specific skill — one agent checks your email, another reads spreadsheets, another looks things up on the web. You describe what it should do, and it does it whenever you ask (or on a schedule). Agents don't need breaks, don't make typos, and work 24/7.
⚙️ What is a Workflow?
A workflow is a list of tasks that run in order — like a recipe or a checklist. For example: Step 1 — check email for invoices. Step 2 — extract the numbers. Step 3 — save to spreadsheet. Step 4 — send a summary email. You build the list once, and then the workflow runs it automatically every time.
💬 What is AIK?
AIK is your main AI assistant — the one you talk to in the Chat section. You can ask it to do almost anything: "Create a workflow that sends me a daily weather report", or "Which invoices were processed last week?" AIK understands plain English and can control the rest of the platform on your behalf.
How do they work together?
A simple real-world example: you want to automatically process incoming invoices every morning.
You create an Agent for each task
One agent that knows how to read PDF files and extract numbers. One that knows how to write to a spreadsheet.
You build a Workflow that connects them
Step 1: read the invoice folder. Step 2: extract totals and vendor names. Step 3: save to your report.
You set a Schedule
Run every weekday at 8am. From that point on, it runs by itself — no clicking required.
Creating Your First Agent
An agent is your AI worker. Here's how to create one in less than 2 minutes.
Click Agents in the top navigation bar, then click the + New Agent button.
Step by step
Give it a name and description
Choose a clear name like "Invoice Reader" or "Daily Email Checker". The description tells the agent what its job is — write it like you're explaining it to a new colleague: "Check the inbox every morning for new invoices and list them."
Choose what it can do (its Workbench)
This is the agent's skillset. Pick from the list:
Write a Run Prompt (optional but recommended)
This is the instruction the agent follows every time it runs. Write it in plain English, as if you're leaving a note for a colleague: "Check the INBOX folder, find emails with attachments from the last 24 hours, and list the sender, subject, and attachment name."
💡 The more specific you are, the better results you get.Save and test it
Click Save Changes, then click the ▶ Run button. You'll see the agent working in real time — its output appears step by step on screen.
Choosing a backend type
When creating an agent from scratch (+ New Agent), you pick how it connects to its tools. There are three options:
🔌 MCP Server — Full Power
The agent gets a full set of callable tools via a Python MCP server. Pick an existing workbench (Mail, Excel, Browser…) from the dropdown, or describe what tools you need and click Generate with AIK — AIK writes the entire MCP server for you.
⌨️ CLI Tool — Simple
The agent runs a Python script or shell command and reads its stdout as the result. Enter the command manually (e.g. python scripts/extract_invoice.py --arg {"{"}input{"}"}), or describe what the script should do and click Generate script with AIK. No tokens are consumed during the tool call itself — only the final LLM reasoning step counts. Great for deterministic tasks like file parsing or data extraction.
📝 Markdown Instructions — Low Cost
The agent has no external tools — it reasons purely from a Markdown instruction file. Write the instructions yourself, or describe the agent's role and click Generate instructions with AIK. Best for agents that summarise, classify, translate, or draft text.
Each backend panel has a text field where you describe what you want, and a "Generate with AIK" button. Fill in the field first — AIK reads it to write the server, script, or instructions. The generated code appears in a preview panel and is saved to mcp_servers/ or scripts/ when you click Deploy.
Using the template library
Don't want to start from scratch? The Agents page has a built-in template library with ready-made agents for the most common tasks. Just click a template, give it a name, and deploy it in one click.
Some agents need extra settings (like an email password or API key) to work. You'll find these under Environments inside the agent's settings. If the agent doesn't work, this is usually the first thing to check.
Advanced agent types
Beyond the basic workbenches, the platform includes specialist agents for powerful automation scenarios.
🌐 Browser Agent — Web RPA
Automates real websites using a real browser (Playwright). Supports smart waits, iframes, multiple tabs, drag & drop, JavaScript execution, form auto-fill, table extraction, and session save/restore (so it can log in once and reuse the session later). Ideal for scraping portals, filling online forms, or testing web apps.
🖥️ Desktop Agent — PC Automation
Controls the mouse and keyboard on your desktop. Can read on-screen text using OCR, find buttons and icons by image matching, manage open windows (focus, close, list), take screenshots of specific regions, and interact with any application — including legacy programs with no API. Ideal for automating desktop software, ERP screens, and local tools.
🏢 SAP Agent — Legacy ERP
Connects directly to SAP GUI for Windows via the built-in scripting API. Can run T-codes, read and write field values, navigate menus, read ALV tables row-by-row, and save documents — all without touching SAP's web or BAPI layer. See the Integrations Setup → SAP section for configuration steps.
🟦 Teams Agent — Microsoft 365
Full Microsoft Teams automation via the Graph API. Send channel messages, reply in threads, create channels, schedule online meetings, manage team members, send 1:1 chats, and search messages across the entire organisation. See Integrations Setup → Microsoft Teams for the Azure app registration steps.
🛡️ Security Monitor
Analyzes platform activity logs for security threats without requiring any SQL access. When you run it, the platform automatically fetches the last 50 activity events and 20 agent run logs and passes them to the agent. The agent applies NIST CSF and MITRE ATT&CK frameworks to detect brute-force attempts, data exfiltration signals, privilege escalation, and anomalous agent behaviour — then produces a scored security report with recommended actions. No environment variables needed.
Agent Knowledge Base (Memory)
Every agent has a personal knowledge base — a set of key/value facts it can remember between runs. Open an agent and click the Knowledge Base tab. Click + Add Entry, type a key (like "default_recipient") and a value (like "boss@company.com"), then save. The agent can read and update these entries during its runs — useful for storing settings, preferences, or accumulated knowledge.
When self-improvement is enabled, the agent also automatically writes recovery lessons to its knowledge base whenever it retries a failed step and succeeds. Over time, it builds up a library of "what went wrong and how I fixed it" that makes future runs more reliable.
Agent Self-Improvement (opt-in)
Each agent can review its own past run logs and automatically suggest improvements to its instructions. Open an agent, go to the Self-Improvement tab, enable it, and pick how often to run analysis. The agent will periodically read its recent results and rewrite its own system message to perform better on future tasks — no manual tuning needed.
Set a Monthly Budget on the agent to cap spending. The runner will stop the agent once the limit is reached for that calendar month.
Keyboard shortcut & output saving
⌨️ Ctrl + Enter to Run
When the Run Prompt text box is focused, press Ctrl + Enter (or ⌘ + Enter on Mac) to run the agent immediately — no need to click the ▶ Run button.
⬇ Save Agent Output
After an agent finishes, its result appears in the Last Run Result panel. Click the ⬇ Save button in the panel header to download the result as a .txt file named after the agent.
🔔 Browser Notifications
When you first open the platform, your browser will ask if it may send notifications. If you allow it, a desktop notification pops up whenever an agent run completes — even if you've switched to another tab or window.
Building Your First Workflow
A workflow connects agents into a sequence of steps. You define the order, and the platform runs everything automatically.
Click Workflows in the top navigation bar, then click + New Workflow.
Step by step
Create the workflow
Give it a name that describes what it does, like "Morning Invoice Report" or "Weekly Sales Summary". Click Create.
Add steps
Click + Add Step. Each step is one task. Give the step a name, choose which agent does it, and write the instruction for that step. You can add as many steps as you need.
📌 Steps run in the order you list them. You can drag them to reorder.Run it manually first
Click the ▶ Run button to test it. Watch the live output — each step completes and passes its result to the next one. Check the Run History tab to see what happened.
Set a schedule (optional)
Scroll down to the Schedule section. Enable it, pick a time and which days to run, and save. The workflow will now run by itself on that schedule — you don't need to do anything.
IF Conditions — branching your workflow
Sometimes you want the workflow to take a different path depending on what happened in a previous step. For example: "If the email contains the word 'urgent', notify me immediately. Otherwise, just log it."
Add an IF step
Click + Add Step and change the Step Type to ⚡ IF Condition.
Set the condition
Choose a rule: contains / equals / does not contain / starts with, and type the word or phrase to look for in the previous step's result.
Choose what happens on TRUE and FALSE
Enter the step numbers that should run if the condition is met (TRUE), and which steps to skip if it isn't (FALSE). The workflow will automatically take the right path every time.
The Canvas view
Click the ⬜ Canvas button in the workflow header to see a visual map of your workflow. Each step is a card, connected by arrows. IF steps show two output arrows — one green (TRUE) and one red (FALSE). Human Approval steps appear as a purple 👤 node. You can double-click any card to edit that step.
👤 Human Approval — pause and wait for a person
Add a Human Approval step anywhere in your workflow to pause execution and wait for a real person to review and decide before continuing. This is useful for high-stakes actions — like approving a payment, publishing content, or sending a bulk email — where you don't want full automation.
Add a Human Approval step
Click + Add Step and change the Step Type to 👤 Human Approval. Write a short instruction in the Description — this is what the reviewer will see.
Run the workflow — it will pause
When the workflow reaches the approval step, it stops and shows "⏸ Awaiting human approval" in the run output. A notification appears in the dashboard bell.
Review on the Dashboard
Open the Dashboard and find the Pending Approvals card — it appears just below the AIK Command Center banner. Click Review to see the instruction, the previous step's output as context, and buttons to Approve or Reject. You can add an optional comment — it will be passed as context to the next step.
Tip: When adding a Human Approval step to a workflow, check the 🔔 In-app checkbox to make the approval card appear on the Dashboard. Leave it unchecked if you only want Email or Webhook notifications.
Workflow resumes automatically
On approval, the workflow continues from where it left off. On rejection, it stops and is marked as rejected in the run history.
Trigger Chains — one workflow starts another
Use a Sub-Workflow step to run a second workflow as part of the current one. This lets you build modular automation — for example, a "daily report" workflow that calls a "send email" workflow as its last step, keeping each piece reusable on its own.
Step shortcuts — duplicate & single-step run
Each step in a workflow has two extra action buttons next to the usual edit/delete:
⧉ Duplicate Step
Click the ⧉ button on any step to instantly create a copy of it at the end of the workflow. Useful when two steps are similar — duplicate, then adjust the instruction for the second one.
▶ Run Single Step
Click the purple ▶ button on any step to run only that step in isolation, without running the rest of the workflow. The output appears in the live run feed just as a full run would.
Failure notifications
The Failure Notifications toggle in the Schedule section of any workflow controls whether you receive an email when a scheduled run fails. When On, the platform sends a failure email to the address configured in your mail settings. This is a global setting — it applies to all your scheduled workflows, not just the one you're looking at.
Dry Run — test without side effects
Enable Dry Run mode in the Run panel before clicking ▶ Run. The workflow executes all its logic but skips any actions that would have real-world effects (sending emails, posting to social media, writing files). Use it to verify the flow and see what the agents would do before committing.
Smart Recovery — automatic retry on failure
Set Max Retries on any step (in the step settings). If a step fails, the runner automatically tries again — up to the limit you set — before marking it as failed. Combine with a Timeout (seconds) to prevent a hung step from blocking the whole workflow.
Time-Travel Replay — restart from any step
If a workflow fails halfway through, you don't have to start all over. Open the Analytics page, click Debug on any run, and in the step timeline click Replay from Step N next to the step where things went wrong. The workflow restarts from that step only — all steps before it are skipped, saving time and cost.
Your 5-step workflow fails at step 4. You fix the agent's instructions, then click Replay from Step 4. Steps 1–3 are not re-run. The workflow picks up from step 4 and continues to the end as normal.
Import & Export
You can save any workflow as a file and reload it later — useful for backups, sharing with a colleague, or moving workflows between environments (for example, from your local machine to the cloud server).
⬆ Import JSON
Click the ⋯ button at the top of the Workflows panel and choose Import JSON. Pick a .json file you previously exported — the workflow appears in your list immediately, ready to use.
⬇ Export
Open any workflow, click the ⋯ menu inside the workflow editor, and choose Export. This downloads a .json file containing the full workflow definition — all steps, settings, and schedule.
📋 From Template
Click ⋯ → From Template to open the Template library. Choose a ready-made workflow blueprint (Built-in or Marketplace), give it a name, and click Create Workflow. A full workflow is created for you — just adjust the steps to fit your needs.
⚡ Batch Runs — process hundreds of rows at once
Have a CSV file with 50 customer names, 200 invoice numbers, or 1 000 rows of any data? Batch Runs lets you run a workflow once for every row — automatically.
Open a workflow and click ⚡ Batch
The Batch button appears next to the regular Run button on every workflow.
Upload your CSV file
Drag and drop or browse for a .csv file. Each row becomes one run. The first row (headers) tells the workflow what each column means.
Watch progress and download results
A progress bar shows completed / failed rows in real time. When done, click ⬇ Download Results to get a JSON file with every row's output.
Rows run one after the other (not all at once) so you don't hit API rate limits. A 200-row batch on a 3-step workflow still completes automatically while you do something else.
Talking to AIK
AIK is your AI assistant. You can talk to it just like you'd message a colleague — in plain, everyday language.
Click Chat in the top navigation bar. You can also start a conversation from the Dashboard.
What can you ask AIK?
Ask questions about your platform
"How many workflows do I have?" · "What did the invoice workflow do last Tuesday?" · "Which agents are currently active?"
Ask it to build things for you
"Create a workflow that reads my inbox every morning and sends me a summary." · "Build me an agent that checks the weather." AIK will design and create it automatically.
Ask it to run things
"Run the Morning Report workflow now." · "Check my email and tell me if there are any invoices."
Ask it anything you'd ask a smart assistant
"Summarise what happened in all my workflow runs this week." · "What's the best way to automate my expense reports?"
Tips for better results
✅ Be specific
Instead of "check emails", say "check my Gmail inbox for emails received today that contain the word 'invoice' and list the sender and subject". The more detail you give, the better the result.
✅ Tell it the outcome, not the method
Don't worry about how AIK will do it — just describe what you want to happen. "By the end I want a spreadsheet with all vendor names and totals" is better than trying to describe the technical steps.
✅ Use follow-up messages
If the result isn't quite right, just reply with a correction. "Good, but also include the date of each invoice." AIK remembers the conversation and adjusts.
Organising with Projects
Projects are folders. They help you keep your agents and workflows organised when you have more than a few.
Create a project
On the Dashboard or Workflows page, click + New Project. Give it a name like "Finance Automation" or "Marketing Tools". Pick a colour to make it easy to spot.
Add workflows and agents to it
Right-click any workflow or agent and choose Move to Project. You can also set the project when creating something new.
Share with a colleague (optional)
Open the project, click Members, and enter a colleague's email address. They'll be able to see and use the workflows inside it.
Running Things Automatically
Any workflow or agent can be set to run on a schedule — without you having to do anything.
Simple schedule (time + days)
The easiest way. Open any agent or workflow, scroll to the Schedule section, enable it, pick a time and tick the days you want. Done.
Use the preset buttons to set days in one click: Every day, Weekdays, Weekends, Mon only, or Clear — then just set the time.
Enable schedule → click Weekdays preset → Time: 08:00 → Save. The agent runs every weekday at 8am.
Cron expression (advanced)
For more precise control — like "every 30 minutes" or "on the first day of every month" — switch to ⚙ Cron mode and type a cron expression.
Every 30 minutes
*/30 * * * *
Every day at 9am
0 9 * * *
Weekdays at 9am
0 9 * * 1-5
Every 2 hours
0 */2 * * *
The platform checks for scheduled runs every minute. If you set a schedule and it doesn't run, make sure the workflow status is set to Active.
Triggering Workflows from Outside
A webhook lets another app (Zapier, Make, your own system) start one of your workflows automatically.
A webhook is a special link. When something calls that link, your workflow starts running. You control who has the link.
Open a workflow and scroll to Webhooks
Click + Add, give the webhook a name (e.g. "From Zapier"), and click Create.
Copy the webhook URL
You'll see a unique URL. Copy it — this is what you paste into Zapier, Make, or any other tool.
Paste it into the other tool
In Zapier or Make, choose a "Webhook" action and paste the URL. Whenever that action fires, your workflow will start.
💡 You can also send a message with the webhook — it will be passed to the workflow as its starting instruction.If a webhook-triggered workflow fails (network error, timeout, agent crash), the platform retries it automatically — after 1 minute, then 5 minutes, then 15 minutes. After 3 failed attempts it stops and marks the webhook as error. You can see all attempts in Run History.
Public API — call AIK from your own apps
Generate a secret key and use it to trigger AIK from scripts, Zapier, n8n, or any HTTP tool — no browser login needed.
How it works
API keys let external apps talk directly to your AIK platform. Add the key as a header on every request — that's it.
Go to API Keys
Click API Keys in the sidebar.
Generate a key
Give it a name (e.g. "My Script"), choose an optional expiry date, click Generate. Copy the key — it is shown only once.
Use the key
Add this header to every request: X-API-Key: aik_your_key_here
Available endpoints
Send a message to AIK
POST /v1/chat
{"message": "Summarise the latest invoice"}List your workflows
GET /v1/workflows
Run a workflow
POST /v1/workflows/{id}/run
{"variables": {"recipient_email": "ceo@company.com"}}Security tips
Keep keys secret
Never share a key or commit it to Git. If a key leaks, revoke it immediately from the API Keys page.
Set expiry dates
For one-off integrations, set a 30-day expiry. Expired keys stop working automatically.
Full API docs
Go to /docs (Swagger) → scroll to Public API v1 for interactive testing.
Agent Monitor — live view of all runs
See what's running right now, stop a stuck job, and dig into step-by-step history of every workflow execution.
What you can see
Stats strip
Runs today, success rate, failed count, average duration, monthly cost, and total all-time runs — all at a glance at the top of the page.
Live section
Shows the currently running job (if any) with a progress bar and elapsed time. Auto-refreshes every 5 seconds.
Run history
Every workflow and agent run — name, status (success / failed / running), trigger (manual / schedule / webhook), duration, and cost. Click any row to expand step-by-step details.
Stop a running job
If a workflow is stuck or running too long, click the red ⏹ Stop button in the Live section. The current step will be interrupted and the run marked as failed.
Tracking Cost and Usage
The Analytics page shows you exactly how much each agent and workflow is spending, how many AI tokens are being used, and a live feed of recent activity.
Click Analytics in the top navigation bar.
What you can see
📈 Token & Cost Summary
Total tokens sent (input) and received (output) across all runs, plus the total cost in USD. The summary covers all time by default — use the date filter to narrow to a specific period.
🤖 Breakdown by Agent and Workflow
See which agents are consuming the most tokens and costing the most. Each row links to the full run log for that agent or workflow.
⚡ Live Activity Feed
A real-time list of recent runs — agent name, status (success / failed), duration, and cost. Click any row to see the full output of that run.
📅 Date Range & Period Filter
Use the 7d / 30d / 90d buttons to pick a quick period, or set exact From and To dates using the date pickers next to the period buttons. All charts and the Recent Runs table update instantly.
📄 Recent Runs — Pagination
The Recent Runs table shows 10 rows per page by default. Use the 10 / 50 / 100 / page selector at the top-right of the table to show more, and the Prev / Next / page number buttons at the bottom to navigate. The table can hold up to 500 runs in memory without a page reload.
⬇ CSV Export
Click the ⬇ CSV button in the top bar to download the current run list as a spreadsheet. The export respects the active date filter and includes ID, entity name, status, start time, duration, cost, tokens, and trigger.
🔍 Per-Agent Analytics
Use the All agents & workflows dropdown in the top bar to filter the entire analytics view to a single agent. A detail panel opens below the topbar showing that agent's run history, total cost, token counts, average duration, success rate, and failure count.
📋 Run Log Actions
Click the ⋮ (three-dot) menu on any run row to: view the full log, export the run result as an Excel file, or re-run the same task immediately.
🔍 Time-Travel Debugger
Click the Debug button on any run row to open the debugger. For workflow runs it shows a step-by-step timeline — each step with its status, duration, and result text. Click Replay from Step N on any step to restart the workflow from that point, skipping steps that already succeeded. For direct agent runs (chat or single-agent), the debugger shows a summary card: status, cost, tokens used, and how long it took.
📈 Run Estimator
When you open any agent or workflow, a small banner shows at the top of the run section: the average cost, average duration, and success rate based on the last 20 runs. This helps you predict what a run will cost before you start it.
Monthly Budgets
You can set a Monthly Budget (in USD) on each agent from the agent's settings page. Once the agent hits its budget for the current calendar month, the runner will refuse to start new runs for that agent until the month resets. This prevents accidental runaway spending on automated schedules.
Using and Sharing Templates
Templates are ready-made workflows that you can install with one click — no building from scratch required.
Installing a template
Open the Templates marketplace
Go to the Workflows page, click the ⋯ button, and choose From Template. Switch to the Marketplace tab.
Browse and install
Find a template that matches what you need. Click Install — a copy of the workflow is added to your account instantly.
Customise it
The installed workflow is entirely yours. Edit the steps, change the agents, adjust the instructions to fit your exact situation.
Publishing your own template
Built something useful? Share it with others. Right-click any workflow → 🏪 Publish as Template. You can keep it private (only you can install it) or make it public for everyone.
Sign in with Google
Let users log in or register using their Google account — no password needed.
How it works
When a user clicks Continue with Google on the login page, they are sent to Google's sign-in screen. After they approve, Google sends them back to the platform already logged in. If it's their first time, an account is created automatically.
⚙️ Setup (one-time, admin only)
Create a Google OAuth app
Go to console.cloud.google.com → APIs & Services → Credentials → Create credentials → OAuth 2.0 Client ID. Choose Web application.
Add your redirect URI
In the "Authorised redirect URIs" field, add:
https://your-domain.com/auth/google/callback
Paste keys into Platform Settings
Copy your Client ID and Client Secret from Google, then paste them in Settings → Platform Keys → Google OAuth Client ID and Google OAuth Client Secret.
Done
The "Continue with Google" button on the login and register pages is now active. No server restart needed.
You may need to publish your OAuth consent screen in the Google Cloud console before external users can use it. While in test mode, only accounts you add as testers can sign in.
Your Personal Settings
Settings let each user configure their own API keys, email credentials, and model preferences — without touching the platform defaults.
Settings page (your personal page) — API keys, mail credentials, and model choices that apply only to your account. Other users are not affected.
Admin page (admin users only) — platform-wide defaults that apply to all users unless they have their own Settings override.
The seven tabs
Set Your API Key — one key for whichever provider you use (OpenAI, Anthropic, Groq, or Google). Pick your Cloud Model from the dropdown. Pick your Local (Ollama) Model from the dropdown if you run agents locally. Leave fields blank to use the platform default set by an admin.
Each agent also has a Model Mode you can set per-agent (in the edit panel or run sidebar):
- Auto — uses the model you set here in Settings. The label shows which model that is.
- Smart Auto — automatically picks the right model based on task difficulty: a reasoning model for complex analysis, a fast model for simple tasks. Uses the first provider with a valid API key.
- Cloud — lets you override the model for that specific agent, choosing any provider and model regardless of your Settings default.
You can also pull new Ollama models directly from the AI/LLM tab — type the model name (e.g. gemma4:12b) and click Pull. The download runs in the background so you can navigate away freely.
SMTP (outgoing) and IMAP (incoming) credentials for the Mail Agent to send and read email on your behalf. Use Gmail App Passwords or an Outlook App Password here — not your regular login password.
Add any custom API keys for external services your agents need — a weather API key, a custom REST service token, a business tool key, etc. Click + Add Connection, enter a name (becomes the environment variable name, e.g. WEATHER_API_KEY) and paste the value. Your agents can then read this variable automatically. Add as many as you need.
For social media tokens (LinkedIn, Google, GitHub…) use the Integrations page instead — it handles OAuth flows properly.
Override the platform database connection for your account. Useful if you have a separate database your agents should query. Format: postgresql://user:pass@host:5432/dbname.
Toggle email alerts when a scheduled agent or workflow fails. When enabled, you receive an email immediately after a failure so you can investigate without having to check the Monitor page manually.
Contains five sections:
- Platform Version & Updates — click Check for updates to compare your running version against the latest code on GitHub. If an update is available, click Download & Apply Update — the platform pulls the latest code, updates all packages, migrates the database, and restarts the server automatically. The page reloads itself when the server is back (~30 seconds). No terminal needed.
- Two-Factor Authentication (2FA) — enable TOTP-based 2FA using Google Authenticator or any TOTP app. Once on, every login will ask for a 6-digit code after the password.
- File Access — by default your agents can only read and write inside your personal sandbox folder (
data/sandbox/<your-id>). Add extra folder paths here — one per line — to grant access to other locations. - Danger Zone — permanently deletes your account and all your data. Requires your password to confirm. Cannot be undone.
- Platform Security (superusers only) — toggle to enable or disable new user registrations platform-wide.
Step-by-step guides for setting up the platform on Windows, Mac, or Linux — no technical knowledge required. Go to Settings → Installation and pick your operating system at the top.
- Auto-start on Windows — run
install_service.ps1once as Administrator. Uses NSSM to register AIK as a Windows service. - Auto-start on Mac — run
bash install_service_mac.shin Terminal. Registers AIK via macOS launchd so it starts on every login. - Auto-start on Linux — run
sudo bash install_service_linux.sh. Registers AIK as a systemd service that starts on every boot. Check status withsudo systemctl status aik. - Desktop shortcut — one-line command for each OS (ready to copy and paste) that creates a Desktop icon to open AIK in the browser.
- Share with others — zip the AIK folder and send it. Windows users run
setup.ps1; Mac/Linux users run the matching install script. Everything installs automatically.
Testing your mail settings
After filling in the SMTP credentials on the Mail tab, click 📧 Send test email next to the Save button. The platform will send a real email to your registered address — if you receive it, your mail settings are working correctly.
Dark / Light mode
Click the ☀️ / 🌙 button in the top-right corner of the Dashboard to toggle between dark and light mode. Your choice is saved in the browser and remembered the next time you visit — on any page of the platform.
Navigation tip
From the Dashboard you can reach every page directly — either via the top navigation bar (Dashboard, AIK, Docs, Workflows, Agents, Analytics, Integrations, Settings, Billing, Contact) or via the quick-navigate grid of tiles below the AIK builder panel. The Contact page is also reachable from every sidebar page and from the public landing page.
Choosing Your AI Brain
The platform works with cloud providers (OpenAI, Anthropic, Google, Groq) and local models via Ollama. Here's how to get set up with each.
For your personal keys: Go to Settings → AI / LLM. Choose your Cloud Model, paste your API key, and pick your Local (Ollama) model from the dropdown. Your keys override the platform default for your account only.
For platform-wide defaults (admin only): Go to Admin → Platform API Keys & Environment to set defaults for all users. Admin → Platform Settings to choose Cloud vs Local mode globally.
OpenAI (GPT-4, o3, o4-mini…)
The most widely used cloud LLM provider. Offers GPT-4o, GPT-4.1 (1 million token context), and reasoning models (o1, o3, o4-mini). Requires a paid account — you must add at least $5 credit before the API will work.
Create an account
Go to platform.openai.com → sign up with Google or email. Once logged in, go to Settings → Billing.
Add at least $5 credit
Click Add payment method, enter your card, then click Add to credit balance and top up $5 or more. Without any credit balance the API returns a billing error even after account creation.
Create an API key
Go to platform.openai.com/api-keys → + Create new secret key → copy it (you won't see it again). Paste it into Settings → AI / LLM → OpenAI API Key (your personal key) or Admin → Platform API Keys (platform-wide).
Pick a model
gpt-4.1-nano (~$0.10/1M tokens) is the cheapest. gpt-4o-mini is the best everyday value. gpt-4.1 has a 1M-token context for large documents. o4-mini is best for complex reasoning tasks.
Anthropic (Claude)
Excellent reasoning, very large context windows (200K tokens), and great instruction-following. Recommended for complex multi-step workflows. Requires an account and billing credit.
Create an account
Go to console.anthropic.com → sign up. Anthropic sometimes adds new accounts to a waitlist — check your email for an approval notice before expecting API access.
Add billing
Console → Settings → Billing → add a payment method and add some credit. Any amount works (there is no enforced minimum like OpenAI, but $5 is a good starting point).
Get your API key
Console → API Keys → Create Key → copy it. Paste it into Settings → AI / LLM → Anthropic API Key (your personal key) or Admin → Platform API Keys (platform-wide).
Pick a model
claude-haiku-4-5 is the fastest and cheapest. claude-sonnet-4-6 is the best all-rounder. claude-opus-4-8 is the most capable for very demanding tasks.
Google AI (Gemini)
Google's Gemini 2.5 Pro and Flash models are competitive for most tasks. Free tier available — no billing required to get started.
Get a free API key
Go to aistudio.google.com → sign in with your Google account → click Get API key → Create API key in new project. No billing required for the free tier.
Set in Admin
Paste the key into Settings → AI / LLM → Provider API Key. Select google as provider and gemini-2.5-flash as model — it's fast and free-tier friendly.
Free tier limits
Free tier allows ~15 requests/minute and 1,500 requests/day for Gemini 2.0/2.5 Flash. For higher volume, add billing in Google AI Studio to lift these limits.
Groq (Ultra-fast inference)
Groq runs open-source models (Llama 3.3, DeepSeek-R1, Gemma) on custom hardware at extremely high speed. Very generous free tier — no credit card needed to start.
Create a free account
Go to console.groq.com → sign up. No credit card required for the free tier.
Get an API key
Dashboard → API Keys → Create API Key → copy it. Paste into Settings → AI / LLM → Groq API Key.
Pick a model
llama-3.3-70b-versatile is the most capable. llama-3.1-8b-instant is fastest for simple tasks. Free-tier limits are generous for personal and small-team use.
Ollama (Local — no API key needed)
Run AI models entirely on your own machine. Free, private, and offline — no data ever leaves your computer. Requires a decent GPU (or CPU for smaller 3–7B models). You can pull models directly from the Admin panel without using a terminal.
Install Ollama
Download from ollama.com. Available for macOS, Linux, and Windows. After installation, Ollama automatically starts a local server at http://localhost:11434.
Pull a model from the platform
Go to Settings → AI / LLM. Under Pull a new model, type a model name (e.g. qwen2.5:7b, gemma4:12b, phi4-mini) and click ⬇ Pull. The download runs as a background task — you can navigate to other pages and it continues. Come back to Settings to check progress.
Or pull from the terminal
You can also run ollama pull qwen2.5:7b in a terminal. Once pulled, the model appears in the Admin model list automatically.
Switch to Local mode
Admin → Platform Settings → Model Mode → Local (Ollama) → select your model → Save Changes. All agents and workflows now use this model locally.
Just want to try it quickly? Use Groq — free, no credit card, extremely fast.
Best everyday balance? OpenAI gpt-4.1-mini or Anthropic claude-haiku-4-5.
Complex reasoning tasks? Anthropic claude-sonnet-4-6 or OpenAI o4-mini.
Privacy-first / offline? Ollama with qwen2.5:7b — good all-rounder, runs on 8 GB RAM.
How to Get Credentials for Each Service
Every integration needs an API token or key. This guide shows exactly where to get them for each supported platform.
Google Workspace
Used by GoogleAgent — list and manage Drive files, create Docs, read/write Sheets, schedule Calendar events. Tokens are auto-refreshed — no manual renewal needed.
Enable the required APIs
Go to console.cloud.google.com → select your project → APIs & Services → Library. Search for and enable each of these: Google Drive API, Google Docs API, Google Sheets API, Google Calendar API.
Create an OAuth 2.0 Client ID
APIs & Services → Credentials → + Create Credentials → OAuth client ID. Application type: Web application. Under Authorized redirect URIs add: https://developers.google.com/oauthplayground. Click Create. Copy the Client ID and Client Secret — or click Download JSON to save them (you cannot see the secret again after closing the popup; use Download JSON or Reset Secret if you lose it).
Add yourself as a test user
APIs & Services → OAuth consent screen → Audience tab → Test users → Add your Google email address. Without this step you will get a "Google hasn't completed verification" error when authorizing.
Generate a Refresh Token via OAuth Playground
Go to developers.google.com/oauthplayground. Click the gear icon (top-right) → check Use your own OAuth credentials → paste your Client ID and Client Secret. In the left panel select all four scopes:
• Drive API v3 → https://www.googleapis.com/auth/drive
• Docs API v1 → https://www.googleapis.com/auth/documents
• Sheets API v4 → https://www.googleapis.com/auth/spreadsheets
• Calendar API v3 → https://www.googleapis.com/auth/calendar
Click Authorize APIs → sign in → Exchange authorization code for tokens. Copy the Refresh token — this never expires.
Save in the platform
Go to Integrations → + Connect Google. Fill in all four fields: Refresh Token, OAuth Client ID, OAuth Client Secret. The OAuth2 Access Token field can be left empty — the platform fetches a fresh one automatically using the other three. Click Save Connection → Test.
Slack
Used by SlackAgent — send messages, reply in threads, add reactions, send DMs, list users, upload files, create channels, edit and delete messages, pin messages.
Create a Slack App
Go to api.slack.com/apps → Create New App → From scratch. Name it and select your workspace.
Add permissions
OAuth & Permissions → Scopes → Bot Token Scopes. Add: chat:write, channels:read, channels:history, channels:manage, files:write, reactions:write, pins:write, im:write, users:read, users:read.email.
Install to workspace
OAuth & Permissions → Install to Workspace → Allow. Copy the Bot User OAuth Token (starts with xoxb-).
Save in platform
Integrations → + Connect Slack → paste Bot Token → Save. Set SLACK_BOT_TOKEN=xoxb-... in your .env file.
GitHub
Used by GitHubAgent — full GitHub management: repos, issues, PRs, branches, commits, releases, GitHub Actions, code search, notifications, and stars. One personal access token covers everything.
Open Developer Settings
Go to github.com → click your profile picture (top-right corner) → Settings → scroll to the very bottom of the left sidebar → Developer settings.
Create a Fine-grained Token
Go to Personal access tokens → Fine-grained tokens → Generate new token. Set a name (e.g. "AIK Platform"), choose an expiration (90 days recommended, or "No expiration"), and leave Resource owner as your username.
Select repository access
Under Repository access choose All repositories to let the agent work across all your repos, or select specific ones if you prefer to limit access.
Set permissions
Under Permissions → Repository permissions set: Contents → Read and write, Issues → Read and write, Pull requests → Read and write. Metadata is set to Read-only automatically.
Copy the token
Click Generate token at the bottom and copy the token immediately — it starts with github_pat_ and will not be shown again once you navigate away from the page.
Save in the platform
Go to Integrations → click + Connect GitHub. Paste the token into the Personal Access Token field, optionally set Default Owner to your GitHub username (saves typing it in every workflow), and click Save Connection. Use the Test button to confirm it connects.
Used by InstagramAgent — publish posts, read insights, reply to comments. Requires a Business or Creator account linked to a Facebook Page.
Create a Meta App
Go to developers.facebook.com → My Apps → Create App. Type: Business. Add the Instagram Graph API product.
Get a long-lived token
Tools → Graph API Explorer → select your app → Generate User Token with scopes: instagram_basic, instagram_content_publish, instagram_manage_insights. Then exchange it for a long-lived token at: graph.facebook.com/oauth/access_token?grant_type=fb_exchange_token&client_id=APP_ID&client_secret=APP_SECRET&fb_exchange_token=SHORT_TOKEN
Get Business Account ID
Call GET /me/accounts in Graph API Explorer → find your page → then GET /{page-id}?fields=instagram_business_account to get the numeric Instagram Business Account ID.
Save in platform
Integrations → + Connect Instagram → paste Access Token and Business Account ID → Save.
Used by FacebookAgent — post to Pages, read analytics, reply to comments.
Get Page Access Token
developers.facebook.com → Tools → Graph API Explorer → select your app → User or Page Token → select your Page from the dropdown → Generate Token. Scopes needed: pages_manage_posts, pages_read_engagement, pages_read_user_content.
Get Page ID
Go to your Facebook Page → About → scroll to bottom → Page Transparency → Page ID. Or visible in the page URL.
Save in platform
Integrations → + Connect Facebook → paste Page Access Token and Page ID → Save.
Used by LinkedInAgent — posts, articles, likes, comments, company pages, people search, messaging, and job search. One access token (valid 60 days) covers all operations.
Create a free Company Page
LinkedIn requires a Company Page to create a Developer App — it does not accept a personal profile. Go to linkedin.com/company/setup/new, enter any name (your project, your own name, anything), pick any industry and company size, and click Create Page. You never need to use this page for anything else.
Create a LinkedIn Developer App
Go to developer.linkedin.com → My Apps → Create App. Enter an app name, attach the Company Page you just created, upload any image as the logo, and click Create App.
Add the required Products
Inside your app go to the Products tab. Click Request Access on both Share on LinkedIn and Sign In with LinkedIn using OpenID Connect. Both are approved instantly for developer use.
Set the redirect URL
Go to the Auth tab → OAuth 2.0 settings → Authorized redirect URLs. Add: https://www.linkedin.com/developers/tools/oauth/redirect and save.
Generate an Access Token
In the Auth tab scroll to the bottom and click OAuth 2.0 Token, or go to developer.linkedin.com/tools/oauth/token-generator. Select your app, check scopes: openid, profile, email, w_member_social. Click Request access token, sign in when prompted, and copy the token shown. The token is valid for 60 days — repeat this step when it expires.
Save in the platform
Go to Integrations → click + Connect LinkedIn. Paste the Access Token, give the connection a name, and click Save Connection. Use the Test button to confirm it connects successfully.
Twitter / X
Used by TwitterAgent — post tweets, search, read engagement metrics. Bearer Token alone is enough for read-only; all four keys are needed for posting.
Apply for developer access
Go to developer.twitter.com → Sign in → apply for a free developer account. Takes a few minutes.
Create a project + app
Developer Portal → Projects & Apps → New Project → New App. Set permissions to Read and Write.
Copy credentials
App → Keys and Tokens. Copy: Bearer Token (for search/read), API Key, API Key Secret, Access Token, Access Token Secret (for posting).
Save in platform
Integrations → + Connect Twitter/X → paste all keys → Save. You can leave the posting keys empty if you only need read access.
YouTube
Used by YouTubeAgent — search, trending, channels, playlists, comments, subscriptions, video management. API Key covers all read operations. OAuth Refresh Token unlocks write operations: post/delete comments, create playlists, subscribe to channels, rate videos, update video metadata.
Enable YouTube Data API v3
Go to console.cloud.google.com → select your project → APIs & Services → Library → search YouTube Data API v3 → click it → Enable.
Create an API Key
APIs & Services → Credentials → + Create Credentials → API key. A popup appears with the key immediately — copy it and close. No form to fill.
Save and test read-only access
Go to Integrations → + Connect YouTube → paste the API Key into the API Key field → leave OAuth Access Token empty → Save Connection → click Test. If it passes you have full read access (search, stats, comments, trending, channel info).
Create an OAuth 2.0 Client ID (for write access)
In Credentials → + Create Credentials → OAuth client ID → Application type: Web application → under Authorized redirect URIs add: https://developers.google.com/oauthplayground → Create. A popup shows your Client ID and Secret — click Download JSON to save them (the secret cannot be seen again after closing the popup; use Download JSON or Reset Secret if you lose it).
Generate a Refresh Token via OAuth Playground
Go to developers.google.com/oauthplayground → click the gear icon (top-right) → check Use your own OAuth credentials → paste your Client ID and Secret → close. In the left list find YouTube Data API v3 → check https://www.googleapis.com/auth/youtube → click Authorize APIs → sign in with your Google account → Exchange authorization code for tokens. Copy the Refresh token — it never expires (unlike the short-lived access token).
Save full credentials in the platform
Go to Integrations → find your YouTube connection → click Edit → fill in: OAuth Access Token = Refresh Token (from step 5), Client ID = from step 4, Client Secret = from step 4 → Save Connection. The agent will now auto-refresh the token on every call — you never need to manually update it again. Write operations (post comments, create playlists, subscribe, rate videos) are now enabled.
TikTok
Used by TikTokAgent — read user profile, list videos, get stats and comments.
Create a TikTok Developer App
Go to developers.tiktok.com → Manage Apps → Create App. App type: Web.
Add products
In your app → Add Products: Login Kit and Display API. Request scopes: user.info.basic, video.list.
Generate access token
Use the OAuth 2.0 flow with your Client Key and Secret to generate an access token. TikTok provides a sandbox environment for testing.
Save in platform
Integrations → + Connect TikTok → paste Access Token → Save.
Viber
Used by ViberAgent — send text, images, videos, files, interactive keyboard buttons, broadcast to many users, check online status, and get bot account info.
Log in to the Viber Partner Portal
Go to partners.viber.com and sign in using your phone number (Viber will send a verification code to the app on your phone).
Create a Bot Account
After logging in, click Let's get started. In the left sidebar click Create Bot Account. Fill in the bot name, description, category, and upload an avatar image, then click Create.
Copy the Auth Token
After creation you land on your bot's settings page. In the left sidebar click Auth Token — the token is shown on that page. Copy it.
Save in the platform
Go to Integrations → click + Connect Viber → paste the Auth Token → Save Connection → click Test to confirm it connects.
SAP
Used by SAPAgent — automate SAP GUI transactions: run T-codes, read and write fields, read ALV tables, save documents. Works with classic SAP GUI for Windows via the built-in Scripting API. No API key needed — the agent connects directly to the running SAP GUI application.
Install SAP GUI for Windows
Download and install SAP GUI for Windows from your SAP system (ask your SAP Basis team). The agent requires the GUI application to be installed on the same machine running the platform.
Enable SAP GUI Scripting
Open SAP GUI → click the Customize Local Layout button (top-right, looks like a palette icon) → Options → expand Accessibility & Scripting → click Scripting → check Enable scripting and uncheck Notify when a script attaches to SAP GUI → click Apply.
Install pywin32
Run pip install pywin32 in your virtual environment. This library is the bridge between Python and the SAP COM scripting interface.
Start SAP GUI before running the agent
SAP GUI must already be open (not necessarily logged in) before you start the agent. The agent calls sap_connect(server, client, user, password) to open the connection and log in programmatically.
Deploy the SAP Agent template
Go to Agents → ✨ Templates → Legacy Systems → SAP Agent → click ⚡ Deploy in One Click. The agent uses your provided server, client, username, and password through workflow step variables or the Run panel.
Find field IDs with sap_read_selection_screen()
If you don't know the technical field IDs for a transaction, run sap_read_selection_screen() after navigating to the screen — it lists all visible fields with their IDs, labels, and current values so you can reference them in subsequent steps.
Microsoft Teams
Used by TeamsAgent — send channel messages, reply to threads, create channels, list members, add members, create online meetings, send 1:1 chats, and search messages across Teams. Uses the Microsoft Graph API via OAuth2 client credentials (app-level auth — no user sign-in required).
Open Azure Active Directory
Go to portal.azure.com → sign in with your Microsoft 365 / Azure account → search for Azure Active Directory (or "Entra ID") and open it.
Register a new application
Left sidebar → App registrations → + New registration. Enter a name (e.g. "AIK Teams Bot"), leave Supported account types as Accounts in this organizational directory only, and click Register. You'll land on the app overview page — copy the Application (client) ID and Directory (tenant) ID from the top of the page.
Create a client secret
Left sidebar → Certificates & secrets → Client secrets → + New client secret. Enter a description, choose an expiry (24 months recommended), click Add. Copy the Value immediately — it will be hidden after you leave the page.
Grant API permissions
Left sidebar → API permissions → + Add a permission → Microsoft Graph → Application permissions. Search for and add each of these:
• Channel.ReadBasic.All — list channels
• ChannelMessage.Read.All — read messages
• ChannelMessage.Send — send messages
• Chat.ReadWrite.All — 1:1 chats
• Calendars.ReadWrite — create meetings
• Group.ReadWrite.All — list and manage teams
• TeamMember.ReadWrite.All — manage members
• User.Read.All — look up users by email
After adding them, click Grant admin consent for [your org] — this is required for app-level permissions to work.
Save in the platform
Add these four lines to your .env file:TEAMS_TENANT_ID=<Directory (tenant) ID>TEAMS_CLIENT_ID=<Application (client) ID>TEAMS_CLIENT_SECRET=<client secret value>TEAMS_ORGANIZER_EMAIL=you@yourdomain.com — used as the calendar owner when creating meetings.
Deploy the Teams Agent template
Go to Agents → ✨ Templates → Communication → Microsoft Teams Agent → click ⚡ Deploy in One Click. The agent connects automatically using the credentials in your .env file — no further configuration needed.
Application permissions (used here) require a Microsoft 365 Global Administrator to click Grant admin consent in the API permissions screen. Without this, all Graph API calls will return 403 Forbidden. If you are not the admin, share the portal link with your IT department.
OpenWeatherMap
Used by WeatherAgent — current weather, 5-day forecast, hourly forecast (every 3h), air quality index, and weather by GPS coordinates. Free tier covers all these features.
Create a free account
Go to openweathermap.org → click Sign In → Create an Account. Fill in the form — no payment details required for the free tier.
Copy your API key
After signing in, click your username (top-right) → My API Keys. A default key called Default is created automatically. Copy it. Note: new keys take up to 2 hours to activate — if you get an "Invalid API key" error right after signup, wait and try again.
Save in the platform
Add to your .env file: OPENWEATHERMAP_API_KEY=your_key_here. Restart the server and the Weather Agent will start working immediately.
CoinGecko (Crypto)
Used by CryptoAgent — real-time prices for 10,000+ coins, 365-day price history, crypto-to-fiat conversion, portfolio valuation, and top coins by market cap. The free public API requires no API key for basic use.
No setup required (free tier)
The Crypto Agent works out of the box — no API key needed. The free CoinGecko API allows up to 10–30 calls per minute, which is sufficient for most automation workflows.
Optional: get a Demo API key for higher limits
Go to coingecko.com/en/api → click Get Your Free API Key. Sign up and copy the Demo key. Add to your .env: COINGECKO_API_KEY=CG-your_key_here. The Demo key raises rate limits to 30 calls/minute and unlocks additional endpoints.
Deploying to a Server
How to run AIK on Oracle Cloud (or any Linux server) and keep it updated automatically.
Auto-deploy (CI/CD)
The server updates automatically every time you push to master. GitHub Actions runs lint → security scan → SSH deploy. No manual steps needed.
How we work — Branch Workflow
There are two branches in GitHub: develop (where all work happens) and master (what the server runs). Pushing to master triggers auto-deploy.
Always work on develop
All code changes, fixes, and new features go here. Nothing breaks on the live server while you work.
git checkout develop
Commit your changes
Save your progress locally after each meaningful change.
git add . git commit -m "short description of what changed"
Push to develop
Sends your commits to GitHub. The server is not updated yet — this is just a backup/sync step.
git push origin develop
Test locally
Make sure everything works on your PC before sending it to the cloud server.
Merge to master → server updates automatically
When you're happy, merge develop into master. GitHub Actions will lint, security-scan, and deploy to the server — no manual steps needed.
git checkout master git merge develop git push origin master git checkout develop
develop = your workshop. master = the live product. Only merge when you're ready for the world to see it.Manual update (if needed)
If you need to update the server manually without pushing code:
Connect to the server
Open PowerShell on your PC and run:
ssh -i "C:\Users\a.krustev\OracleKeys\ssh-key-2026-06-09 (3).key" ubuntu@92.5.175.50
Pull latest code and restart
Fetches the latest changes from GitHub and restarts the app.
cd /opt/aik && git pull && sudo systemctl restart aik
Check it's running
Should show active (running) in green.
sudo systemctl status aik
Useful server commands
View live logs
Shows what the app is doing in real time. Press Ctrl+C to stop.
sudo journalctl -u aik -f
Restart the app
Use after changing the .env file or if the app is unresponsive.
sudo systemctl restart aik
Edit server settings (.env)
Opens the server configuration file. Save with Ctrl+X → Y → Enter.
nano /opt/aik/.env
Run database migration (after new features)
Run this from your PC after deploying code that adds new database tables. Pulls latest code and applies the migration in one command.
ssh -i "C:\Users\a.krustev\OracleKeys\ssh-key-2026-06-09 (3).key" ubuntu@92.5.175.50 "cd /opt/aik && git pull origin master && PYTHONUTF8=1 .venv/bin/alembic upgrade head"
Generate new SECRET_KEY or ENCRYPTION_KEY
Run this if you need to regenerate security keys.
cd /opt/aik && PYTHONUTF8=1 .venv/bin/python3.12 -c "import secrets; from cryptography.fernet import Fernet; print('SECRET_KEY=' + secrets.token_hex(32)); print('ENCRYPTION_KEY=' + Fernet.generate_key().decode())"Server details (Oracle Cloud)
The production server is hosted on Oracle Cloud Free Tier — free forever.
Server info
URL: https://aik-platform.duckdns.org
IP: 92.5.175.50
Shape: VM.Standard.A1.Flex — 4 OCPU / 24 GB RAM (ARM)
App folder: /opt/aik
SSH key: C:\Users\a.krustev\OracleKeys\ssh-key-2026-06-09 (3).key
Service: systemd aik.service — auto-starts on reboot
SSL: Let's Encrypt — expires 2026-09-08 (auto-renews)
Local vs Cloud — what's the difference?
Local and cloud are completely separate — they don't sync automatically.
Local (your PC)
Use for development and testing. Only accessible from your computer. Runs only when you start it manually.
Cloud (Oracle server)
Production environment. Accessible from anywhere 24/7. The server stays running even when your PC is off. The only shared thing is the code via GitHub.
Data does NOT sync
Agents, workflows, and users created on the cloud won't appear locally and vice versa. Each environment has its own separate database.
Frequently Asked Questions
Quick answers to the most common questions.
.txt file.GET /health from any browser or monitoring tool — it returns {"status":"ok"} along with the current timestamp. You can also use GET /ping which simply returns "pong". These are public endpoints — no login needed.Plans, Payments & Billing
Choose a plan, pay with card, PayPal, or bank transfer, and use the Payment Agent to process payments inside your automations.
📦 The Four Plans
Every account starts on the Free plan — no credit card needed. You can upgrade at any time from the Billing page.
- Free — 2 agents, 3 workflows, 50 runs/month. Good for trying everything out.
- Starter ($9/month) — 10 agents, 20 workflows, 500 runs. Scheduled runs included.
- Pro ($29/month) — Unlimited agents and workflows, 5 000 runs. Full analytics and support.
- Enterprise ($99/month) — Everything unlimited. Priority support and SLA.
💳 How to Pay
Open the Billing page, pick a plan, and choose your payment method:
- Credit / Debit Card — Processed securely by Stripe. Card details are never stored on our servers.
- PayPal — Click Pay with PayPal, log in to your PayPal account, and approve the payment. You're redirected back automatically.
- Bank / Wire Transfer — Copy the IBAN and reference number shown on the page, make the transfer from your bank, then click I've made the transfer. Your plan is activated within 1 business day.
🤖 Payment Agent — Process Payments in Automations
The PaymentAgent is a specialist agent you can use in any workflow step that needs to send or receive money. It has 10 tools across Stripe, PayPal, and general utilities.
💳 Stripe tools
- stripe_create_payment_link — generates a URL the customer clicks to pay with any card. Just pass the amount and description; Stripe handles the checkout page.
- stripe_charge_customer — charges a saved Stripe customer automatically with no redirect — useful for repeat billing or subscriptions.
- stripe_list_charges — lists recent charges, optionally filtered by customer ID. Good for reconciliation steps.
- stripe_refund — issues a full or partial refund on any charge ID.
- stripe_get_balance — reads the current available and pending balance on your Stripe account.
🅿 PayPal tools
- paypal_create_order — creates a PayPal order and returns the approval URL. Send this URL to the customer; they log in to PayPal and approve.
- paypal_capture_order — completes the payment after the customer has approved. Call this once you know the customer clicked "Pay Now".
- paypal_get_order — checks the current status of any PayPal order (CREATED / APPROVED / COMPLETED).
🔧 Utility tools
- format_amount — converts a cent-based integer to a readable string (e.g. 2999 → $29.99). Use this before putting an amount into an email.
- validate_iban — checks that an IBAN string has the correct format before initiating a bank transfer. Returns valid/invalid + the country code.
⚙️ How to set it up
- Go to Agents → New Agent, set the workbench to payment.
- Give it a system message like: "You are a payment assistant. When asked, create Stripe payment links or PayPal orders."
- Add your Stripe and PayPal keys to Settings → Connections (or the agent's Environment Variables).
- Add the agent as a step in any workflow.
📋 Billing History
Every payment attempt (card, PayPal, bank transfer) is recorded in your billing history. Open the Billing page and click Payment History to see the date, method, amount, and status of each transaction.
✉️ Transactional Emails
The platform automatically sends emails at key moments — no setup needed on the user side:
- Welcome email — sent when a new account is created.
- Plan activated — sent after a successful Stripe or PayPal payment, listing the features included in the plan.
- Password reset — sent when a user requests a reset link.
- Workflow notifications — optional alerts on success/failure, configured in Settings → Notifications.
Emails are sent via your SMTP settings. Configure them in Settings → Mail.
📊 Usage Meter
At the top of the Billing page and on the Dashboard you'll see a coloured bar showing how many workflow runs you've used this month out of your plan's limit.
- Green — under 80% used. You're fine.
- Yellow (warn) — 80–99% used. Running low.
- Red (danger) — at or over 100%. Further runs may be blocked until next month or you upgrade.
The counter resets on the 1st of each month. Admin accounts are always exempt from limits.
⚠️ Usage Alerts
The system automatically emails you when you hit 80% and 100% of your monthly run limit — so you're never surprised.
- The 80% alert gives you time to upgrade before you hit the ceiling.
- The 100% alert tells you that new runs are being blocked.
- Each alert is sent only once per month — you won't be spammed.
Emails go to the address on your account. Make sure Settings → Mail is configured so the platform can send emails.
✉️ Email Verification
When a new account is created (by an admin registering a user), a verification email is sent automatically. Until the user clicks the link in that email, a yellow banner appears on their Dashboard.
- The banner has a Resend Email button in case the original message was lost in spam.
- The first admin account is verified automatically — no email needed.
- Verified status is shown in Admin → Users.
⚙️ Connecting Real Payment Providers (Admin)
To accept real Stripe or PayPal payments, add your API keys in Settings → Platform Keys:
- STRIPE_SECRET_KEY — your Stripe secret key (starts with
sk_live_orsk_test_). - STRIPE_WEBHOOK_SECRET — from the Stripe Dashboard → Webhooks. Register the endpoint
/billing/stripe/webhookthere. - STRIPE_PRICE_STARTER / PRO / ENTERPRISE — optional. Paste Stripe Price IDs if you pre-created recurring prices. If blank, the platform creates ad-hoc prices automatically.
- PAYPAL_CLIENT_ID / PAYPAL_CLIENT_SECRET — from your PayPal Developer dashboard.
No server restart needed — keys are applied immediately after saving.
Side-by-side Model Comparison
Type a prompt once and see how GPT, Claude, Gemini (and others) answer it — including response time and estimated cost — so you can pick the best model for each job.
Different models have different strengths. A cheap fast model might be perfect for classifying emails; a powerful model might be needed for drafting contracts. This page lets you see the difference in seconds.
Compare AI calls each model's internet API in parallel. Local models (Ollama) run on your own server and cannot be compared this way — they are hidden from the selector. To use local models, go to AIK Chat instead.
How to use it
Open Compare AI from the sidebar
Click ⚖️ Compare AI Models in the sidebar. The page loads all models your platform has configured.
Pick up to 3 models
Click the model chips to select or deselect. You can compare 1, 2, or 3 models at the same time. The fastest model is highlighted with a ⚡ badge.
Type your prompt and click Compare
All selected models run in parallel. Results appear side by side — each card shows the full response, latency in milliseconds, and estimated cost per call.
What the cards show
- Response — the model's full reply to your prompt.
- Latency — how many milliseconds it took to get the first complete response.
- ⚡ Winner — the fastest model gets this badge automatically.
- Model name — shown in the card header so you always know which is which.
Words You'll See
A quick reference for every term used in the platform.
- Agent
- An AI worker trained for a specific skill — email, spreadsheets, web browsing, etc. You create agents and give them instructions. They run when called by a workflow or triggered manually.
- Workflow
- A sequence of steps that run in order. Each step is handled by an agent. Workflows can be triggered manually, on a schedule, or by a webhook.
- Step
- A single task inside a workflow. Each step has a name, an instruction, and an assigned agent.
- AIK
- Your main AI assistant. You talk to AIK in plain English to ask questions, build workflows, or get things done across the platform.
- Workbench
- The skillset of an agent. Choosing a workbench (e.g. "mail" or "excel") gives the agent the tools it needs to do that type of work.
- Run
- A single execution of a workflow or agent. Each run is logged with its result, duration, and step-by-step output.
- Schedule
- An automatic trigger that runs a workflow or agent at a set time — daily, weekly, or using a custom cron expression.
- Webhook
- A special URL that triggers a workflow when called. Used to connect the platform to external tools like Zapier or Make.
- IF Condition
- A special step type that checks the output of the previous step. Depending on whether the condition is true or false, the workflow takes a different path.
- Template
- A pre-built workflow that can be installed with one click. You can also publish your own workflows as templates to share with others.
- Project
- A folder for organising your workflows and agents. Projects can be shared with team members.
- Environment
- A set of secret credentials for an agent (like email passwords or API keys). Each agent has three environments: development, staging, and production.
- Canvas
- A visual map of a workflow that shows each step as a connected node. IF condition steps show branching paths.
- Run History
- A log of every time a workflow or agent ran — including when, how long it took, whether it succeeded, and what each step did.
- Cron expression
- A compact code for setting a precise schedule. For example,
0 9 * * 1-5means "every weekday at 9am". - Observer
- A background process that watches a folder for new files and automatically triggers a workflow when something arrives.
- Time-Travel Debugger
- A tool in Analytics that shows a step-by-step breakdown of any workflow run. Lets you replay the workflow from any step without re-running the steps that already succeeded.
- Run Estimator
- A banner shown when you open an agent or workflow, displaying the average cost, duration, and success rate based on the last 20 runs.
- Knowledge Base
- A per-agent memory store of key/value pairs. The agent can read and update these entries during runs. Also stores automatic recovery lessons when self-improvement is enabled.
- Live Agent Feed
- A real-time panel on the Dashboard (just below the Pending Approvals card) that shows each step as it starts and completes during any active run — which agent handled it and a short snippet of the result.
- Recovery Lesson
- An automatic knowledge base entry written by an agent when it recovers from a failure. Records what went wrong and how it fixed it, so future runs can avoid the same issue.
- Payment Agent
- A specialist agent with Stripe and PayPal tools. Use it in workflow steps that need to charge customers, create payment links, or issue refunds — all automated, no manual intervention needed.
- Subscription
- Your current platform plan (Free / Starter / Pro / Enterprise). Controls how many agents and workflows you can create and how many runs you get per month.
- Bank Transfer Reference
- A unique code shown on the Billing page (e.g. AIK-6-alex@example.com). Include it in your bank transfer so our system can match the payment to your account automatically.
- Payment Link (Stripe)
- A URL generated by the PaymentAgent that the customer opens to pay with any card. The link is single-use and expires after the customer pays.
Terms of Service & Privacy Policy
What you agree to when you create an account, and how we handle your data under GDPR.
The complete Terms of Service and Privacy Policy is available as a dedicated page: View Terms of Service & Privacy Policy →
What you agree to at registration
When you create an account you must tick the "I agree to the Terms of Service and Privacy Policy" checkbox. Without it, registration is blocked. This records your explicit consent as required by GDPR.
What data we collect
- Account data — email, name, hashed password, registration timestamp.
- Usage data — workflow run logs, activity logs (kept for platform improvement).
- Settings — API keys you add are stored encrypted in the database.
- Files — files you upload to your personal sandbox folder.
- Technical — IP address used only for rate limiting, not stored long-term.
Your GDPR rights
- Right to erasure — delete your account at any time from Settings → Security → Delete Account. All your data is removed permanently.
- Right to access — contact the platform administrator to request a copy of your data.
- Right to rectification — update your name and email from your profile settings.
- Right to withdraw consent — delete your account at any time.
Registration toggle (admin)
Superusers can disable new registrations from Settings → Security → Platform Security. When the toggle is off, no new accounts can be created — existing users are not affected. This is useful once your team is fully set up and you want to prevent unknown signups.
User Management
How users are created, what they agreed to, and how to manage their limits and permissions from the Super Admin panel.
📋 Terms Accepted
Every user who registers ticks an "I agree to Terms & Conditions" checkbox during signup. The moment they check it and submit, the exact timestamp is saved to the database — column terms_accepted_at on the users table.
This means:
- You have a permanent, timestamped record that each user agreed to your terms before using the platform.
- If a user skips the checkbox, registration is blocked — they simply cannot create an account.
- The value is never editable after the fact — it is written once at registration and stays there.
To view it: Super Admin panel → users table shows the registration date. For the exact timestamp you can query the database directly: SELECT email, terms_accepted_at FROM users ORDER BY created_at DESC;
🔓 Billing Exempt
Every account is on a plan (Free, Starter, Pro, or Enterprise) that limits how many agents, workflows, and monthly runs they can have. The Billing Exempt switch removes all those limits for a specific user — they can create as many agents and workflows as they want and run them unlimited times, regardless of their plan.
When to use it:
- Your own superuser account — so you never hit limits while testing or managing the platform.
- A partner or reseller account that should not be billed.
- A demo or internal QA account.
Where to set it: Super Admin panel → find the user in the table → click the small toggle in the Exempt column. The change takes effect immediately — no page reload needed.
Stored in the database as billing_exempt (true/false) on the users table.
🔍 Audit Trail — CLI Responsibility Proof
Every time an admin checks the responsibility boxes and enables CLI Tool, a permanent record is written to the database with their name, user ID, and the exact timestamp. The same applies when you (superuser) grant or revoke the permission.
If an admin enables CLI and something goes wrong, you can prove exactly who did it and when. Query the audit log directly on the server:
SELECT id, user_id, title, detail, created_at
FROM activity_log
WHERE event_type = 'advanced_features'
ORDER BY created_at DESC;
The detail column contains the full text including: admin email, user ID, action taken, and confirmation that both responsibility checkboxes were accepted before saving. This record is append-only and cannot be edited.
🔑 Roles at a Glance
- Automation User — standard account. Can use agents and workflows within their plan limits.
- Admin — can manage other users (change roles, activate/deactivate), see the Platform Keys tab in Settings, and — if the platform owner grants it — enable the CLI Tool feature.
- Superuser — full control. Can grant/revoke superuser status, set billing exemptions, manage plans, and toggle Advanced Developer Features. Only the existing superuser can create another superuser.
Contact Us
Have a question, a business inquiry, or need help getting started? We're here.
Use the contact form to reach the team. We reply within 24 hours on business days.
Open Contact Form →What can you contact us about?
- General questions — anything about how the platform works
- Business & Sales — pricing, custom plans, on-premises licensing
- Technical support — problems, errors, setup help
- Partnerships — integrations, reseller, co-marketing