# Personal assistant

The assistant is not a place you visit, it is a **companion lane** that runs alongside
your work. It opens as a narrow panel next to the page you are on, and it stays open
while you keep clicking: from a task to a meeting to a note. The conversation does not
break, and a half-typed sentence stays where you left it.

It does not belong to a single project. It answers questions
about your whole organisation, as far as your permissions reach.

## How to open it

Three ways, all leading into the same panel:

- **Assistant** in the sidebar, directly below the search.
- **⌘J** (Windows and Linux: **Ctrl+J**) from anywhere.
- The **floating input** at the bottom left. Type your question straight into it and
  press Enter: the panel unfolds and the question goes out right away. If a half-written
  sentence is already standing in the panel, your line is appended and nothing is sent, so
  no draft goes along by accident. While you scroll, the input shrinks to a small button
  so it stops covering the last row of a list.

You can drag the panel's right edge to change its width. Your browser remembers the
width and whether it was open.

## What it can see

The assistant works with **your** permissions, not with more. It reads tasks, notes,
meetings and times from the projects where you are allowed to see the area in question.
A project you cannot read appears in no answer, not even inside a total.

For a task it looks at, it also reads its **attachments**. The text of PDF, Word, RTF and
plain text files is pulled out when they are uploaded, and that text comes along. Set the
task as a reference so it looks there: the search alone does not reach the attachment yet.

When a file holds no readable text, an image say, or a scanned PDF without a text layer,
it knows that and says so instead of guessing. A file you just uploaded needs a moment
before its text has been pulled out, and it says that too rather than acting as if the
file were empty. With very many or very long attachments it shortens what it reads, and
writes that it did.

**Archived projects stay out.** They are not part of the running work, and a number that
quietly counts archived things would be the wrong number.

If it could only reach some of your projects, it says so in the answer. A narrowed search
that presents itself as a complete one is worse than no search at all.

Below the input field, one line says that the answers are AI-generated and which provider
makes them. **Details** next to it slides in a note: where your input goes, under which
jurisdiction, at which processing location, plus the privacy policy. Escape or a click
beside it closes it again.

## Where it looks

Above the input field you can see what the assistant is currently looking at:
**all your projects** or one of them. Switch it when you are working on one thing
for a while and do not want the answers blended with everything else.

You do not need it for a single question. "How many tickets does Nordlicht have?"
is answered correctly at full reach too, because the assistant narrows that
question by itself. The switch is for when you do not want to repeat it every
time.

Two things it cannot do:

- **It never widens.** "All your projects" still means the ones you are allowed
  to see. The switch takes away, it never adds.
- **It does not set itself.** Writing "from now on only look at Nordlicht" does
  nothing, and the assistant says so rather than promising it. Switching is your
  decision, one click away.

When an answer searched less than everything, it says so underneath: "Searched:
Nordlicht only" for a narrowing you chose, "Searched: 3 of 12 projects" for one
that follows from your permissions. That stays under the answer even after you
copy it somewhere else.

Archived projects stay out either way. If a project you picked gets archived, or you
lose access to it, the setting simply falls away: the switch goes back to all your
projects, and it says so. You will not get answers out of a project you no longer
remember pinning.

## Questions about Lalabase itself

The assistant knows this help as well. Ask how something works in Lalabase, "How do I log
time on a ticket?" say, and it looks for the right help page, reads it and answers from
it. The page is listed as a source under the answer, and a click opens it.

- It reads the help in the language from your settings. If a page has no translation yet,
  it reads the German one.
- The help belongs to no project, and which projects it is currently looking at makes no
  difference to answers like these. A "Searched: …" line under such an answer is about your
  organisation's content, not about the help.

## How it answers

**Style** and **Length** sit below the input field. Style runs from simple through
medium to technical, length from brief through medium to detailed. Both apply to
everything you ask from then on, in this organisation, and stay set until you change
them again. An answer you already have does not change with them: that is what
**regenerate** on the answer itself is for.

Hover a message and a quiet row appears above it: when it was written,
**regenerate** on the latest answer, a **copy** icon and the wastebasket. Copying
takes the message as it stands: for a question the exact wording you typed, for an
answer the text together with whatever is written below it.

## What this is about right now

Every task carries an **Assistant** button in its header. One click opens the panel and
sets a **reference**: above the input field it then says "Reference: #112 Sign-in fails".
The page stays where it is, you go nowhere.

