Problem Statement
Currently, Jan's assistant system prompt is scoped per thread and requires manual setup every time. There is no way to define persistent, reusable instructions that apply globally across all chats, or to layer multiple instruction sets (e.g. a base behavior rule + a thread-specific system prompt) without merging everything into a single bloated prompt.
Feature Idea
Implement a layered agent rules system, inspired by how Cursor handles .mdc rule files. The system would have two scopes:
1. 🌐 Global Rules
Instructions that apply to every thread and every chat in Jan, always. These act as a persistent base layer for the model's behavior across the entire app.
Examples of global rules:
- "Always remember and reference what has been discussed earlier in the conversation. Never lose context."
- "Always respond in the same language the user writes in."
- "Never make up information. If you don't know, say so."
2. 🗂️ Thread / Project Rules
Instructions scoped to a specific thread or project. These are the user's custom system prompt for that particular conversation context.
Examples of thread rules:
- "You are an expert Python developer. Write clean, documented code."
- "You are a creative writing assistant. Focus on narrative and style."
How It Would Work
When the model receives a message, Jan composes the final system prompt by stacking the active rule layers in order:
[Global Rules] + [Thread/Project Rules] → Final system prompt sent to model
This means users can define a global context-management rule once and forget about it — it will always be applied on top of any thread-specific agent, without having to copy-paste it everywhere.
Why This Is Better Than the Current Approach
| Current |
Proposed |
| One system prompt per thread |
Global rules + thread rules composed automatically |
| Must manually include all instructions in every assistant |
Write once, apply everywhere |
| Single giant prompt = hard to maintain |
Modular, scoped rules = clean and reusable |
| No persistent cross-thread behavior |
Global rules persist across all chats |
Real-World Inspiration
This is directly inspired by Cursor's .mdc rules system, which allows:
- Global rules (
User Rules in Cursor settings) that apply to every interaction.
- Project-level rules (
.cursor/rules/*.mdc files) that apply only within a specific project/context.
This pattern has proven very effective for developers using Cursor and would bring similar power-user capabilities to Jan.
Related Issues
Problem Statement
Currently, Jan's assistant system prompt is scoped per thread and requires manual setup every time. There is no way to define persistent, reusable instructions that apply globally across all chats, or to layer multiple instruction sets (e.g. a base behavior rule + a thread-specific system prompt) without merging everything into a single bloated prompt.
Feature Idea
Implement a layered agent rules system, inspired by how Cursor handles
.mdcrule files. The system would have two scopes:1. 🌐 Global Rules
Instructions that apply to every thread and every chat in Jan, always. These act as a persistent base layer for the model's behavior across the entire app.
Examples of global rules:
2. 🗂️ Thread / Project Rules
Instructions scoped to a specific thread or project. These are the user's custom system prompt for that particular conversation context.
Examples of thread rules:
How It Would Work
When the model receives a message, Jan composes the final system prompt by stacking the active rule layers in order:
This means users can define a global context-management rule once and forget about it — it will always be applied on top of any thread-specific agent, without having to copy-paste it everywhere.
Why This Is Better Than the Current Approach
Real-World Inspiration
This is directly inspired by Cursor's
.mdcrules system, which allows:User Rulesin Cursor settings) that apply to every interaction..cursor/rules/*.mdcfiles) that apply only within a specific project/context.This pattern has proven very effective for developers using Cursor and would bring similar power-user capabilities to Jan.
Related Issues