flowchart TD
A["New Prompt Task"] --> B{"How much
context needed?"}
B -->|Minimal| C["Prompt Compression"]
B -->|Moderate| D["Relevance Filtering
+ Context Injection"]
B -->|Extensive| E{"Does it fit in
context window?"}
E -->|Yes| F["Background Info
+ Domain Priming"]
E -->|No| G["Document Summarization
+ Chunking"]
C --> H["Submit Prompt"]
D --> H
F --> H
G --> I["Process in Stages"]
I --> H
H --> J{"Multi-turn
conversation?"}
J -->|No| L["Done"]
J -->|Yes| K["Manage
Conversation History"]
K --> M{"History
getting long?"}
M -->|No| L
M -->|Yes| N["Summarize
+ Reset Context"]
N --> L
classDef startNode fill:#4a7fb5,stroke:#333,stroke-width:2px,color:#fff,font-size:16px
classDef decisionNode fill:#f0a04b,stroke:#333,stroke-width:2px,color:#333,font-size:16px
classDef techniqueNode fill:#a3c4dc,stroke:#333,stroke-width:2px,color:#333,font-size:16px
classDef actionNode fill:#7ec4a7,stroke:#333,stroke-width:2px,color:#333,font-size:16px
classDef endNode fill:#2e6b4f,stroke:#333,stroke-width:2px,color:#fff,font-size:16px
class A startNode
class B,E,J,M decisionNode
class C,D,F,G techniqueNode
class H,I,K,N actionNode
class L endNode
linkStyle default font-size:16px