@novemberfiveco/oxc-config-cli
@novemberfiveco/oxc-config-cli
Internal CLI package that powers the init command for @novemberfiveco/oxc-config-* framework packages. You normally run it through a framework package rather than directly:
npx @novemberfiveco/oxc-config-vite initWhat init does
init operates in two modes depending on whether a file already exists:
Create-if-absent (never overwrites unless --force):
oxlint.config.ts— OxLint config extending the shared package configoxfmt.config.ts— Oxfmt config spreading the shared package config.claude/hooks/oxc-format-lint.sh— post-edit hook script (skipped with--no-claude-hook)
Create-or-merge (safe to run on an existing project):
.vscode/settings.json— merges Oxc formatter and editor settings into existing file.vscode/extensions.json— merges theoxc.oxc-vscoderecommendation into existing file.claude/settings.json— merges thePostToolUsehook entry into existing file (skipped with--no-claude-hook)
Patch (adds missing keys, skips keys already set):
package.jsonscripts— addsformat,lint:fix,ci:lintpackage.jsonlint-staged— adds the pre-commit oxlint + oxfmt config
After running, init prints a checklist of per-machine steps that can't be automated (VS Code extension install, oxc.path.node for nvm/asdf/volta users).
Flags
| Flag | Effect |
|---|---|
--dry-run |
Print what would change without writing any files |
--force |
Overwrite create-if-absent files that already exist |
--no-claude-hook |
Skip creating .claude/hooks/oxc-format-lint.sh and the settings entry |
--install |
Reserved for future use (accepted but currently a no-op) |
Direct invocation
When invoked directly (not via a framework shim), the CLI defaults to the @novemberfiveco/oxc-config-vite package. Prefer using the framework package's own binary so the correct config package name is embedded in the generated files.