Skip to content

Init Configurations

Overview

Init configurations define which files datamitsu creates when you run dm init. These include dotfiles, tool configurations, AI instructions, and IDE settings.

This configuration includes 33 init configs.

Init Configs Reference

File Scope Project Types Link Target Delete Only Also Deletes
.cursor/rules git-root all ../AGENTS.md
.cursorrules git-root all AGENTS.md
.dockerignore git-root all
.editorconfig git-root all
.editorconfig-checker.json git-root all
.github/copilot-instructions.md git-root all ../AGENTS.md
.gitignore git-root all
.gitleaks.toml git-root all gitleaks.toml
.golangci.yaml project golang-package .golangci.yml
.golangci.yaml
.golangci.toml
.golangci.json
.node-version git-root all
.npmrc git-root npm-package
.oxlintrc.json project npm-package
.syncpackrc.json git-root npm-package .syncpackrc
.syncpackrc.json
.syncpackrc.yaml
.syncpackrc.yml
.syncpackrc.js
.syncpackrc.ts
.syncpackrc.mjs
.syncpackrc.cjs
syncpack.config.js
syncpack.config.cjs
syncpack.config.ts
syncpack.config.mjs
.tombi.toml git-root all tombi.toml
.tombi.toml
.trufflehog-exclude-paths.txt git-root all
.vscode/extensions.json git-root all
.vscode/settings.json git-root all
.windsurfrules git-root all AGENTS.md
AGENTS.md git-root all
CLAUDE.md git-root all AGENTS.md
commitlint.config.js git-root all .commitlintrc
.commitlintrc.json
.commitlintrc.yaml
.commitlintrc.yml
.commitlintrc.js
.commitlintrc.cjs
.commitlintrc.mjs
.commitlintrc.ts
.commitlintrc.cts
.commitlintrc.mts
commitlint.config.js
commitlint.config.cjs
commitlint.config.mjs
commitlint.config.ts
commitlint.config.cts
commitlint.config.mts
cspell.config.js git-root all .cspell.config.yaml
.cspell.config.yml
cspell.config.yaml
cspell.config.yml
.cspell.yaml
.cspell.yml
cspell.yaml
cspell.yml
.cspell.json
cspell.json
.cSpell.json
cSpell.json
.cspell.jsonc
cspell.jsonc
.cspell.config.json
.cspell.config.jsonc
cspell.config.json
cspell.config.jsonc
cspell.config.mjs
cspell.config.cjs
.cspell.config.mjs
.cspell.config.cjs
.cspell.config.js
cspell.config.mts
cspell.config.ts
cspell.config.cts
.cspell.config.mts
.cspell.config.ts
.cspell.config.cts
cspell.config.toml
.cspell.config.toml
deprecated-configs project all .babelrc
.babelrc.js
babel.config.js
.lintstagedrc
.lintstagedrc.json
.lintstagedrc.yaml
.lintstagedrc.yml
.lintstagedrc.mjs
lint-staged.config.mjs
.lintstagedrc.cjs
lint-staged.config.cjs
lint-staged.config.js
.lintstagedrc.js
.husky
.taplo.toml
taplo.toml
eslint.config.js project npm-package eslint.config.js
eslint.config.mjs
eslint.config.cjs
eslint.config.ts
eslint.config.mts
eslint.config.cts
.eslintrc.js
.eslintrc.cjs
.eslintrc.yaml
.eslintrc.yml
.eslintrc.json
GEMINI.md git-root all AGENTS.md
hadolint.yaml git-root all .hadolint.yaml
hadolint.yaml
.config/hadolint.yaml
.hadolint/hadolint.yaml
knip.config.js git-root npm-package knip.json
knip.jsonc
.knip.json
.knip.jsonc
knip.ts
knip.js
knip.config.ts
knip.config.js
lefthook.yaml git-root all .lefthook.yml
lefthook.yaml
.config/lefthook.yml
.lefthook.yaml
.config/lefthook.yaml
lefthook.toml
.lefthook.toml
.config/lefthook.toml
lefthook.json
.lefthook.json
.config/lefthook.json
package.json project npm-package
pnpm-workspace.yaml git-root pnpm-package
prettier.config.js project npm-package .prettierrc
.prettierrc.json
.prettierrc.yml
.prettierrc.yaml
.prettierrc.json5
.prettierrc.js
prettier.config.js
.prettierrc.ts
prettier.config.ts
.prettierrc.mjs
prettier.config.mjs
.prettierrc.mts
prettier.config.mts
.prettierrc.cjs
prettier.config.cjs
.prettierrc.cts
prettier.config.cts
.prettierrc.toml
pyproject.toml project python-package
turbo.json git-root turbo-package

Field Descriptions

  • File: The filename or path that will be created or managed
  • Scope: Where the file is created:
  • git-root: Created at the repository root
  • project: Created in each project directory (for monorepos)
  • Project Types: Which project types this config applies to (empty = all projects)
  • Link Target: If present, creates a symlink to this target instead of a file
  • Delete Only: If checked (✓), only removes files without creating new ones
  • Also Deletes: Other filenames that will be removed when this config is applied

How Init Works

When you run dm init, datamitsu:

  1. Detects your project type (npm, Go, TypeScript, etc.)
  2. Filters configs by project type (configs with empty project types apply to all)
  3. For each config:
  4. If Delete Only is checked: removes the file and any files in Also Deletes
  5. If Link Target is set: creates a symlink to the target
  6. Otherwise: generates content and merges with existing files
  7. Preserves your customizations during updates