> ## Documentation Index
> Fetch the complete documentation index at: https://docs.janet.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Customize Janet

> Guide your Janet AI Agent with project-specific instructions and context

<div className="img-showcase">
  <div className="ci-mock">
    <div className="ci-mock-toolbar">
      <span className="ci-mock-add-btn">
        <svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2">
          <path d="M12 5v14M5 12h14" />
        </svg>

        Add
      </span>
    </div>

    <div className="ci-mock-container">
      <div className="ci-mock-row">
        <div className="ci-mock-badge">1</div>
        <div className="ci-mock-textarea">Always assign new tickets to the person who reported them unless a specific assignee is mentioned</div>

        <span className="ci-mock-x">
          <svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2">
            <path d="M18 6L6 18M6 6l12 12" />
          </svg>
        </span>
      </div>

      <div className="ci-mock-row ci-mock-row-focused">
        <div className="ci-mock-badge">2</div>
        <div className="ci-mock-textarea">Our product is a B2B SaaS billing platform. "Invoices" always refer to customer-facing invoices, not internal finance docs</div>

        <span className="ci-mock-x">
          <svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2">
            <path d="M18 6L6 18M6 6l12 12" />
          </svg>
        </span>
      </div>

      <div className="ci-mock-row">
        <div className="ci-mock-badge">3</div>
        <div className="ci-mock-textarea">When creating bug tickets, always set priority to High and issue type to Bug</div>

        <span className="ci-mock-x">
          <svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2">
            <path d="M18 6L6 18M6 6l12 12" />
          </svg>
        </span>
      </div>
    </div>

    <div className="ci-mock-actions">
      <span className="ci-mock-save-btn">Save</span>
      <span className="ci-mock-reset-btn">Reset</span>
    </div>
  </div>
</div>

## How it works

You write plain-language instructions that tell Janet how to handle this project. Every time Janet processes a request — creating tickets, triaging, responding to messages, running automations — it reads your instructions first and follows them. Instructions apply project-wide across all interactions.

## Set-up

Click the **Gear** icon in the header of your **Project Board** to access **Project Settings**, select the **Configure** tab, then select **Custom Instructions**.