The reference lands on the conversation currently in the panel. If you have not started
one yet, or just pressed **New chat**, the reference is selected in the draft and
shown above the input. It stays selected when you navigate between tasks. Your first
message saves the conversation and its references together, so the very first answer
can use them. The × removes a draft reference; **New chat** starts a fresh draft.

From then on, follow-up questions without a subject of their own mean that task. "Who is
working on it?" no longer needs a number. The × on the chip takes the reference away
again.

You can reference **several tasks at once**, up to ten. From the second one on the chip
shows only the count, for instance "Reference: 3 tasks"; clicking it unfolds the list, and
every line has its own ×. Once the tenth is set the assistant says so and changes nothing:
take one off and the next one fits.

The reference says **what** this is about. Where the assistant searches is what
"Looking in" next to it says, and that stays your own setting: adding or removing a
reference does not change it. Both sit side by side, so you never have to guess what an
answer rests on.

If you want an answer confined to one project, set "Looking in" to it yourself. That then
holds for everything in this conversation, whichever task you refer to.

Move to another task and your conversation simply carries on, with nothing switched behind your back. What appears instead is an offer above the input field: "Set reference: #113 Export fails", with a button next to it. If a reference already stands, the offer reads "Add reference", because it comes on top and replaces nothing. Only your click changes anything. The × on the offer hides it for that task until you reload the page; so does a refusal by the assistant, so that the same thing is not offered to you over and over.

If the reference cannot be set, for instance because the task's project has since been archived, the assistant says so and changes nothing.

You see the offer while the panel is open on a task, a note, a file or a meeting, including in a new, empty chat. You can select up to ten references before sending the first message.

### Meetings

In an open meeting, **Ask assistant** adds the meeting as a general reference.
**Create analysis** beside the saved analyses and **Derive tasks** or **Derive again**
beside ticket suggestions open the same assistant and also prepare the matching mode.
None of these entries submits an instruction. This works before the first message and
alongside tasks, notes and files; the limit of ten applies to the entire collection.
Switching meetings updates the general offer while keeping references you have already
selected. The explicit analysis and task entries always target the meeting where you
clicked them. References show the title and date so you can distinguish meetings with
the same name.

The assistant reads **notes and transcript separately**, along with the title, time
and participants. Ask, for example, “What decisions were made?” or “What open questions
come out of the notes and transcript?”. It reads up to 8,000 characters per source.
For longer sources the answer discloses the cut and cannot provide a complete analysis.

These answers stay in the conversation. Only **Save as analysis …** on a completed
answer creates a private analysis at the meeting; only accepting an individual ticket
suggestion creates a ticket. The fixed meeting summary keeps its own entry point.
Adding a reference does not enable the meeting for search, and you can use it without
a search release. Your meeting read permissions and the existing active-project rules
apply. On mobile, the same assistant opens as a bottom sheet. Saved analyses and the
shared ticket-suggestion list remain accessible below the meeting content.

### Notes and files

The **Knowledge** area works the same way: an open note or file carries the same
assistant button in its top right corner, and with the panel open the offer appears:
"Set reference: Onboarding new colleagues". The chip shows the reference with its type
and title; tasks, notes and files can sit together in one conversation, and the limit of
ten holds for all of them together. Close the entry with the ✕ and the offer goes away
again; a reference already set stays.

For a question about the content, the assistant **reads** the note or file, not just
its title. Three things to know:

- A **file** is always read in its **current version**, even while you are looking at an
  older version in the preview. The reference is to the file, not to the version; after a
  new upload the next question reads the new state.
- What gets read is the **saved** text. What you are typing in the editor and have not
  saved yet is unknown to the assistant; it does not offer the edit form either.
- A file needs readable text. A freshly uploaded PDF may not have it yet, a scanned PDF
  or an image never will. The assistant then says that no text is available instead of
  guessing. Very long texts are read cut short, and it says that too.

If you lose access to the task, or its project is archived, the reference falls away,
exactly like a project setting. The chip then disappears without naming the task: the
assistant does not tell you about things you are not allowed to see.

## Who the thread belongs to

You, and nobody else. Colleagues do not see your questions, not even in a list. Neither
do account administrators: there is no management route that opens personal threads.

If you want an answer to reach your team, you copy it there deliberately, with the copy
icon on the message. Nothing travels on its own.

## Earlier conversations

The plus in the panel header begins a new conversation. The old one is kept, and the
**clock** next to it brings it back: it lists your earlier conversations, newest first,
each with the day it started on.

