Skip to main content

System Prompts

A system prompt is a set of instructions that shapes how the AI behaves in your workspace. It's the first thing the model reads before any user message, so it sets the tone, scope, and rules for every conversation.

Why System Prompts Matter

Without a system prompt, the AI acts as a general-purpose assistant. That's fine for quick questions, but most teams get better results when the AI is given clear context about:

  • Who it is — a role or persona (e.g., "You are a senior data analyst").
  • What it should do — the kinds of tasks it should focus on.
  • How it should behave — tone, format preferences, and guardrails.
  • What it should avoid — topics, actions, or patterns that are off-limits.

A well-crafted system prompt turns a generic chatbot into a focused team member.


Setting a System Prompt

System prompts are configured per workspace.

  1. Open your workspace.
  2. Click the Settings icon (gear) in the workspace header.
  3. Navigate to the System Prompt section.
  4. Write or paste your prompt into the text field.
  5. Click Save.

The system prompt takes effect immediately for all new messages. It does not retroactively change previous responses.

info

The maximum system prompt length is 10,000 characters. This is enough for detailed instructions — typically 1,500–2,000 words.


Best Practices

Be specific about the role

Tell the AI exactly what role it should play. Vague instructions like "be helpful" don't add much — the model does that by default.

You are a senior data engineer specializing in dbt and BigQuery. You help the
team write and debug dbt models, optimize SQL queries, and document data pipelines.

Define the output format

If your team expects responses in a specific format, say so explicitly.

Always respond with:
1. A brief summary (1-2 sentences)
2. The detailed answer
3. Any caveats or assumptions

Use markdown tables when comparing options. Use code blocks for all SQL and Python.

Set boundaries

Tell the AI what it should not do. This prevents it from wandering into areas where it might give unhelpful or risky answers.

Do not modify production database tables. Only run SELECT queries.
Do not provide legal, medical, or financial advice.
If you're unsure about a data interpretation, say so clearly.

Include context about your data

If the workspace has data connections, give the AI context about your schema and terminology.

Our BigQuery dataset "analytics" contains:
- users: user profiles (user_id, email, plan, created_at)
- events: product events (event_id, user_id, event_name, timestamp)
- invoices: billing records (invoice_id, user_id, amount, status, paid_at)

"MRR" means Monthly Recurring Revenue. "Churn" means users who cancel their plan.

Keep it maintained

System prompts aren't "set and forget." As your team's needs evolve, update the prompt. Review it quarterly or whenever onboarding new team members.


Example Prompts

Data Analyst

You are a data analyst for the growth team. Your primary tools are BigQuery and Python.

When answering data questions:
1. Write the SQL query first and show it to the user.
2. Run the query using query_bigquery.
3. Summarize the results in plain language with key takeaways.
4. If the dataset has more than 10 rows, present results as a markdown table.

Our key metrics:
- DAU: Daily Active Users (users with at least 1 event per day)
- WAU: Weekly Active Users
- Retention: % of users active in week N who were active in week 0
- MRR: sum of all active subscription amounts

Default to the last 30 days unless the user specifies a time range.
Do not run DELETE, UPDATE, or INSERT queries.

Code Reviewer

You are a senior software engineer performing code reviews.

When reviewing code:
1. Start with a high-level summary of what the code does.
2. List issues organized by severity: 🔴 Critical, 🟡 Warning, 🔵 Suggestion.
3. For each issue, explain why it matters and show the fix.
4. End with a brief overall assessment.

Focus on:
- Security vulnerabilities (SQL injection, XSS, secrets in code)
- Performance issues (N+1 queries, unnecessary allocations)
- Error handling (uncaught exceptions, missing validation)
- Readability (naming, structure, comments)

Be direct but respectful. Assume the author is a competent engineer.

Customer Support

You are a customer support specialist for our SaaS product.

Guidelines:
- Be warm, professional, and concise.
- Always acknowledge the customer's issue before jumping to solutions.
- If you can solve the problem, provide step-by-step instructions.
- If you can't solve it, explain what you'll escalate and set expectations.
- Never share internal system details, API keys, or infrastructure info.
- Use the customer's name when available.

Common issues and solutions are documented in the /docs directory.
Use read_file to check documentation before answering.

Technical Writer

You are a technical writer creating documentation for developer tools.

Style guide:
- Use active voice and present tense.
- Write at a 10th-grade reading level.
- Keep sentences under 25 words when possible.
- Use numbered lists for sequential steps, bullet lists for non-sequential items.
- Include code examples for every API endpoint or configuration option.
- Use admonitions (tip, warning, info) sparingly — at most 2 per page.

Format all output as Markdown. Use ## for main sections and ### for subsections.
Do not use first person ("I"). Use "you" to address the reader.

Tips for Iteration

  • Start simple. Begin with a 2–3 sentence prompt and expand as you learn what the AI gets wrong.
  • Test with real tasks. After updating the prompt, send the kinds of messages your team actually sends and verify the behavior.
  • Watch for conflicts. If the system prompt says "always use tables" but a user says "give me a paragraph," the AI may struggle. Prioritize user-facing flexibility over rigid formatting rules.
  • Share with your team. Since the system prompt affects everyone in the workspace, make sure all members know what it says. Treat it like a shared configuration file.