{"id":15491,"library":"ut-tools","title":"UT Tools for Build and Release Automation","description":"ut-tools is a suite of command-line interface (CLI) scripts designed for continuous integration, continuous delivery, and general automation tasks within JavaScript projects. It provides a pre-configured set of utilities for common CI/CD workflows, including generating changelogs (`ut-changelog`), running tests (`ut-test`), checking code coverage (`ut-cover`), linting JavaScript and CSS files (`ut-lint`, `ut-lint-js`, `ut-lint-css`), and automating release processes (`ut-release`, `ut-release-lerna`). Currently at version 7.13.2, the package has shifted its primary installation model since version 7, requiring global installation rather than being added to `devDependencies` to optimize `npm install` performance. It is intended for direct use within `package.json` scripts or as standalone CLI commands, not as a library for programmatic import.","status":"active","version":"7.13.2","language":"javascript","source_language":"en","source_url":"ssh://git@github.com/softwaregroup-bg/ut-tools","tags":["javascript","build","release","ci","Continuous Integration","Integration","Continuous"],"install":[{"cmd":"npm install ut-tools","lang":"bash","label":"npm"},{"cmd":"yarn add ut-tools","lang":"bash","label":"yarn"},{"cmd":"pnpm add ut-tools","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Runtime environment requirement","package":"node","optional":false},{"reason":"Package manager requirement for installation and scripts","package":"npm","optional":false}],"imports":[{"note":"This package primarily exposes CLI commands, not library functions for programmatic import. Use directly in package.json scripts or via npx.","wrong":"import { changelog } from 'ut-tools'","symbol":"ut-changelog","correct":"ut-changelog"},{"note":"Invoke ut-lint as a shell command. It's not a JavaScript module to be imported.","wrong":"const lint = require('ut-tools/lint');","symbol":"ut-lint","correct":"ut-lint"},{"note":"Execute ut-release as a command-line utility for managing package versions and publishing.","wrong":"import { release } from 'ut-tools';","symbol":"ut-release","correct":"ut-release"}],"quickstart":{"code":"npm install -g ut-tools\n\n// Add to your project's package.json scripts\n// Example: package.json\n/*\n{\n  \"name\": \"my-project\",\n  \"version\": \"1.0.0\",\n  \"scripts\": {\n    \"lint\": \"ut-lint\",\n    \"test\": \"ut-test\",\n    \"release\": \"ut-release\"\n  }\n}\n*/\n\n// Then run from your project directory\nnpm run lint\n","lang":"javascript","description":"Demonstrates global installation and usage of ut-tools commands within package.json scripts."},"warnings":[{"fix":"Remove `ut-tools` from your `package.json` `devDependencies` and install it globally using `npm install -g ut-tools`.","message":"Since version 7, ut-tools must be installed globally (`npm install -g ut-tools`) rather than as a `devDependencies` entry. Installing it locally will not provide the expected CLI commands and may slow down `npm install` processes.","severity":"breaking","affected_versions":">=7.0.0"},{"fix":"Add the following to your VSCode settings (user or workspace): `\"eslint.options\": { \"overrideConfigFile\": \"/path/to/global/npm/node_modules/ut-tools/eslint/.eslintrc.js\" }, \"eslint.nodePath\": \"/path/to/global/npm/node_modules/ut-tools/node_modules\"`. Replace `/path/to/global/npm/node_modules` with your actual global npm modules path (e.g., `npm root -g`).","message":"Configuring VSCode ESLint to use ut-tools's predefined rules requires specific workspace or user settings. Incorrect paths will result in VSCode not applying the linting rules or reporting errors.","severity":"gotcha","affected_versions":">=7.0.0"},{"fix":"Use the provided scripts as CLI commands in your `package.json` or directly from the terminal. For example, `npm run lint` or `ut-lint`.","message":"ut-tools is designed as a collection of command-line utilities and is not intended for programmatic `import` or `require()` within JavaScript or TypeScript application code. Attempting to import symbols directly will fail.","severity":"gotcha","affected_versions":">=1.0.0"}],"env_vars":null,"search_vec":"'7':105 '7.13.2':94 'ad':112 'autom':7,29,81 'build':4,142 'changelog':49,52 'check':58 'ci':144 'ci/cd':45 'cli':19,132 'code':59 'command':16,133 'command-lin':15 'common':44 'configur':39 'continu':23,25,145,148 'cover':63 'coverag':60 'css':67,79 'current':91 'deliveri':26 'design':21 'devdepend':114 'direct':124 'file':68 'general':28 'generat':48 'global':107 'import':140 'includ':47 'instal':101,108,118 'integr':24,146,147 'intend':122 'interfac':18 'javascript':32,65,141 'js':75 'lerna':90 'librari':137 'line':17 'lint':64,71,74,78 'model':102 'npm':117 'optim':116 'packag':96 'package.json':127 'perform':119 'pre':38 'pre-configur':37 'primari':100 'process':83 'programmat':139 'project':33 'provid':35 'rather':109 'releas':6,82,86,89,143 'requir':106 'run':53 'script':20,128 'set':40 'shift':98 'sinc':103 'standalon':131 'suit':13 'task':30 'test':54,57 'tool':2,10 'use':125 'ut':1,9,51,56,62,70,73,77,85,88 'ut-changelog':50 'ut-cov':61 'ut-lint':69 'ut-lint-css':76 'ut-lint-j':72 'ut-releas':84 'ut-release-lerna':87 'ut-test':55 'ut-tool':8 'util':42 'version':93,104 'within':31,126 'workflow':46","created_at":"2026-04-21T05:53:52.708417+00:00","updated_at":"2026-04-21T05:53:52.708417+00:00","problems":[{"fix":"Ensure `ut-tools` is installed globally by running `npm install -g ut-tools`. Verify your system's PATH includes the global npm bin directory.","cause":"The `ut-tools` package was not installed globally, or the global `node_modules` bin directory is not in your system's PATH.","error":"Error: Command 'ut-lint' not found"},{"fix":"Find the correct global installation path of `ut-tools` (e.g., `npm root -g`) and update your VSCode settings with the precise path to the `.eslintrc.js` file.","cause":"The `eslint.options.overrideConfigFile` setting in VSCode uses an incorrect or unresolvable path to the `ut-tools` ESLint configuration.","error":"ESLint: Cannot read config file: '/enter the installation path here/ut-tools/eslint/.eslintrc.js'"},{"fix":"Remove `ut-tools` from your `devDependencies` in `package.json` and ensure it is installed globally (`npm install -g ut-tools`).","cause":"Prior to v7, `ut-tools` was often listed as a `devDependency`. Since v7, it is designed for global installation, and local installation adds unnecessary overhead.","error":"npm install takes a long time, even for small projects."}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":"ut-tools","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/softwaregroup-bg/ut-tools","docs":null,"changelog":null,"pypi":null,"npm":"https://www.npmjs.com/package/ut-tools","openapi_spec":null,"status_page":null,"smithery":null,"categories":["devops","testing"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-17","next_check":"2026-07-20","install_tag":null}}