allow disabling formatter

This commit is contained in:
Dax Raad
2025-07-31 18:56:04 -04:00
parent 4273714a62
commit 04e3e83db3
2 changed files with 11 additions and 0 deletions

View File

@@ -278,6 +278,14 @@ export namespace Config {
.optional()
.describe("Custom provider configurations and model overrides"),
mcp: z.record(z.string(), Mcp).optional().describe("MCP (Model Context Protocol) server configurations"),
formatter: z
.record(
z.string(),
z.object({
disabled: z.boolean().optional(),
}),
)
.optional(),
instructions: z.array(z.string()).optional().describe("Additional instruction files or patterns to include"),
layout: Layout.optional().describe("@deprecated Always uses stretch layout."),
permission: z

View File

@@ -5,6 +5,7 @@ import { Log } from "../util/log"
import path from "path"
import * as Formatter from "./formatter"
import { Config } from "../config/config"
export namespace Format {
const log = Log.create({ service: "format" })
@@ -28,9 +29,11 @@ export namespace Format {
}
async function getFormatter(ext: string) {
const cfg = await Config.get()
const result = []
for (const item of Object.values(Formatter)) {
if (!item.extensions.includes(ext)) continue
if (cfg.formatter?.[item.name]?.disabled) continue
if (!(await isEnabled(item))) continue
result.push(item)
}