---
type: JS Module
title: cli-entry.mjs
resource: npm/scripts/cli-entry.mjs
docgen:
  crc: b51b5d0a
  model: omlx/gemma-4-e4b-it-OptiQ-4bit
  score: 100
  issues: judge:inaccurate:0.99
  retried: true
  judgeModel: openai-codex/gpt-5.4-mini
---

## Огляд

Цей модуль визначає, чи виконується поточний ESM-модуль як точка входу командного рядка (CLI). Він перевіряє, чи шлях, що був запущений безпосередньо через CLI, збігається з нормалізованим абсолютним шляхом модуля. Ця функціональність надається через публічний метод `isRunAsCli`. Модуль працює у безпечному режимі, перехоплюючи потенційні помилки та повертаючи порожнє значення (наприклад, `null`) замість викидання винятків. Операції не підтримують кешування.

## Поведінка

1. Викликається функція isRunAsCli, передається URL, що посилається на модуль-викликач.
2. Якщо URL-викликач не надано, функція повертає хибне значення.
3. Визначається шлях до файлу-викликача шляхом перетворення наданого URL на абсолютний шлях та нормалізації цього шляху.
4. Визначається шлях до файлу, який був запущений безпосередньо через командний рядок.
5. Шлях до запущеного файлу також нормалізується.
6. Якщо шляхи до файлу-викликача та запущеного файлу збігаються, функція повертає істинне значення, що означає, що модуль виконується як точка входу CLI.
7. Якщо виникає будь-яка помилка під час отримання шляхів, функція повертає хибне значення.

## Публічний API

isRunAsCli — визначає, чи викликається модуль як основна команда (точка входу), а не імпортується іншим кодом.

## Гарантії поведінки

- Read-only: не виконує операцій запису (ФС/БД).
- Перехоплює помилки і не пропускає винятків назовні (fail-safe).
- За певних помилок повертає порожнє значення (напр. `null`) замість винятку.