A click loads one into the panel, and the page you are on stays exactly where it is. The
conversation you opened the list from is highlighted, and the arrow at the top left takes
you back to it if you change your mind.

Without a choice of your own, the panel opens the conversation you started **most
recently**.

## Settings

The **gear** in the panel header opens your settings. The arrow at the top left takes you
back to the conversation you opened them from.

There you pick the **focus**: the intent your assistant answers with. The choice is yours
and applies to all your conversations with the assistant in this organisation, including
the ones already running. It takes effect from the next answer onwards; answers already
written stay as they are. To see one of them in the new focus, use the regenerate action
on the answer itself.

Which focus templates are on offer is set up by account administrators (see
[Chat personas](https://lalabase.com/docs/en/guides/ai/chat-personas)). If none is ready, the page says so instead of showing an
empty picker. **Organisation default** is the way back if you no longer want a choice of
your own.

## The full view

When the lane is too narrow, the double arrow in the panel header pulls the assistant
across the whole area next to the sidebar. Your earlier conversations then stand
permanently on the left and the conversation itself on the right. The second arrow takes
it back to the companion lane.

**Switching costs you nothing.** A half-typed sentence stays, so does the scroll position,
and an answer being written carries on. It is the same conversation, only bigger, not a
second place.

Your organisation's **/assistant** address opens the assistant in the full view straight
away. It is worth keeping as a bookmark.

Two things about it:

- On **narrow windows** below 1024 pixels the assistant opens as a bottom sheet.
  The conversation and an open report each use its full width. A link to a page
  closes the sheet and opens its destination.
- **Closing ends the full view.** Open the assistant again afterwards and it is back as a
  companion lane. That is deliberate: Cmd+J should not fill your whole screen without
  warning. The lane width you set is remembered as usual.

## What happened last week

The assistant can read the **history** of your projects: new tickets, assignments, status
changes, comments, plus notes, documents, meetings and changes to the project team. Just
ask "what happened last week?" or "what changed in the last three days?".

It shows only what you may see anyway, and it does so **per area**: somebody who may only
read notes in a project gets no ticket history from there. An event on the project itself,
a rename for instance, is visible to anyone who can see the project.

Two things are deliberately absent: **billing runs** and **organisation administration**,
such as a changed AI package. Neither belongs in an account of what people worked on, and
neither hangs on a single project.

## Questions about the source code

When a project has a **repository** connected, the assistant can answer questions about it
too. Ask it, for example:

- "What is Nordlicht about?"
- "What can this project do?"
- "Where is `Chatpost#destroy`?"

This used to need a chat of its own inside the project, so you had to open the project first and
go to its chat. Now you ask in the panel, wherever you happen to be.

**The one difference: code questions always concern exactly one project.** The other tools
look across all your projects. "How many tasks are open?" counts them all together. Source
code does not work that way: a vision belongs to a project, and a class lives in a
repository. "All projects" means nothing here.

When you reach only one project with a repository, it takes that one by itself. When you
reach several and name none, it asks. To "What can this project do?" it then answers
something like: "Which one do you mean? I can reach Nordlicht Software and Kundenportal
v2."

It does not guess. A wrong guess would be worse than a question, because you cannot tell
from the answer that it came from the wrong project.

Two ways to avoid the question:

- **Name the project in your question.** "What can Nordlicht do?" is enough.
- **Change "Looks in".** As long as the switch is set to a project, it stops asking.

**The answer says which project it is about**, right in its first line. Below it you get
the usual note on what was searched, so "Searched: only Nordlicht".

**Which repositories you reach follows your rights on the project.** You need either
**read access to the chat** or **write access to the documentation**. That is the same
rule as on the project's repository page, not a new one. A project where you have neither
appears in no answer. Not even if you name it: it will say it knows no project by that
name.

**When there is nothing, it says so** instead of inventing something. Three different
situations, three different answers:

- **No repository within your reach.** Then there is nothing to search.
- **Repository connected, but not indexed yet.** That is a different thing from "found
  nothing", and it says so differently.
- **Indexed, but nothing matches.** Then nothing was found.

**When your organisation has no repository connected at all, you notice none of this.**
The assistant is not offered these tools in the first place. That is deliberate: every
tool description takes up room in every answer, including "how many tasks are open".
Nobody with no code should pay for that.

## Sources that open beside the conversation

When an answer names a ticket by its number, or a note, document or meeting by its title,
that spot in the text is **clickable**. Only what the answer actually read becomes a link,
and only while the thing still exists: a number the assistant merely mentions stays text.
When an answer names the same thing several times, every mention is a link. The small
source numbers such as [3] that the assistant writes into its sentences are clickable too
and lead to that source; the same numbers stand in front of the rows of the source list
below the answer. And when a number is not unambiguous, because two projects each have a
ticket 42 and the answer read both, it stays text: a wrong link would be worse than none.

Every answer lists the sources it came from, **one row per thing**: when an answer read
several places inside the same ticket, say the ticket and two comments in it, that is one
row telling you how many passages there were. What a click does depends on whether the
thing has a page of its own:

- **Tickets, notes, meetings and documents** have one. The click simply opens it. From the
  full view the assistant steps back into the companion lane first, otherwise the page
  would sit behind it and you would see nothing happen.
- **An hours report** has none. In the full view it opens as a third lane to the right of
  the conversation: the individual bookings the number is made of, with the totals above
  them.
- **Something deleted** no longer has one. The source stays listed, so you can see what the
  answer rested on, but it is marked *no longer available* and leads nowhere.

The **totals always cover the whole selection**, even when the list below is shortened.
Past a hundred bookings the list says how many there are in total. A link takes you from
there into the time list, with exactly the filters the numbers were calculated under.

If it says **Your own bookings only**, your rights in that project do not reach further.
The report would rather say so than let a partial sum look like a complete one.

The open panel is part of the **address**: a reload brings it back, and you can pass the
link on. For whoever receives it, it shows only what their own rights allow. The × in the
panel header closes it again.

## If you cannot see it

Two things decide whether the row and the panel appear at all:

1. The operator has enabled it for your organisation.
2. Your role carries the **Use assistant** permission.

If either is missing, neither the sidebar row nor the panel appears.

**Asking** needs a third: your organisation must have activated the AI features and
stored usable credentials (see [Enabling AI](https://lalabase.com/docs/en/guides/ai/enable-disable)). Without them the panel
still opens and names the reason, rather than offering a field that swallows your
question.

On narrow windows (below 1024 pixels), open the assistant with the stars button
in the header. It appears as a bottom sheet with the same permissions.

## Analyse in the assistant

Choose **Create analysis** beside the saved analyses at a meeting. The assistant adopts exactly that meeting as a **reference**, leaves any active task mode, and opens examples and templates beside the normal message field. It does not overwrite a draft and you submit the instruction yourself. Select **Revise** on the desired answer. **Save as analysis … → Save privately** saves a completed result to the meeting without running the AI again. Templates can be selected, saved and managed beside the same composer. See [AI analyses](https://lalabase.com/docs/en/guides/meetings/ki-analysen) for the steps and source restrictions.

## Ticket suggestions in the assistant

At the meeting, choose **Derive tasks** or **Derive again** in the **Ticket suggestions** section. The assistant adopts exactly that meeting as its reference and target project and activates the existing visible task mode. Any draft and other references remain in place. Review the instruction and send it yourself. **Leave task mode** cancels special processing without deleting your text. An ordinary question does not start a suggestion run.

**Suggestions are visible to people with access to this meeting. Tickets are created only when you accept a suggestion.** Only the selected meeting’s notes and transcript and your explicit instruction are used. Personal chat history, other references and saved analyses are excluded. The per-source limit is shown beside the message field before submission; shortened sources are identified. If sources change before the run finishes, no result is published. You can try again using the current sources.

The instruction, meeting, target project and status remain in the conversation across navigation and reopening. Errors offer **Try again**; a successful run without tasks says so explicitly. Expand any suggestion, then choose **Create as ticket** or **Dismiss**. A ticket is created in the meeting’s project and linked to the original meeting. **Open ticket** leads to the created ticket. Acceptance additionally requires ticket write access; generation and dismissal require meeting write access.

A successful new run replaces all open suggestions for this meeting, including those used by other people. The assistant explains this before submission. Older conversation entries keep their original suggestions marked as **superseded**, with acceptance disabled. Accepted and dismissed suggestions remain in history. A failed run leaves open suggestions unchanged. Relevant truncation of the list, titles or descriptions is shown with the applicable limits.

Use **Refresh status** to update completed results; automatic checks when returning to the visible result area occur at most once per minute. **Try again** creates at most one new attempt per failed task. Deleting the conversation deletes its run and instruction; meeting-wide suggestions remain available at the meeting.
