Kodeks

Shared linter configurations for TypeScript projects.
Kodeks provides reusable, opinionated configurations for maintaining consistent code quality across TypeScript projects.
Usage
oxlint
bun add -d @dirstack/kodeks oxlint
Create a .oxlintrc.json file in your project root:
{
"extends": ["./node_modules/@dirstack/kodeks/configs/oxlint-base.json"]
}
For Next.js projects, use the Next.js preset:
{
"extends": ["./node_modules/@dirstack/kodeks/configs/oxlint-next.json"]
}
For TanStack projects, use the TanStack preset:
{
"extends": ["./node_modules/@dirstack/kodeks/configs/oxlint-tanstack.json"]
}
oxfmt
bun add -d @dirstack/kodeks oxfmt
Since oxfmt does not support configuration inheritance, you have two options:
Option 1: Reference via CLI flag
Add to your package.json scripts:
{
"scripts": {
"format": "oxfmt --config ./node_modules/@dirstack/kodeks/configs/oxfmt.json --write ."
}
}
Option 2: Copy configuration locally
cp ./node_modules/@dirstack/kodeks/configs/oxfmt.json ./.oxfmtrc.json
Commitlint
bun add -d @dirstack/kodeks @commitlint/cli @commitlint/config-conventional
Create a commitlint.json file in your project root:
{
"extends": ["./node_modules/@dirstack/kodeks/configs/commitlint.json"]
}
Semantic Release
bun add -d @dirstack/kodeks semantic-release conventional-changelog-conventionalcommits
Create a release.json file in your project root:
{
"extends": "@dirstack/kodeks/semantic-release"
}
A dry-run variant is also available for CI validation:
{
"extends": "@dirstack/kodeks/semantic-release-dry-run"
}
Lefthook
bun add -d @dirstack/kodeks lefthook
Create a lefthook.json file in your project root and extend the hooks you need:
{
"extends": [
"node_modules/@dirstack/kodeks/configs/lefthook-oxlint.json",
"node_modules/@dirstack/kodeks/configs/lefthook-oxfmt.json",
"node_modules/@dirstack/kodeks/configs/lefthook-commitlint.json"
]
}
Available hooks:
lefthook-oxlint.json — Lints and fixes staged files with oxlint (pre-commit)
lefthook-oxfmt.json — Formats staged files with oxfmt (pre-commit)
lefthook-commitlint.json — Validates commit messages (commit-msg)
lefthook-typescript.json — Type checks with tsc (pre-commit)
Agentic Coding
Skills
This package includes agent skills for code formatting, testing, and commit conventions.
Available skills:
formatting - Code formatting rules not handled by auto-formatters (arrow functions, exports, types, naming, comments, JSX)
testing - Best practices, structure, coverage categories, and formatting conventions for writing tests
commits - Conventional commit types, scopes, and message formatting guidelines
dependencies - Safely upgrade project dependencies to their latest versions across workspaces
dhh - DHH-style code review for TypeScript/React - direct, opinionated, allergic to over-engineering
Install all skills using skills.sh:
npx skills add dirstack/kodeks
Or install individual skills:
npx skills add dirstack/kodeks --skill formatting
npx skills add dirstack/kodeks --skill testing
npx skills add dirstack/kodeks --skill commits