> ## Documentation Index
> Fetch the complete documentation index at: https://osbelgrade.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Windsurf Code

> Configure Windsurf's Cascade AI assistant to help you write and maintain further personal documentation. 

<img src="https://mintcdn.com/osbelgrade/hZGZJtsYWKoJCUgt/images/wind.svg?fit=max&auto=format&n=hZGZJtsYWKoJCUgt&q=85&s=25b0ad85b382979130f5743d1af0b29b" alt="Wind Sv" width="775" height="422" data-path="images/wind.svg" />

## Prerequisites

* Windsurf IDE installed ([download here](https://codeium.com/windsurf))
* Active Codeium account (free or Pro)

## Setup

**Install Windsurf**\
Download and install Windsurf IDE from the official Codeium website.

**Open Your Documentation Project**\
Launch Windsurf and open your OS:B documentation repository.

**Configure AI Assistant**\
Windsurf's AI assistant (Cascade) is enabled by default. Access it via:

* Chat panel (right sidebar)
* Inline completions (as you type)
* Command palette (`Cmd/Ctrl + K`)

**Add Documentation Context (Optional)**\
Create a `.windsurfrules` file at the root of your documentation repository to train Windsurf on your OS:B documentation standards.

## Create .windsurfrules

Create a `.windsurfrules` file at the root of your documentation repository to establish OS:B-specific guidelines:

```python theme={null}
# OS:B Documentation Standards

## Project Context
This is OS:B (Belgrade Operating System) - a poetry project documenting Belgrade's 
cultural operating system through technical documentation aesthetics. 
All documentation must maintain technical manual voice while being accessible.

## Python Poetry Format
All poems follow this structure:
- 60-70 character line maximum
- Clean multi-line string in observe() method
- Metadata: location, timestamp, coordinates (in that order)
- Minimal footer only
- Free verse with intentional line breaks

## Documentation Voice
- Technical but not jargon-heavy
- Present tense, active voice
- Concrete observations over interpretation
- No romanticisation or performance of culture

## File Naming
Format: location-descriptor-YYYYMMDD
Example: oslobodjena-dusk-20241001

## Module Organization
- Core Functions: Essential Belgrade processes
- User Interface Studies: Navigation and interaction protocols
- Background Processes: Invisible cultural operations
- System Errors & Patches: Integration failures and debugging
- Version History: Historical protocol evolution

## Code Examples
Use bash for CLI commands, Python for poems and cultural algorithms. 
All code must be functional and properly formatted for Mintlify rendering.
```

## Using Windsurf with OS:B

**Code Generation**\
Use Cascade to generate Python poem templates following OS:B standards. Reference `.windsurfrules` for consistent formatting.

**Documentation Editing**\
Windsurf provides AI-assisted editing for markdown content. Request changes like `update this section to match technical documentation voice` or `add bash code example for this installation step`

**Multi-file Context**\
Windsurf maintains awareness across your entire documentation repository, helping ensure consistency in terminology, structure, and formatting.

**Inline Assistance**\
As you write, Windsurf suggests completions that follow your established patterns and project conventions.

## Workflow Integration

**Creating New Observations**

1. Open new file with naming convention
2. Request: `Create OS:B poem template for [observation type]`
3. Windsurf generates structured Python template
4. Fill in metadata and poem content
5. Windsurf suggests line breaks and formatting improvements

**Updating Documentation**

1. Navigate to page requiring updates
2. Use Cascade chat to request specific changes
3. Review and accept AI-suggested modifications
4. Windsurf maintains consistency with existing style

<Info>
  **Troubleshooting** Ask Windsurf about Mintlify-specific syntax, navigation structure, or formatting issues. The AI can reference your entire project context to provide relevant solutions.
</Info>

## Best Practices

**Context Loading**\
Open related files when working on connected documentation sections so Windsurf understands full context.

**Specific Prompts**\
Instead of "improve this," specify "rewrite in technical documentation voice maintaining 60-character line limit."

**Iterative Refinement**\
Use chat history to build on previous suggestions rather than starting fresh each time.

**Consistency Checks**\
Ask Windsurf to verify formatting consistency: "Check if all poem files follow the metadata order: location, timestamp, coordinates."

## Resources

* [Windsurf Documentation](https://codeium.com/windsurf/docs)
* [Cascade AI Features](https://codeium.com/windsurf/cascade)
* OS:B Technical Standards (see Knowledge Transfer document)

***

<Tip>
  **Note**: While Windsurf can assist with code generation and documentation editing, it cannot observe Belgrade for you. The AI helps structure and format documentation - actual protocol discovery requires direct engagement with the city's operating system.
</Tip>
