Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 34 additions & 18 deletions completions-cron/src/__generated__/completions-index.ts

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 4 additions & 0 deletions docs/resources/(resources)/ai-agents/meta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"title": "ai & agents",
"pages": ["claude-code", "claude-code-project", "ollama", "openclaw"]
}
60 changes: 60 additions & 0 deletions docs/resources/(resources)/editors-ides/clion.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
title: clion
description: A reference page for the clion resource
---

The clion resource installs [JetBrains CLion](https://www.jetbrains.com/clion/), a C/C++ IDE. On macOS it is installed via Homebrew Cask (`brew install --cask clion`); on Linux via Snap (`snap install clion --classic`).

## Parameters

- **settingsZip** *(string, optional)* — Absolute path to a CLion settings ZIP file (exported via *File | Manage IDE Settings | Export Settings*) to import on first install. The archive is extracted directly into the CLion config directory, so all exported settings (keymaps, code styles, inspections, etc.) are applied before CLion is first launched.

- **importSettings** *(boolean, optional, default: `true`)* — Controls whether the `settingsZip` is imported during `create`. Set to `false` to skip the import even when `settingsZip` is specified. This is a setting parameter and is not tracked as state, so it only has effect when the resource is first applied.

- **plugins** *(string[], optional)* — JetBrains Marketplace plugin IDs to install (e.g. `"com.github.copilot"`, `"Docker"`). Plugin IDs can be found on the plugin's page in the Marketplace under *Additional Information*. Plugins are managed statefully: Codify adds missing plugins and removes plugins no longer in the list.

- **jvmMaxHeapSize** *(string, optional)* — Maximum JVM heap allocated to CLion, e.g. `"2048m"` for 2 GB or `"4096m"` for 4 GB. Written to `clion.vmoptions` in the IDE config directory as `-Xmx<value>`.

- **jvmMinHeapSize** *(string, optional)* — Initial JVM heap allocated to CLion, e.g. `"512m"`. Written to `clion.vmoptions` as `-Xms<value>`. Typically set to half the max heap size.

## Example usage

### Install CLion with plugins

```json title="codify.jsonc"
[
{
"type": "clion",
"plugins": [
"com.github.copilot",
"Docker"
]
}
]
```

### Install CLion, import previous settings, and increase heap

```json title="codify.jsonc"
[
{
"type": "clion",
"settingsZip": "/path/to/clion-settings.zip",
"importSettings": true,
"jvmMaxHeapSize": "4096m",
"jvmMinHeapSize": "1024m",
"plugins": [
"com.github.copilot",
"Docker"
]
}
]
```

## Notes

- On macOS a CLI launcher symlink is created at `/usr/local/bin/clion` during install so that `clion` is available in terminal sessions. It is removed on destroy.
- Plugin IDs must be exact JetBrains Marketplace IDs. You can find them on the plugin's Marketplace page under *Additional Information → Plugin ID*.
- The `settingsZip` import only runs during `create` (first apply), not on subsequent applies. If you need to re-import, destroy and re-apply the resource.
- JVM options are written to `clion.vmoptions` in `~/Library/Application Support/JetBrains/CLion<version>/` on macOS and `~/.config/JetBrains/CLion<version>/` on Linux. If CLion has never been launched, Codify creates this directory and file automatically.
- On Linux, Snap must be available. Codify will attempt to install `snapd` via the system package manager if it is not found.
60 changes: 60 additions & 0 deletions docs/resources/(resources)/editors-ides/goland.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
title: goland
description: A reference page for the goland resource
---

The goland resource installs [JetBrains GoLand](https://www.jetbrains.com/go/), a Go IDE. On macOS it is installed via Homebrew Cask (`brew install --cask goland`); on Linux via Snap (`snap install goland --classic`).

## Parameters

- **settingsZip** *(string, optional)* — Absolute path to a GoLand settings ZIP file (exported via *File | Manage IDE Settings | Export Settings*) to import on first install. The archive is extracted directly into the GoLand config directory, so all exported settings (keymaps, code styles, inspections, etc.) are applied before GoLand is first launched.

- **importSettings** *(boolean, optional, default: `true`)* — Controls whether the `settingsZip` is imported during `create`. Set to `false` to skip the import even when `settingsZip` is specified. This is a setting parameter and is not tracked as state, so it only has effect when the resource is first applied.

- **plugins** *(string[], optional)* — JetBrains Marketplace plugin IDs to install (e.g. `"com.github.copilot"`, `"Docker"`). Plugin IDs can be found on the plugin's page in the Marketplace under *Additional Information*. Plugins are managed statefully: Codify adds missing plugins and removes plugins no longer in the list.

- **jvmMaxHeapSize** *(string, optional)* — Maximum JVM heap allocated to GoLand, e.g. `"2048m"` for 2 GB or `"4096m"` for 4 GB. Written to `goland.vmoptions` in the IDE config directory as `-Xmx<value>`.

- **jvmMinHeapSize** *(string, optional)* — Initial JVM heap allocated to GoLand, e.g. `"512m"`. Written to `goland.vmoptions` as `-Xms<value>`. Typically set to half the max heap size.

## Example usage

### Install GoLand with plugins

```json title="codify.jsonc"
[
{
"type": "goland",
"plugins": [
"com.github.copilot",
"Docker"
]
}
]
```

### Install GoLand, import previous settings, and increase heap

```json title="codify.jsonc"
[
{
"type": "goland",
"settingsZip": "/path/to/goland-settings.zip",
"importSettings": true,
"jvmMaxHeapSize": "4096m",
"jvmMinHeapSize": "1024m",
"plugins": [
"com.github.copilot",
"Docker"
]
}
]
```

## Notes

- On macOS a CLI launcher symlink is created at `/usr/local/bin/goland` during install so that `goland` is available in terminal sessions. It is removed on destroy.
- Plugin IDs must be exact JetBrains Marketplace IDs. You can find them on the plugin's Marketplace page under *Additional Information → Plugin ID*.
- The `settingsZip` import only runs during `create` (first apply), not on subsequent applies. If you need to re-import, destroy and re-apply the resource.
- JVM options are written to `goland.vmoptions` in `~/Library/Application Support/JetBrains/GoLand<version>/` on macOS and `~/.config/JetBrains/GoLand<version>/` on Linux. If GoLand has never been launched, Codify creates this directory and file automatically.
- On Linux, Snap must be available. Codify will attempt to install `snapd` via the system package manager if it is not found.
61 changes: 61 additions & 0 deletions docs/resources/(resources)/editors-ides/intellij-idea.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
---
title: intellij-idea
description: A reference page for the intellij-idea resource
---

The intellij-idea resource installs [JetBrains IntelliJ IDEA](https://www.jetbrains.com/idea/), a general-purpose JVM/Java IDE. As of 2025.3, IntelliJ IDEA ships as a unified distribution that includes both the free Community tier and Ultimate features, which unlock within the same install via a subscription. On macOS it is installed via Homebrew Cask (`brew install --cask intellij-idea`); on Linux via Snap (`snap install intellij-idea-community --classic`).

## Parameters

- **settingsZip** *(string, optional)* — Absolute path to an IntelliJ IDEA settings ZIP file (exported via *File | Manage IDE Settings | Export Settings*) to import on first install. The archive is extracted directly into the IntelliJ IDEA config directory, so all exported settings (keymaps, code styles, inspections, etc.) are applied before IntelliJ IDEA is first launched.

- **importSettings** *(boolean, optional, default: `true`)* — Controls whether the `settingsZip` is imported during `create`. Set to `false` to skip the import even when `settingsZip` is specified. This is a setting parameter and is not tracked as state, so it only has effect when the resource is first applied.

- **plugins** *(string[], optional)* — JetBrains Marketplace plugin IDs to install (e.g. `"com.github.copilot"`, `"Docker"`). Plugin IDs can be found on the plugin's page in the Marketplace under *Additional Information*. Plugins are managed statefully: Codify adds missing plugins and removes plugins no longer in the list.

- **jvmMaxHeapSize** *(string, optional)* — Maximum JVM heap allocated to IntelliJ IDEA, e.g. `"2048m"` for 2 GB or `"4096m"` for 4 GB. Written to `idea.vmoptions` in the IDE config directory as `-Xmx<value>`.

- **jvmMinHeapSize** *(string, optional)* — Initial JVM heap allocated to IntelliJ IDEA, e.g. `"512m"`. Written to `idea.vmoptions` as `-Xms<value>`. Typically set to half the max heap size.

## Example usage

### Install IntelliJ IDEA with plugins

```json title="codify.jsonc"
[
{
"type": "intellij-idea",
"plugins": [
"com.github.copilot",
"Docker"
]
}
]
```

### Install IntelliJ IDEA, import previous settings, and increase heap

```json title="codify.jsonc"
[
{
"type": "intellij-idea",
"settingsZip": "/path/to/intellij-idea-settings.zip",
"importSettings": true,
"jvmMaxHeapSize": "4096m",
"jvmMinHeapSize": "1024m",
"plugins": [
"com.github.copilot",
"Docker"
]
}
]
```

## Notes

- On macOS a CLI launcher symlink is created at `/usr/local/bin/idea` during install so that `idea` is available in terminal sessions. It is removed on destroy.
- Plugin IDs must be exact JetBrains Marketplace IDs. You can find them on the plugin's Marketplace page under *Additional Information → Plugin ID*.
- The `settingsZip` import only runs during `create` (first apply), not on subsequent applies. If you need to re-import, destroy and re-apply the resource.
- JVM options are written to `idea.vmoptions` in `~/Library/Application Support/JetBrains/IntelliJIdea<version>/` on macOS and `~/.config/JetBrains/IntelliJIdea<version>/` on Linux. If IntelliJ IDEA has never been launched, Codify creates this directory and file automatically.
- On Linux, Snap must be available. Codify will attempt to install `snapd` via the system package manager if it is not found.
- IntelliJ IDEA is the unified distribution covering both the free Community tier and the Ultimate edition; Ultimate features are unlocked within the same install via an active subscription.
4 changes: 4 additions & 0 deletions docs/resources/(resources)/editors-ides/meta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"title": "editors & ides",
"pages": ["vscode", "cursor", "intellij-idea", "clion", "goland", "phpstorm", "pycharm", "rider", "rubymine", "rustrover", "webstorm", "android-studio"]
}
60 changes: 60 additions & 0 deletions docs/resources/(resources)/editors-ides/phpstorm.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
title: phpstorm
description: A reference page for the phpstorm resource
---

The phpstorm resource installs [JetBrains PhpStorm](https://www.jetbrains.com/phpstorm/), a PHP IDE. On macOS it is installed via Homebrew Cask (`brew install --cask phpstorm`); on Linux via Snap (`snap install phpstorm --classic`).

## Parameters

- **settingsZip** *(string, optional)* — Absolute path to a PhpStorm settings ZIP file (exported via *File | Manage IDE Settings | Export Settings*) to import on first install. The archive is extracted directly into the PhpStorm config directory, so all exported settings (keymaps, code styles, inspections, etc.) are applied before PhpStorm is first launched.

- **importSettings** *(boolean, optional, default: `true`)* — Controls whether the `settingsZip` is imported during `create`. Set to `false` to skip the import even when `settingsZip` is specified. This is a setting parameter and is not tracked as state, so it only has effect when the resource is first applied.

- **plugins** *(string[], optional)* — JetBrains Marketplace plugin IDs to install (e.g. `"com.github.copilot"`, `"Docker"`). Plugin IDs can be found on the plugin's page in the Marketplace under *Additional Information*. Plugins are managed statefully: Codify adds missing plugins and removes plugins no longer in the list.

- **jvmMaxHeapSize** *(string, optional)* — Maximum JVM heap allocated to PhpStorm, e.g. `"2048m"` for 2 GB or `"4096m"` for 4 GB. Written to `phpstorm.vmoptions` in the IDE config directory as `-Xmx<value>`.

- **jvmMinHeapSize** *(string, optional)* — Initial JVM heap allocated to PhpStorm, e.g. `"512m"`. Written to `phpstorm.vmoptions` as `-Xms<value>`. Typically set to half the max heap size.

## Example usage

### Install PhpStorm with plugins

```json title="codify.jsonc"
[
{
"type": "phpstorm",
"plugins": [
"com.github.copilot",
"Docker"
]
}
]
```

### Install PhpStorm, import previous settings, and increase heap

```json title="codify.jsonc"
[
{
"type": "phpstorm",
"settingsZip": "/path/to/phpstorm-settings.zip",
"importSettings": true,
"jvmMaxHeapSize": "4096m",
"jvmMinHeapSize": "1024m",
"plugins": [
"com.github.copilot",
"Docker"
]
}
]
```

## Notes

- On macOS a CLI launcher symlink is created at `/usr/local/bin/phpstorm` during install so that `phpstorm` is available in terminal sessions. It is removed on destroy.
- Plugin IDs must be exact JetBrains Marketplace IDs. You can find them on the plugin's Marketplace page under *Additional Information → Plugin ID*.
- The `settingsZip` import only runs during `create` (first apply), not on subsequent applies. If you need to re-import, destroy and re-apply the resource.
- JVM options are written to `phpstorm.vmoptions` in `~/Library/Application Support/JetBrains/PhpStorm<version>/` on macOS and `~/.config/JetBrains/PhpStorm<version>/` on Linux. If PhpStorm has never been launched, Codify creates this directory and file automatically.
- On Linux, Snap must be available. Codify will attempt to install `snapd` via the system package manager if it is not found.
Loading
Loading