Skip to main content

Omnyx personality adaptation for Windsurf IDE via MCP

Project description

Omnyx Windsurf Plugin

Personality-driven adaptation for Windsurf IDE via MCP (Model Context Protocol) and settings injection.

Installation

cd omnyx-windsurf
pip install -e .

How It Works

Windsurf supports MCP (Model Context Protocol) — an open standard for extending AI capabilities. This plugin provides:

  1. MCP Server — Windsurf connects to omnyx-windsurf as an MCP tool
  2. Settings Injection — Modifies .windsurfrc with personality-driven configurations
  3. Cascade Context — Injects personality context into every AI interaction

Architecture

┌──────────────┐     ┌──────────────┐     ┌─────────────────┐
│   Windsurf   │◄───►│ omnyx-windsurf│◄───►│  Omnyx Backend  │
│    IDE       │ MCP │   MCP Server  │     │  (/api/agentic) │
│              │     │               │     │                 │
│ • Cascade    │     │ • Personality │     │                 │
│ • Settings   │     │   analysis    │     │                 │
│ • Config     │     │ • Autonomy    │     │                 │
│   files      │     │   mapping     │     │                 │
└──────────────┘     └──────────────┘     └─────────────────┘

Setup

Step 1: Configure MCP in Windsurf

Add to your Windsurf MCP config:

macOS: ~/Library/Application Support/Windsurf/mcp_config.json Linux: ~/.config/Windsurf/mcp_config.json Windows: %APPDATA%\Windsurf\mcp_config.json

{
  "mcpServers": {
    "omnyx": {
      "command": "omnyx-windsurf",
      "args": ["mcp"],
      "env": {
        "OMNYX_API_KEY": "omx_your_key_here"
      }
    }
  }
}

Or use the setup helper:

omnyx-windsurf setup --api-key omx_... --install-mcp

Step 2: Configure Windsurf Settings

The plugin can auto-configure .windsurfrc:

omnyx-windsurf configure-windsurf

This creates/modifies:

// .windsurfrc
{
  "omnyx.enabled": true,
  "omnyx.autonomy_level": "adaptive",
  "omnyx.planning_mode": "detailed",
  "omnyx.verbosity": "profile_based",
  "omnyx.test_generation": "comprehensive",
  "omnyx.cascade.context_injection": true
}

Usage

Automatic (Recommended)

Once configured, Windsurf automatically:

  1. Sends task context to Omnyx via MCP
  2. Receives personality profile and adaptation settings
  3. Adjusts Cascade behavior in real-time

Manual Context

Users can also invoke Omnyx explicitly in Cascade:

@omnyx check my personality profile
@omnyx adapt this task for my style

MCP Tools Provided

The plugin exposes these MCP tools to Windsurf:

omnyx_get_profile

Get current personality profile and confidence score.

Returns:

{
  "confidence": 0.82,
  "autonomy_level": "checkpointed",
  "planning_style": "detailed",
  "communication_style": "thorough",
  "last_updated": "2024-01-15T10:30:00Z"
}

omnyx_adapt_task

Get autonomy configuration for a specific task.

Input:

{
  "task_description": "Build user authentication",
  "estimated_scope": "medium",
  "file_context": ["src/auth.py", "src/models.py"]
}

Returns:

{
  "autonomy": "checkpointed",
  "planning_depth": "detailed",
  "test_coverage": "comprehensive",
  "cascade_instructions": "[Context: User prefers comprehensive solutions]"
}

omnyx_get_suggestions

Retrieve pending personalization suggestions.

omnyx_accept_suggestion / omnyx_dismiss_suggestion

Manage suggestion workflow.

Privacy Modes

Configure via .windsurfrc or CLI:

# Mode 1: Full context (default)
omnyx-windsurf config --privacy-mode raw_prompts

# Mode 2: Task only (no file contents)
omnyx-windsurf config --privacy-mode task_only

# Mode 3: Paused
omnyx-windsurf config --privacy-mode paused

Commands

omnyx-windsurf setup --api-key omx_...     # Initial configuration
omnyx-windsurf configure-windsurf          # Install MCP config
omnyx-windsurf status                      # Show profile and connection
omnyx-windsurf mcp                         # Start MCP server (for Windsurf)
omnyx-windsurf config                      # View/change settings
omnyx-windsurf check "task description"    # Test adaptation
omnyx-windsurf forget                      # Clear all data

Integration with .windsurfrc

The plugin modifies .windsurfrc to inject context:

{
  "cascade.system_prompt": "[Omnyx: User prefers detailed explanations with trade-off analysis. Confidence: 82%]",
  
  "omnyx.autonomy": {
    "level": "checkpointed",
    "checkpoint_frequency": "major_decisions"
  },
  
  "omnyx.style": {
    "verbosity": "high",
    "warmth": "medium",
    "structure": "detailed"
  },
  
  "omnyx.testing": {
    "coverage": "comprehensive",
    "include_edge_cases": true
  }
}

Development

# Run MCP server directly for testing
omnyx-windsurf mcp --debug

# Test task adaptation
omnyx-windsurf check "Refactor authentication module"

Differences from omnyx-devin

Aspect omnyx-devin (Cognition) omnyx-windsurf
Integration Requires vendor support ✅ MCP protocol (works now)
Config method API calls .windsurfrc settings
Context Task descriptions Files + workspace context
Real-time Batch ✅ Live via MCP
UI injection None ✅ Cascade system prompt

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

omnyx_windsurf-0.1.0.tar.gz (11.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

omnyx_windsurf-0.1.0-py3-none-any.whl (14.0 kB view details)

Uploaded Python 3

File details

Details for the file omnyx_windsurf-0.1.0.tar.gz.

File metadata

  • Download URL: omnyx_windsurf-0.1.0.tar.gz
  • Upload date:
  • Size: 11.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for omnyx_windsurf-0.1.0.tar.gz
Algorithm Hash digest
SHA256 ec2332b6be384a6f1d7c4e39e5017b02411f06c0f7f795fa2c9ebac009777d7f
MD5 4f306c9c2bdba5d530d5489ea5d91767
BLAKE2b-256 833b7d3fd082513c4c66effc95fa568f724d0daf5e73aa9a61f1b954083f61ee

See more details on using hashes here.

File details

Details for the file omnyx_windsurf-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: omnyx_windsurf-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 14.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for omnyx_windsurf-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 94e681623d135db6edcbda42939a95f0a9e8609b8cdc99b67266b887de42a149
MD5 8f0e1ef7c8f2ac04143cc8436c1bf14d
BLAKE2b-256 004bb03f2e6b576f7669e6cc6cc168a69dc1c40f3162491cc31d55cc0e99d1c3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page