# System prompts (llmcpp) **System prompts** guide how the generation agent works. The repository includes separate examples for replacing its instructions and appending project rules: ```bash # Replace the resolved system instructions. $ llmc++ \ -fllm-system-prompt=examples/markdown/13_prompt.md \ examples/13_system_prompt.cpp # Keep the built-in instructions and append project rules. $ llmc++ \ -fllm-append-prompt=examples/markdown/14_rules.md \ examples/14_append_prompt.cpp ``` Both files must be UTF-8. Paths resolve from the compiler's working directory. Their contents affect cache identity, so edits can invalidate a previous implementation. Function modifiers provide the same controls for individual targets. A function-level replacement discards driver-appended instructions; its own additions follow the replacement regardless of modifier order. [[llmcpp-reference-context|Reference context]] attaches supporting data separately from these instructions.