<div className="img-showcase">
  <div className="psm-mock">
    <div className="psm-mock-inner">
      <div className="psm-mock-sidebar">
        <div className="psm-mock-sidebar-title">PROJECT SETTINGS</div>

        <div className="psm-mock-nav">
          <div className="psm-mock-nav-btn">
            <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2">
              <path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2" />

              <path d="M9 11a4 4 0 1 0 0-8 4 4 0 0 0 0 8z" />

              <path d="M23 21v-2a4 4 0 0 0-3-3.87" />

              <path d="M16 3.13a4 4 0 0 1 0 7.75" />
            </svg>

            Members
          </div>

          <div className="psm-mock-nav-btn psm-mock-nav-active">
            <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2">
              <path d="M12 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6z" />

              <path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83-2.83l.06-.06A1.65 1.65 0 0 0 4.6 15a1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 2.83-2.83l.06.06A1.65 1.65 0 0 0 9 4.6a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 2.83l-.06.06A1.65 1.65 0 0 0 19.4 9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z" />
            </svg>

            Configure

            <svg className="psm-mock-chevron" width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2.5">
              <path d="M9 6l6 6-6 6" />
            </svg>
          </div>

          <div className="psm-mock-subtabs">
            <div className="psm-mock-subtab">Kanban Columns</div>
            <div className="psm-mock-subtab">Resolved Filter</div>
            <div className="psm-mock-subtab psm-mock-subtab-active">Custom Instructions</div>
            <div className="psm-mock-subtab">Ticket Style</div>
            <div className="psm-mock-subtab">Auto-Tagging</div>
            <div className="psm-mock-subtab">Ticket Rubric</div>
            <div className="psm-mock-subtab">Recurring Actions</div>
          </div>

          <div className="psm-mock-nav-btn">
            <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2">
              <path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z" />

              <path d="M12 9v4" />

              <path d="M12 17h.01" />
            </svg>

            Danger Zone
          </div>
        </div>
      </div>

      <div className="psm-mock-content">
        <div className="psm-mock-hero">
          <div className="psm-mock-hero-icon">A</div>

          <div className="psm-mock-hero-text">
            <span className="psm-mock-hero-name-row">
              <span className="psm-mock-hero-name">Acme <span className="psm-mock-hero-name-extra">Project</span></span>
              <code className="psm-mock-hero-badge">ACME</code>
            </span>

            <div className="psm-mock-hero-meta">
              <svg width="9" height="9" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2">
                <rect x="3" y="4" width="18" height="18" rx="2" ry="2" />

                <path d="M16 2v4M8 2v4M3 10h18" />
              </svg>

              <span><span className="psm-mock-hero-meta-prefix">Created </span>Jan 15, 2025</span>
            </div>
          </div>
        </div>

        <div className="psm-mock-content-body">
          <div className="psm-mock-content-title">Custom Instructions</div>
          <div className="psm-mock-content-desc">Add instructions that Janet will follow for this project on every call.</div>

          <div style={{marginTop: '10px'}}>
            <div className="ci-psm-container">
              <div className="ci-psm-row">
                <div className="ci-psm-badge">1</div>
                <div className="ci-psm-input">Always assign new tickets to the person who reported them</div>

                <span className="ci-psm-x">
                  <svg width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2">
                    <line x1="18" y1="6" x2="6" y2="18" />

                    <line x1="6" y1="6" x2="18" y2="18" />
                  </svg>
                </span>
              </div>

              <div className="ci-psm-row">
                <div className="ci-psm-badge">2</div>
                <div className="ci-psm-input">Our product is a B2B SaaS billing platform</div>

                <span className="ci-psm-x">
                  <svg width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2">
                    <line x1="18" y1="6" x2="6" y2="18" />

                    <line x1="6" y1="6" x2="18" y2="18" />
                  </svg>
                </span>
              </div>

              <div className="ci-psm-row">
                <div className="ci-psm-badge">3</div>
                <div className="ci-psm-input">When creating bug tickets, always set priority to High</div>

                <span className="ci-psm-x">
                  <svg width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2">
                    <line x1="18" y1="6" x2="6" y2="18" />

                    <line x1="6" y1="6" x2="18" y2="18" />
                  </svg>
                </span>
              </div>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>
</div>

## Examples

Good custom instructions are specific and actionable. Here are some ideas:

<AccordionGroup>
  <Accordion title="Interpreting requests">
    Control how Janet interprets ambiguous requests and what it assumes by default.

    * *"Always assume a request is asking to create a new ticket unless an existing ticket is explicitly referenced."*
    * *"If a message could be a question or a ticket, treat it as a ticket."*
    * *"If I ask you to remind me about something, I want you to schedule a ticket for 6AM PST that day."*
  </Accordion>

  <Accordion title="Product context">
    Tell Janet what your product does, who your users are, and any domain-specific terminology. This helps Janet write better ticket descriptions and make smarter triage decisions.

    * *"Our product is a developer tools platform. 'Workspace' means a team environment, not a physical office."*
    * *"We have three user tiers: Free, Pro, and Enterprise. Tier-related tickets should always be tagged with the tier name."*
  </Accordion>

  <Accordion title="Field defaults">
    Set rules for how Janet should populate ticket fields when creating or updating tickets.

    * *"Default all new tickets to the Backlog column unless the request says otherwise."*
    * *"Always set priority to High for anything mentioning data loss, security, or downtime."*
    * *"Assign infrastructure tickets to @alice and frontend tickets to @bob."*
  </Accordion>
</AccordionGroup>

## Limits

Each instruction can be up to **2,000 characters**. There is no limit on the number of instructions per project. Instructions are read on every Janet interaction, so keep them concise and relevant.

Only project admins can add, edit, or remove instructions. All members can view them.
