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

# Devin Desktop

<Note>
  [Devin Desktop](https://devin.ai/blog/windsurf-is-now-devin-desktop?utm_source=zenable_docs\&utm_medium=web) is Cognition's rebrand of Windsurf — the IDE built around the [Devin local-agent harness](https://docs.devin.ai/desktop/devin-local.md?utm_source=zenable_docs\&utm_medium=web).
</Note>

## Quick Install

```bash theme={null}
zenable install devin-desktop
```

<Note>See the [CLI command reference](/integrations/zenable/commands#install) for more options.</Note>

**That's it! You're all set.** Restart Devin Desktop and start using Zenable's conformance checking.

This installs both the MCP server and Devin Desktop hooks for real-time code checking.

***

<Accordion title="Advanced: Manual MCP Configuration" icon="wrench">
  <Note>The below is a minimal example which may need to be merged with your existing configuration. Consider using the quick install command to handle this automatically.</Note>

  Place the following in `~/.config/devin/config.json` (global) or `.devin/config.json` (project) — paths documented at [docs.devin.ai/cli/extensibility/mcp/configuration](https://docs.devin.ai/cli/extensibility/mcp/configuration.md?utm_source=zenable_docs\&utm_medium=web):

  ```json theme={null}
  {
    "mcpServers": {
      "zenable": {
        "type": "http",
        "url": "https://mcp.zenable.app/"
      }
    }
  }
  ```

  On Windows the global path is `%APPDATA%\devin\config.json`.

  <Warning>We only recommend this manual approach if you can't use `zenable install`. Otherwise, `zenable install` is much safer and can handle configuration upgrades over time, handles merges with existing configs, performs backups and logging in case of issues, and more.</Warning>
</Accordion>

<Accordion title="Advanced: Manual Hook Configuration" icon="bolt">
  <Note>Hooks run automatically to check for conformance issues. The quick install command sets this up for you.</Note>

  Devin Desktop hooks are Claude-Code-compatible (same event names + payload shape) per [docs.devin.ai/cli/extensibility/hooks/overview](https://docs.devin.ai/cli/extensibility/hooks/overview.md?utm_source=zenable_docs\&utm_medium=web). Place the following in `.devin/hooks.v1.json` (project scope) — the recommended standalone hook file:

  ```json theme={null}
  {
    "PreToolUse": [
      {
        "matcher": "*",
        "hooks": [
          {
            "type": "command",
            "command": "zenable hook || true"
          }
        ]
      }
    ],
    "PostToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "zenable hook"
          }
        ]
      }
    ],
    "UserPromptSubmit": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "zenable hook"
          }
        ]
      }
    ],
    "Stop": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "zenable hook"
          }
        ]
      }
    ]
  }
  ```

  For global scope, place the same `hooks` object under a `"hooks"` key in `~/.config/devin/config.json` (or `%APPDATA%\devin\config.json` on Windows) — see [docs.devin.ai/cli/extensibility/hooks/lifecycle-hooks](https://docs.devin.ai/cli/extensibility/hooks/lifecycle-hooks.md?utm_source=zenable_docs\&utm_medium=web) for the full event catalog.
</Accordion>
