PT EN
Back to site

User's custom prompt

Repeating the same instructions to the AI in every conversation — "answer in formal Portuguese", "cite the legal basis", "be concise" — is manual work that should not exist. With the custom prompt, you write your preferences once and the platform starts applying them automatically to all your interactions with the AI, in the chat and in the copilot. It is personal, self-managed, and requires no administrator permission.

Unlike the domain (system) prompt, defined by administrators and applied to every user of a context, the custom prompt is individual: each person controls only their own.

How to use it

  1. In the side menu, open SistemaSegurançaMeu Prompt.
  2. In the Instruções personalizadas field, write what the AI should follow in your interactions. Example: "Always answer in formal Portuguese, cite the legal basis and be concise."
  3. Watch the character counter (8,000-character limit). To clear the field's content, click Limpar.
  4. Click Salvar. A notice confirms: "Prompt salvo. Será aplicado nas suas próximas interações."
  5. Done — your next chat and copilot conversations already carry those instructions. To turn it off, leave the field blank and save.

Security recommendation (shown on the screen itself): do not include sensitive data in the prompt. The text is added to the context sent to the AI provider.

Practical example — standardizing the style of the answers

  1. Open SistemaSegurançaMeu Prompt.
  2. Write, for example:
text
   Responda sempre em portugues formal.
   Cite a base legal de cada afirmacao (artigo e lei).
   Liste sempre os numeros de processo mencionados.
   Seja conciso: prefira listas a paragrafos longos.
  1. Click Salvar and go back to the Chat.
  2. Ask something like "does the company Fusopar have open cases?". The answer already comes in the format you asked for: formal, with the legal basis cited and the case numbers in a list — without repeating a single instruction in the question.

How the instructions are applied

  • Appended, never replacing: on every message, the platform assembles the domain prompt (in research or investigation mode) and, in parallel, fetches your personal prompt. If it is not empty, it is added at the end, between clear markers:
text
  <domain prompt>

  === INSTRUCOES PERSONALIZADAS DO USUARIO ===
  <your prompt>
  === FIM DAS INSTRUCOES DO USUARIO ===

System rules still apply — personal instructions that conflict with them may not prevail.

  • Always the latest version: the prompt is read on every conversation, never cached on that side. Saved it? It counts from the next message on.
  • The conversation never fails because of the prompt: the fetch is best-effort, with a 5-second time limit. If the instructions cannot be loaded in time (absence, error, or momentary unavailability), the conversation simply continues without them, with no warning on screen.
  • Only you can access yours: identification comes exclusively from your authenticated session — the user is resolved from the token (emailsubpreferred_username), never from an identifier supplied in the call. There is no path to read or change someone else's prompt.

Use through integrations

The personal prompt can also be read and written programmatically: the platform exposes endpoints to read and write the logged-in user's prompt, identified only by the authentication token — no user identifier is accepted through a path or a parameter. See the contracts in the API reference.

The write body is optional; the absence of the text is equivalent to an empty string. The content is trimmed before writing and truncated at the 8,000-character limit — the request is never rejected because of size. When no prompt is defined (or the token cannot be resolved), the read returns empty text, never a technical error.

When something fails, the response carries a friendly message in Portuguese in the body's error field — the screen reads that field and shows a red notice, without a stack trace or a raw HTTP code. There are two distinct cases:

SituationMessage shown
Failure while saving the prompt"Nao foi possivel salvar o prompt. Tente novamente."
Missing or invalid token"Nao foi possivel identificar o usuario."

Who can use it

The custom prompt is strictly personal data, and the authorization model reflects that:

  • Any authenticated person can read and write their own prompt — no administrator profile is required.
  • The real security barrier is resolving the user from the token: since no user identifier is accepted as a parameter, it is technically impossible to read or write another person's prompt.
  • In the interface, the Meu Prompt item under SistemaSegurança is visible to all logged-in users. In contrast, Usuários and Roles e Permissões, in the same subgroup, remain restricted to administrators — the Security subgroup stopped being admin-only just to host Meu Prompt.

How to operate it (administrator)

  • No special configuration is needed: the feature is available to every authenticated user by default.
  • The text lives in the customPrompt property of the :UsuarioSistema node, in the user system database. To inspect it from the console:
cypher
  MATCH (u:UsuarioSistema {email: 'usuario@exemplo.com'})
  RETURN u.customPrompt AS prompt
  • The user registry is kept in a two-tier cache (local memory + the platform's shared cache, valid for 24 hours). When the prompt is saved, that cache is invalidated entirely, ensuring the next reads already reflect the new value.
  • Since the read by the chat is best-effort with a 5-second time limit, a momentary unavailability does not break the conversation — it only runs without the personal instructions.
  • Auditing: saving the personal prompt is a low-risk self-managed operation and does not generate a dedicated audit event. Read and write failures are recorded in structured logs (with the user's email and the cause); fetch failures during the conversation are silent by design.
  • Observability: the steps involved — the call between the modules and the read/write on the user graph — appear as spans correlated by the same trace_id, with the context propagated from the browser onward. The Meu Prompt screen also reports user activity to the rest of the application, like every page on the platform.

Limits and expectations

  • Size: 8,000-character limit; longer texts are silently truncated on save (the on-screen counter helps you stay under it).
  • Scope: the prompt applies to the user, across all contexts and workspaces — there is no per-context personal prompt (yet).
  • Precedence: the prompt is appended; it never replaces the domain prompt.
  • Silent degradation: under high latency, the conversation happens without the custom instructions and with no warning to the user.

Related pages: search and chat guide, chat reasoning model, security model.