ワンクリックで
configure-formatters
Configuration for OpenCode formatters - setting up and customizing code formatters for different languages
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Configuration for OpenCode formatters - setting up and customizing code formatters for different languages
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Commands, man-style CLI flags, and Microsoft.WSL.Containers API for building/running Linux containers via wslc on Windows (no Docker Desktop required).
Run the Antigravity (Gemini) CLI agent harness via the agy binary. Includes interactive session control and exit handling.
Use this skill whenever you need to click, type, or navigate inside a browser window (Edge, Chrome, Firefox, etc.) but the computer-use MCP blocks interaction because the browser is granted at tier 'read'. This skill bypasses that restriction by injecting mouse and keyboard input at the Windows API level via PowerShell and user32.dll—the same technique that worked to navigate Edge to code.visualstudio.com. Trigger this skill any time you see the error 'granted at tier read — visible in screenshots only, no clicks or typing', or any time the user asks you to click or type in a browser and the Claude-in-Chrome extension is not connected.
Python SDK for programmatic control of GitHub Copilot CLI via JSON-RPC
Harden Windows Defender privacy settings for authorized pentest engagements. Disables telemetry uploads, sample submission, and cloud reporting to prevent leaking target info, credentials, and tooling to Microsoft. Includes exclusion management and post-engagement re-enablement.
Specification for building Model Context Protocol servers using Python
| name | configure/formatters |
| description | Configuration for OpenCode formatters - setting up and customizing code formatters for different languages |
| author | Tim Sonner |
| license | MIT |
| compatibility | opencode |
| metadata | {"audience":"developers","workflow":"configuration","language":"markdown"} |
Configure and customize code formatters in OpenCode to maintain consistent code styles.
OpenCode uses language-specific formatters to automatically format files after they are written or edited. This ensures that generated code follows your project's code styles.
When OpenCode writes or edits a file, it:
This process happens in the background, ensuring your code styles are maintained without manual steps.
OpenCode comes with several built-in formatters for popular languages and frameworks:
| Formatter | Extensions | Requirements |
|---|---|---|
| air | .R | air command available |
| biome | .js, .jsx, .ts, .tsx, .html, .css, .md, .json, .yaml, and more | biome.json(c) config file |
| cargofmt | .rs | cargo fmt command available |
| clang-format | .c, .cpp, .h, .hpp, .ino, and more | .clang-format config file |
| cljfmt | .clj, .cljs, .cljc, .edn | cljfmt command available |
| dart | .dart | dart command available |
| dfmt | .d | dfmt command available |
| gleam | .gleam | gleam command available |
| gofmt | .go | gofmt command available |
| htmlbeautifier | .erb, .html.erb | htmlbeautifier command available |
| ktlint | .kt, .kts | ktlint command available |
| mix | .ex, .exs, .eex, .heex, .leex, .neex, .sface | mix command available |
| nixfmt | .nix | nixfmt command available |
| ocamlformat | .ml, .mli | ocamlformat command available and .ocamlformat config file |
| ormolu | .hs | ormolu command available |
| oxfmt (Experimental) | .js, .jsx, .ts, .tsx | oxfmt dependency in package.json and experimental env variable flag |
| pint | .php | laravel/pint dependency in composer.json |
| prettier | .js, .jsx, .ts, .tsx, .html, .css, .md, .json, .yaml, and more | prettier dependency in package.json |
| rubocop | .rb, .rake, .gemspec, .ru | rubocop command available |
| ruff | .py, .pyi | ruff command available with config |
| rustfmt | .rs | rustfmt command available |
| shfmt | .sh, .bash | shfmt command available |
| standardrb | .rb, .rake, .gemspec, .ru | standardrb command available |
| terraform | .tf, .tfvars | terraform command available |
| uv | .py, .pyi | uv command available |
| zig | .zig, .zon | zig command available |
If your project has prettier in your package.json, OpenCode will automatically use it for supported file types.
Customize formatters through the formatter section in your OpenCode config (opencode.json):
{
"$schema": "https://opencode.ai/config.json",
"formatter": {}
}
Each formatter configuration supports:
| Property | Type | Description |
|---|---|---|
disabled | boolean | Set to true to disable the formatter |
command | string[] | The command to run for formatting |
environment | object | Environment variables to set when running the formatter |
extensions | string[] | File extensions this formatter should handle |
To disable all formatters globally:
{
"$schema": "https://opencode.ai/config.json",
"formatter": false
}
To disable a specific formatter:
{
"$schema": "https://opencode.ai/config.json",
"formatter": {
"prettier": {
"disabled": true
}
}
}
Override built-in formatters or add new ones:
{
"$schema": "https://opencode.ai/config.json",
"formatter": {
"prettier": {
"command": ["npx", "prettier", "--write", "$FILE"],
"environment": {
"NODE_ENV": "development"
},
"extensions": [".js", ".ts", ".jsx", ".tsx"]
},
"custom-markdown-formatter": {
"command": ["deno", "fmt", "$FILE"],
"extensions": [".md"]
}
}
}
The $FILE placeholder in the command will be replaced with the path to the file being formatted.
{
"$schema": "https://opencode.ai/config.json",
"formatter": {
"prettier": {
"command": ["npx", "prettier", "--write", "$FILE"],
"extensions": [".js", ".ts", ".jsx", ".tsx", ".vue", ".svelte"]
}
}
}
{
"$schema": "https://opencode.ai/config.json",
"formatter": {
"rustfmt": {
"command": ["rustfmt"],
"extensions": [".rs"]
}
}
}
{
"$schema": "https://opencode.ai/config.json",
"formatter": {
"ruff": {
"command": ["ruff", "check", "--fix", "$FILE"],
"environment": {},
"extensions": [".py", ".pyi"]
}
}
}
By configuring formatters appropriately, you ensure that OpenCode-generated code maintains consistency with your existing codebase and team standards.