Sawala CloudSawala CloudBeta

Internal chat for your team, grounded in your own docs

Ajena Crew is a helpdesk chatbot scoped to your project. Upload your runbooks, specs, and notes — staff ask questions in chat and get answers cited back to the source.

Knowledge

One knowledge base
per project

Every project gets its own physically separate knowledge base. Marketing’s questions hit Marketing’s docs. Engineering’s hit Engineering’s. Nothing crosses the project boundary — even within the same organisation.

  • Per-project isolation enforced server-side on every request
  • Switch projects from the top bar — chat history and KB swap instantly
  • No accidental cross-project leakage, even with a leaked document ID
  • Org-wide reference KB available as an opt-in second pass (planned)
Ajena Crew — project-scoped URLs
https://ajena.sawala.cloud/crew/marketing/chat
https://ajena.sawala.cloud/crew/engineering/chat

# physical KB instances behind the routes
ai-search ajena-orgs/org_acme-proj_marketing-crew
ai-search ajena-orgs/org_acme-proj_engineering-crew

Switch projects in one click. Your KB and chat history follow you.

Grounding

Every answer cites its source

Ajena uses retrieval-augmented generation: before the model answers, it pulls relevant passages from your project’s KB and shows them as citations next to the response. Click a citation card to jump to the original document.

What are our quiet hours?
Marketing’s quiet hours are 21:00 to 07:00 local time [1]. Outside those hours, on-call routes to the duty rota in #ops [2].

Citations

[1]marketing/runbooks/quiet-hours.md
[2]marketing/runbooks/quiet-hours.md
Ingest

Bring your own docs —
never an accidental upload

Upload markdown, plain text, or JSON directly to your project’s KB. Or pick existing files from Berkasna and import them with one click — they enter the KB tagged with their Berkasna source, so unlinking removes them from the KB without touching Berkasna.

upload

Direct upload

Drag a file into the admin page. Indexed in seconds. Tagged source=admin.

import

Import from Berkasna

Pick files from your Berkasna bucket. Tagged source=berkasna with a back-reference for safe unlinking.

4 MB max per document

ingest flow

# direct upload (admin page)
POST /api/admin/ingest
  multipart/form-data
    file:  ./quiet-hours.md
    title: "Quiet hours"
  → 202 Accepted, indexed within ~5s, source=admin

# import from Berkasna (admin page picker)
POST /api/crew/admin/kb/import-berkasna
  { fileIds: ["asset_AB12...", "asset_CD34..."] }
  → 202 Accepted per file, source=berkasna,
    back-reference preserved for safe unlinking
Channels

Internal today,
omnichannel tomorrow

Ajena ships two modes that share the same project KB but live on physically separate indexes — so an internal document can never accidentally be served to a customer-facing surface.

Crewinternal staff

Crew — Internal helpdesk

Staff chat at /crew/{project}/chat. KB instance suffixed -crew. This is what ships in Wave 1.

ConnectConnect ships in Wave 2

Connect — Customer-facing chat

Embedded chat widget + WhatsApp/Messenger channels for end users. KB instance suffixed -connect. Promote a Crew doc into Connect explicitly with audit metadata.

More out of the box

Everything you need to run an internal RAG chatbot — without the infrastructure overhead.

Multi-session history

Each chat is a named session in the sidebar — rename, delete, switch between threads. History is partitioned per (org, project, user) so you only see your own.

Tool calls built-in

The agent can call tools like calculate, getWeather, getUserTimezone, or look up additional KB passages mid-conversation when the pre-retrieval context doesn’t answer the question.

AI Gateway observability

Every model call routes through Cloudflare AI Gateway for per-org cost, latency, and prompt-level tracing. No black-box LLM spend.

Workers AI inference

Inference runs on Cloudflare Workers AI — no third-party API key, no data leaving the edge. Llama 4 Scout for chat; bge-m3 + bge-reranker for retrieval.

Role-gated KB edits

Org admins manage the KB; project members chat. Wave 2 splits into ajena-admin / ajena-editor / ajena-viewer when finer-grained roles are needed.

Audit trail (Wave 2)

Every KB write, every Crew→Connect promotion, every channel-token rotation is logged with actor + timestamp + project. Visible in the org dashboard.

Ready to build with Ajena?

Spin up your project’s KB, paste your runbooks, and let your team ask questions in chat — with citations, every time.