Sixth Rules allow you to provide Sixth with system-level guidance. Think of them as a persistent way to include context and preferences for your projects or globally for every conversation.

Creating a Rule

You can create a rule by clicking the + button in the Rules tab. This will open a new file in your IDE which you can use to write your rule.
Create a Rule
Once you save the file:
  • Your rule will be stored in the .sixthrules/ directory in your project (if it’s a Workspace Rule)
  • Or in the Global Rules directory (if it’s a Global Rule):

Global Rules Directory Location

The location of your Global Rules directory depends on your operating system:
Operating SystemDefault LocationNotes
WindowsDocuments\Sixth\RulesUses system Documents folder
macOS~/Documents/Sixth/RulesUses user Documents folder
Linux/WSL~/Documents/Sixth/RulesMay fall back to ~/Sixth/Rules on some systems
Note for Linux/WSL users: If you don’t find your global rules in ~/Documents/Sixth/Rules, check ~/Sixth/Rules as the location may vary depending on your system configuration and whether the Documents directory exists.
You can also have Sixth create a rule for you by using the /newrule slash command in the chat.
Example Sixth Rule Structure
# Project Guidelines

## Documentation Requirements

-   Update relevant documentation in /docs when modifying features
-   Keep README.md in sync with new capabilities
-   Maintain changelog entries in CHANGELOG.md

## Architecture Decision Records

Create ADRs in /docs/adr for:

-   Major dependency changes
-   Architectural pattern changes
-   New integration patterns
-   Database schema changes
    Follow template in /docs/adr/template.md

## Code Style & Patterns

-   Generate API clients using OpenAPI Generator
-   Use TypeScript axios template
-   Place generated code in /src/generated
-   Prefer composition over inheritance
-   Use repository pattern for data access
-   Follow error handling pattern in /src/utils/errors.ts

## Testing Standards

-   Unit tests required for business logic
-   Integration tests for API endpoints
-   E2E tests for critical user flows

Key Benefits

  1. Version Controlled: The .sixthrules file becomes part of your project’s source code
  2. Team Consistency: Ensures consistent behavior across all team members
  3. Project-Specific: Rules and standards tailored to each project’s needs
  4. Institutional Knowledge: Maintains project standards and practices in code
Place the .sixthrules file in your project’s root directory:
your-project/
├── .sixthrules
├── src/
├── docs/
└── ...
Sixth’s system prompt, on the other hand, is not user-editable (here’s where you can find it). For a broader look at prompt engineering best practices, check out this resource.

Tips for Writing Effective Sixth Rules

  • Be Clear and Concise: Use simple language and avoid ambiguity.
  • Focus on Desired Outcomes: Describe the results you want, not the specific steps.
  • Test and Iterate: Experiment to find what works best for your workflow.

.sixthrules/ Folder System

your-project/
├── .sixthrules/              # Folder containing active rules
│   ├── 01-coding.md          # Core coding standards
│   ├── 02-documentation.md   # Documentation requirements
│   └── current-sprint.md     # Rules specific to current work
├── src/
└── ...
Sixth automatically processes all Markdown files inside the .sixthrules/ directory, combining them into a unified set of rules. The numeric prefixes (optional) help organize files in a logical sequence.

Using a Rules Bank

For projects with multiple contexts or teams, maintain a rules bank directory:
your-project/
├── .sixthrules/              # Active rules - automatically applied
│   ├── 01-coding.md
│   └── client-a.md

├── sixthrules-bank/          # Repository of available but inactive rules
│   ├── clients/              # Client-specific rule sets
│   │   ├── client-a.md
│   │   └── client-b.md
│   ├── frameworks/           # Framework-specific rules
│   │   ├── react.md
│   │   └── vue.md
│   └── project-types/        # Project type standards
│       ├── api-service.md
│       └── frontend-app.md
└── ...

Benefits of the Folder Approach

  1. Contextual Activation: Copy only relevant rules from the bank to the active folder
  2. Easier Maintenance: Update individual rule files without affecting others
  3. Team Flexibility: Different team members can activate rules specific to their current task
  4. Reduced Noise: Keep the active ruleset focused and relevant

Usage Examples

Switch between client projects:
# Switch to Client B project
rm .sixthrules/client-a.md
cp sixthrules-bank/clients/client-b.md .sixthrules/
Adapt to different tech stacks:
# Frontend React project
cp sixthrules-bank/frameworks/react.md .sixthrules/

Implementation Tips

  • Keep individual rule files focused on specific concerns
  • Use descriptive filenames that clearly indicate the rule’s purpose
  • Consider git-ignoring the active .sixthrules/ folder while tracking the sixthrules-bank/
  • Create team scripts to quickly activate common rule combinations
The folder system transforms your Sixth rules from a static document into a dynamic knowledge system that adapts to your team’s changing contexts and requirements.

Managing Rules with the Toggleable Popover

To make managing both single .sixthrules files and the folder system even easier, Sixth v3.13 introduces a dedicated popover UI directly accessible from the chat interface. Located conveniently under the chat input field, this popover allows you to:
  • Instantly See Active Rules: View which global rules (from your user settings) and workspace rules (.sixthrules file or folder contents) are currently active.
  • Quickly Toggle Rules: Enable or disable specific rule files within your workspace .sixthrules/ folder with a single click. This is perfect for activating context-specific rules (like react-rules.md or memory-bank.md) only when needed.
  • Easily Add/Manage Rules: Quickly create a workspace .sixthrules file or folder if one doesn’t exist, or add new rule files to an existing folder.
This UI significantly simplifies switching contexts and managing different sets of instructions without needing to manually edit files or configurations during a conversation.
Sixth Logo