Skip to content
vetkitChecksChangelogDocumentation

vetkit.llm-app.request-input-in-system-prompt

Request input is interpolated into the system prompt. Text placed in the system role carries the developer's authority, so a user can rewrite the model's instructions (prompt injection) instead of merely asking it a question.

Last updated:

Suite: AI code risks

javascript, typescript

Request input is interpolated into the system prompt. Text placed in the system role carries the developer's authority, so a user can rewrite the model's instructions (prompt injection) instead of merely asking it a question.

Category: LLM SECURITY · Engine rule severity: WARNING

How to fix it

Keep the system prompt constant (or built only from trusted server-side values) and pass user-supplied text as a separate user message. If a user value must appear in the instructions, restrict it to an allow-listed enum.

References

Source: packages/engine/rules/llm-app/javascript.yml.

python

Request input is interpolated into the system prompt. Text placed in the system role carries the developer's authority, so a user can rewrite the model's instructions (prompt injection) instead of merely asking it a question.

Category: LLM SECURITY · Engine rule severity: WARNING

How to fix it

Keep the system prompt constant (or built only from trusted server-side values) and pass user-supplied text as a separate user message. If a user value must appear in the instructions, restrict it to an allow-listed enum.

References

Source: packages/engine/rules/llm-app/python.yml.

Generated from shipped rule definitions at build time. Matching is a review signal, not proof of exploitability. “generic” denotes text matching, not complete language or framework coverage. Runtime configuration and available tools affect whether a rule runs.