Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
#Круги добра
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Управляйте маятником, чтобы построить самую высокую (и устойчивую) башню из падающих сверху постов. Следите за временем на каждый бросок по полоске справа: если она закончится, пост упадет мимо башни.

Башня

Аркады, Строительство, На ловкость

Играть

Топ прошлой недели

  • SpongeGod SpongeGod 1 пост
  • Uncleyogurt007 Uncleyogurt007 9 постов
  • ZaTaS ZaTaS 3 поста
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
11
hypo69
hypo69
21 день назад
Лига Сисадминов
Серия Философия PowerShell

А давайте встроим ии в powershell⁠⁠

Дисклеймер. В пикабу нет редактора кода - поэтому такое форматирование и картинки. В конце поста я дам ссылку на github. Почитайте, и если вам интересно, смотрите код на гитхабе.

Под аббревиатурой «ии» я подразумеваю модель машинного обучения. Я буду использовать gemini-2.5-pro/flash. У гугла есть интерфейс командной строки gemini-cli.

Что такое Gemini CLI?

Подробно о Gemini CLI я уже рассказывал в Gemini CLI: Знакомство и первые шаги. Но если вы ее пропустили, вот краткое введение.

Если коротко, Gemini CLI — это командная строка для взаимодействия с моделями ИИ от Google. Вы запускаете его в своем терминале, и он превращается в чат, который, в отличие от веб-версий, имеет доступ к вашей файловой системе.

Ключевые возможности:

  • Понимает код: Он может анализировать ваши скрипты, находить в них ошибки и предлагать исправления.

  • Генерирует код: Вы можете попросить его написать PowerShell-скрипт для решения вашей задачи, и он это сделает.

  • Работает с файлами: Может читать файлы, создавать новые, вносить изменения в существующие.

  • Запускает команды: Может выполнять команды оболочки, такие как git или npm.

Для наших целей самое важное то, что Gemini CLI умеет работать в неинтерактивном режиме. То есть мы можем передать ему промпт как аргумент командной строки, и он просто вернет нам ответ, не запуская свой интерактивный чат. Именно эту возможность мы и будем использовать.

Установка и настройка

Чтобы начать, нам нужно подготовить наше окружение. Это делается один раз.

Шаг 1: Установка Node.js Gemini CLI — это приложение, написанное на Node.js (популярная среда для JavaScript). Поэтому сначала нам нужно установить саму Node.js.

  1. Перейдите на официальный сайт: https://nodejs.org/

  2. Скачайте и установите LTS версию. Это самый стабильный и рекомендуемый вариант. Просто следуйте инструкциям установщика.

  3. После установки откройте новое окно PowerShell и проверьте, что все работает:

    node -v npm -v

    Вы должны увидеть версии, например, v20.12.2 и 10.5.0.

Шаг 2: Установка самого Gemini CLI Теперь, когда у нас есть npm (менеджер пакетов для Node.js), установка Gemini CLI сводится к одной команде. Выполните ее в PowerShell:

npm install -g @google/gemini-cli

Флаг -g означает "глобальная установка", что сделает команду gemini доступной из любого места в вашей системе.

Шаг 3: Аутентификация В первый раз, когда вы запустите Gemini CLI, он попросит вас войти в свой аккаунт Google. Это нужно, чтобы он мог использовать вашу бесплатную квоту.

  1. Просто введите в PowerShell команду:

    gemini

  2. Он задаст вам вопрос о входе. Выберите "Sign in with Google".

  3. В вашем браузере откроется стандартное окно входа Google. Войдите в свой аккаунт и предоставьте необходимые разрешения.

  4. После этого в консоли вы увидите приветственное сообщение от Gemini. Поздравляю, вы готовы к работе! Можете ввести /quit, чтобы выйти из его чата.

Философия PowerShell: ужасный Invoke-Expression

Прежде чем мы соединим все вместе, познакомимся с одним из самых опасных командлетов в PowerShell — Invoke-Expression, или его коротким псевдонимом iex.

Invoke-Expression берет текстовую строку и выполняет ее так, как будто это была команда, напечатанная в консоли.

Пример:

$commandString = "Get-Process -Name 'chrome'" Invoke-Expression -InputObject $commandString

Эта команда сделает то же самое, что и простой вызов Get-Process -Name 'chrome'.

Почему он опасный? Потому что выполнение строки, которую вы не контролируете (например, полученной из интернета или от ИИ), — это огромная дыра в безопасности. Если ИИ по ошибке или со злым умыслом вернет команду Remove-Item -Path C:\ -Recurse -Force, iex без раздумий ее выполнит.

Для нашей задачи — создания управляемого и контролируемого моста между запросом на естественном языке и его выполнением — он подходит идеально. Мы будем использовать его с осторожностью, полностью осознавая риски.

Соединяем всё вместе: командлет Invoke-Gemini

Напишем простую PowerShell-функцию, которая позволит нам отправлять промпты одной командой.

А давайте встроим ии в powershell Windows, Автоматизация, Системное администрирование, Cli, Gemini, Powershell, Гайд, IT, Видео, Без звука, Короткие видео, Длиннопост

Давайте зададим ему вопрос на общую тему прямо из нашей PowerShell-консоли.

Invoke-Gemini -Prompt "Расскажи о пяти последних трендах в области машинного обучения"
Пробуем магию:

👏 Поздравляю! Вы только что успешно встроили ИИ в PowerShell.

В следующей статье я расскажу, как использовать Gemini CLI для запуска скриптов и автоматизации задач.

Ссылка на github

Серия «Философия PowerShell»
Серия «gemini-cli»

Полезно? Подпишись.
Понравилось — ставь «+»
Задавай вопросы в комментариях 👇👇👇
Удачи! 🚀

Показать полностью 1 1
[моё] Windows Автоматизация Системное администрирование Cli Gemini Powershell Гайд IT Видео Без звука Короткие видео Длиннопост
4
10
hypo69
hypo69
1 месяц назад
Лига программистов
Серия gemini-cli

Gemini-cli. Часть 3. Интеграция с vs code⁠⁠

Первая часть:

Gemini CLI: Знакомство и первые шаги

Вторая часть:

Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2)

В этой части мы попросим gemini-cli написать код игры life, создать тесты и документацию.

Шаг 1: Создание системной инструкции `GEMINI.MD

В рабочей директории создайте файл GEMINI.md и вставьте в него системную инструкцию. Пример инструкции:

## 📘 Инструкция для генерации Python-кода

### 1. Общие правила

* Используй **Python 3.10+**.

* Соблюдай **четкий, читаемый и однозначный стиль** кодирования.

* **Каждая функция, метод и класс** должны иметь:

* Аннотацию типов (`type hints`)

* Полную и корректную документацию в формате `docstring` (см. раздел 3)

* Внутренние комментарии (`#`), где необходимо

---

### 2. Комментарии

* Комментарии должны быть **точными** и описывать **что делает код**, а не «что мы делаем».

* **Запрещено** использовать местоимения: `делаем`, `возвращаем`, `отправляем`, `переходим` и т.п.

* **Разрешены** только термины: `извлечение`, `выполнение`, `вызов`, `замена`, `проверка`, `отправка`, `Функция выполняет`, `Функция изменяет значение` и т.д.

#### ❌ Пример неправильного комментария:

```python

# Получаем значение параметра

✅ Пример правильного комментария:

# Функция извлекает значение параметра

3. Docstring (формат документации)

Каждая функция/метод/класс должна содержать docstring в следующем формате:

def function(param: str, param1: Optional[str | dict | str] = None) -> dict | None:

"""

Args:

param (str): Описание параметра `param`.

param1 (Optional[str | dict | str], optional): Описание параметра `param1`. По умолчанию `None`.

Returns:

dict | None: Описание возвращаемого значения. Возвращает словарь или `None`.

Raises:

SomeError: Описание ситуации, в которой возникает исключение `SomeError`.

Example:

>>> function('param', 'param1')

{'param': 'param1'}

"""

Все параметры и возвращаемые значения должны быть описаны.

Формулировки должны быть лаконичными, точными и однозначными.

Не допускается пропуск описания параметров/возвращаемых значений/исключений.

4. Аннотация типов

Все переменные, параметры и возвращаемые значения должны быть аннотированы.

Используй синтаксис Python 3.10+: list[int], dict[str, Any], str | None и т.д.

Примеры корректных аннотаций:

✅ Простые типы:

name: str = "John"

count: int = 42

flag: bool = True

✅ Коллекции и сложные типы:

from typing import Any, Optional, Callable, TypeAlias

coordinates: tuple[float, float] = (55.75, 37.61)

metadata: dict[str, Any] = {"debug": True}

UserId: TypeAlias = int

✅ Функции и методы:

def get_user_name(user_id: int) -> str:

"""Возвращает имя пользователя по его идентификатору."""

...

✅ Асинхронные функции:

async def fetch_users() -> AsyncIterator[dict[str, int | str]]:

...

✅ Обобщённые типы:

from typing import TypeVar, Generic

T = TypeVar("T")

class Container(Generic[T]):

def __init__(self, value: T) -> None:

self.value = value

def get(self) -> T:

return self.value

5. Прочее

Используй default_factory в dataclass для изменяемых значений (list, dict).

Для Optional значений указывай T | None (Python 3.10+) или Optional[T].

Для сложных структур — используй TypeAlias.

📌 Подсказка: При генерации кода всегда включай аннотацию типов, docstring, и избегай субъективных формулировок в комментариях. Цель — максимально точная, воспроизводимая и формализованная структура кода.

Для удобства создадим директорию `game`, в которой будут храниться файлы проекта, и директорию `scenarios`, где будут храниться сценарии для Gemini CLI.

файл scenarios/life-create-code.md будет содержать инструкции для создания кода игры "Жизнь",

файл scenarios/life-create-test.md — инструкции для создания тестов,

а файл scenarios/life-create-doc.md — инструкции для создания документации.

life-create-code.md:



Внутри директории `game` Создай файл life.py.

Внутри напиши реализацию "Игры Жизнь" Конвея на Python, используя объектно-ориентированный подход.

используй библиотеки: `numpy`, `pygame` (для графики).

Требования:

1. Создай класс `Game`.

2. В `__init__` класс должен принимать размеры сетки (ширину, высоту) и создавать случайное начальное поле.

3. Создай метод `step()`, который обновляет состояние игры на один шаг в соответствии с правилами:

- Живая клетка с < 2 живыми соседями умирает (одиночество).

- Живая клетка с 2 или 3 живыми соседями выживает.

- Живая клетка с > 3 живыми соседями умирает (перенаселение).

- Мёртвая клетка с ровно 3 живыми соседями становится живой (рождение).

4. Создай метод `display()` или переопредели `__str__`, чтобы выводить поле в консоль. Используй символы, например '■' для живой клетки и ' ' для мертвой.

5. Используй библиотеку `numpy` для эффективной работы с сеткой.

6. В блоке `if __name__ == '__main__':` добавь пример, который создает игру, и в цикле запускает симуляцию с небольшой задержкой между шагами.

7. Для визуализации игры используй pygame или другую библиотеку для графики, если это возможно.

life-create-test.md:

Внутри директории `game` используя контекст из файла @life.py, создай файл с тестами test_life.py. Используй фреймворк pytest. Тест должен проверять правильность эволюции простого осциллятора "Блинкер" (три клетки в ряд).
Сценарий теста:
1. Импортируй класс `Game` из `life`.
2. Создай функцию теста, например `test_blinker_oscillation`.
3. Внутри теста создай экземпляр `Game` с фиксированным размером (например, 5x5).
4. Вручную установи начальное состояние поля так, чтобы в центре была горизонтальная линия из трех живых клеток (Блинкер).
5. Вызови метод `game.step()`.
6. С помощью `assert` и `numpy.array_equal` проверь, что поле изменилось на вертикальную линию из трех клеток.
7. Вызови метод `game.step()` еще раз.
8. Проверь, что поле вернулось в исходное горизонтальное состояние.

life-create-doc.md:

Проанализируй файлы @life.py и @test_life.py внутри директории `game` и на их основе создай файл документации doc.md. Структура документации должна быть следующей: - **Заголовок:**
# Проект "Игра Жизнь" -
**Краткое описание:** Объяснение, что это за проект (реализация клеточного автомата Конвея). -
**Структура файлов:** Краткое описание назначения файлов `life.py` и `test_life.py`. - **Как запустить симуляцию:** Раздел с командой для запуска основного файла (`python life.py`). -
**Как запустить тесты:** Раздел с командой для запуска тестов (`pip install pytest numpy`, а затем `pytest`).

Структура директорий будет выглядеть следующим образом:

Gemini-cli. Часть 3. Интеграция с vs code Python, Программирование, IT, Инструкция, Искусственный интеллект, Gemini, Cli, Машинное обучение, Видео, Без звука, Короткие видео, Длиннопост

Шаг 2: Создание кода игры "Жизнь"

Запускаем gemini-cli в терминале:

Gemini-cli. Часть 3. Интеграция с vs code Python, Программирование, IT, Инструкция, Искусственный интеллект, Gemini, Cli, Машинное обучение, Видео, Без звука, Короткие видео, Длиннопост

Важно! Убедитесь, что вы находитесь в директории, где находится файл GEMINI.md.

Gemini-cli. Часть 3. Интеграция с vs code Python, Программирование, IT, Инструкция, Искусственный интеллект, Gemini, Cli, Машинное обучение, Видео, Без звука, Короткие видео, Длиннопост

GEMINI.md обнаружен

Gemini-cli. Часть 3. Интеграция с vs code Python, Программирование, IT, Инструкция, Искусственный интеллект, Gemini, Cli, Машинное обучение, Видео, Без звука, Короткие видео, Длиннопост

Даем команду на исполнение сценариев

Gemini-cli. Часть 3. Интеграция с vs code Python, Программирование, IT, Инструкция, Искусственный интеллект, Gemini, Cli, Машинное обучение, Видео, Без звука, Короткие видео, Длиннопост

Даем разрешение на создание файла

После этого gemini-cli сгенерирует файл life.py в директории game:

Gemini-cli. Часть 3. Интеграция с vs code Python, Программирование, IT, Инструкция, Искусственный интеллект, Gemini, Cli, Машинное обучение, Видео, Без звука, Короткие видео, Длиннопост

Продолжаем:


Создай виртуальную среду venv, установи необходимые зависимости и запусти испонение кода игры

Gemini-cli. Часть 3. Интеграция с vs code Python, Программирование, IT, Инструкция, Искусственный интеллект, Gemini, Cli, Машинное обучение, Видео, Без звука, Короткие видео, Длиннопост
Gemini-cli. Часть 3. Интеграция с vs code Python, Программирование, IT, Инструкция, Искусственный интеллект, Gemini, Cli, Машинное обучение, Видео, Без звука, Короткие видео, Длиннопост

Даем необходимые разрешения на запуск скриптов

Gemini-cli. Часть 3. Интеграция с vs code Python, Программирование, IT, Инструкция, Искусственный интеллект, Gemini, Cli, Машинное обучение, Видео, Без звука, Короткие видео, Длиннопост

pip

и наконец gemini-cli запускает игру:

Gemini-cli. Часть 3. Интеграция с vs code Python, Программирование, IT, Инструкция, Искусственный интеллект, Gemini, Cli, Машинное обучение, Видео, Без звука, Короткие видео, Длиннопост

Шаг 3: Создание тестов

Gemini-cli. Часть 3. Интеграция с vs code Python, Программирование, IT, Инструкция, Искусственный интеллект, Gemini, Cli, Машинное обучение, Видео, Без звука, Короткие видео, Длиннопост
Gemini-cli. Часть 3. Интеграция с vs code Python, Программирование, IT, Инструкция, Искусственный интеллект, Gemini, Cli, Машинное обучение, Видео, Без звука, Короткие видео, Длиннопост

Даем разрешение на запуск pytest

Ошибка

Gemini-cli. Часть 3. Интеграция с vs code Python, Программирование, IT, Инструкция, Искусственный интеллект, Gemini, Cli, Машинное обучение, Видео, Без звука, Короткие видео, Длиннопост

gemini-cli пытается решить проблему

Gemini-cli. Часть 3. Интеграция с vs code Python, Программирование, IT, Инструкция, Искусственный интеллект, Gemini, Cli, Машинное обучение, Видео, Без звука, Короткие видео, Длиннопост
Gemini-cli. Часть 3. Интеграция с vs code Python, Программирование, IT, Инструкция, Искусственный интеллект, Gemini, Cli, Машинное обучение, Видео, Без звука, Короткие видео, Длиннопост

Последний шаг — создание документации

Gemini-cli. Часть 3. Интеграция с vs code Python, Программирование, IT, Инструкция, Искусственный интеллект, Gemini, Cli, Машинное обучение, Видео, Без звука, Короткие видео, Длиннопост

Вуаля! Документация создана:

Gemini-cli. Часть 3. Интеграция с vs code Python, Программирование, IT, Инструкция, Искусственный интеллект, Gemini, Cli, Машинное обучение, Видео, Без звука, Короткие видео, Длиннопост

Проект на github

Полезно? Подпишись.
Понравилось — ставь «+»
Удачи! 🚀

UPD:

А давайте встроим ии в powershell

Показать полностью 17 1
Python Программирование IT Инструкция Искусственный интеллект Gemini Cli Машинное обучение Видео Без звука Короткие видео Длиннопост
1
9
hypo69
hypo69
1 месяц назад
Лига программистов
Серия gemini-cli

Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2)⁠⁠

Первая часть «Gemini CLI: Знакомство и первые шаги»

Дисклеймер. На Пикабу до сих пор не завезли редактор кода, поэтому картинки. Кому не нравятся картинки — может почитать статью на GitHub.

Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2)

В первой части мы рассмотрели основы: установку, аутентификацию и выполнение одиночных команд. Теперь перейдем на следующий уровень. В этой части мы научим Gemini CLI выполнять сложные, многошаговые сценарии, которые можно сохранять, переиспользовать и делиться с командой. Это превратит инструмент из простого ассистента в мощный движок для автоматизации.

Механизм выполнения сценариев

Ключевая идея — использовать .md файлы как "рецепты" или "сценарии" для Gemini. Внутри такого файла мы на естественном языке описываем последовательность действий, которые должен выполнить ИИ.

Для запуска сценария мы будем использовать встроенный инструмент ReadFile. Мы просто попросим Gemini прочитать файл с инструкциями и выполнить их.

Основная команда для запуска любого сценария:

> Прочитай и выполни инструкции из файла 'имя_сценария.md'

Теперь давайте рассмотрим несколько полезных сценариев.

Создайте директорию scenarios.

/path/to/gemini-cli > mkdir scenarios

в ней мы будем хранить наши сценарии.

Сценарий: "Аудит Git-репозитория"

Эта задача знакома каждому разработчику: перед началом работы нужно проверить текущее состояние проекта. Создадим сценарий, который сделает это за нас.

  1. В дирекрории scenarios Создайте файл git-health-check.md со следующим содержимым:

    Ты — опытный Git-инженер. Твоя задача — провести полный аудит текущего репозитория. Выполни следующие шаги строго по порядку и дождись моего подтверждения для каждой команды:
    1. **Проверь статус:** Покажи мне текущий статус репозитория, чтобы увидеть неотслеживаемые или измененные файлы. Предложи команду `!git status`.
    2. **Запроси обновления:** Получи последние изменения с удаленного сервера, но не применяй их. Предложи команду `!git fetch origin`.
    3. **Сравни ветки:** Покажи мне разницу между моей локальной веткой `main` и удаленной `origin/main`. Предложи команду `!git log main..origin/main --oneline`.
    4. **Найди большие файлы:** Найди 5 самых больших файлов в проекте, которые не находятся в `.git`. Предложи команду `!find . -type f -not -path "./.git/*" -printf "%s %p\n" | sort -rn | head -n 5`.
    5. **Подведи итог:** В конце кратко опиши состояние репозитория на основе полученных данных.

  2. Запустите сценарий в Gemini CLI:

    > Прочитай и выполни сценарий 'git-health-check.md'

Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2) Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост, Git

На самом деле репозитория в данном каталоге нет, Gemini предложит создать новый репозиторий. Gemini CLI будет самостоятельно исправлять ошибки во время создания репозитория, например, если вы забыли инициализировать его, то он предложит сделать это, а также текущие ошибки во время исполненения сценария

Шаг 1: Проверка статуса

Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2) Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост, Git

Ответ Gemini:

>✦ Я — опытный Git-инженер. Начинаю аудит вашего репозитория.

> Шаг 1: Проверка статуса

>Чтобы проверить текущий статус репозитория и увидеть неотслеживаемые или измененные файлы, я выполню команду `git status`.

Исполнения команды git status...

Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2) Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост, Git

Ответ Gemini:

✦ Ошибка: C:\Users\user\Documents\repos не является Git-репозиторием. Пожалуйста, укажите, в каком из подкаталогов мне следует запустить аудит. Например, public_repositories.

Просим создать новый репозиторий. Ответ Gemini:

Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2) Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост, Git

Ответ Gemini:

✦ Отлично, Git-репозиторий создан. Теперь я могу продолжить аудит.
Выполняю git status, чтобы проверить наличие неотслеживаемых файлов.

Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2) Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост, Git
Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2) Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост, Git

Ответ Gemini:

✦ В репозитории много неотслеживаемых файлов и папок. Чтобы продолжить, мне нужно добавить их в индекс. Я добавлю все файлы.

ok

Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2) Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост, Git

Во время выполнения команды произошла ошибка

error: pathspec 'commit"' did not match any file(s) known to git

Ответ Gemini:

✦ Похоже, произошла ошибка с кавычками в команде. Я попробую еще раз, используя одинарные кавычки для сообщения коммита.

Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2) Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост, Git
Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2) Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост, Git

На этот раз получилось!

Ответ Gemini:

✦ Отлично, первый коммит успешно создан. Теперь я удалю временный файл с сообщением коммита.

Теперь gemini удалит временный файл с сообщением коммита. gemini cli по очереди применяет релевантную команду (`rm`, `del`)

Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2) Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост, Git

Шаг 2: Запрос обновлений

Поскольку удаленный репозиторий не существует, gemini cli получит ошибку. Обратите внимание, что она сама ожидает ошибку, но обязана выполнить команду т.к. она записана в сценарии `git-health-check.md`

Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2) Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост, Git

Шаг 3: Сравнение веток

Здесь также будет ошибка, поскольку ветка main не существует.

Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2) Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост, Git

Шаг 4: Поиск больших файлов

Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2) Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост, Git

Команда `find` не сработала, потому что в Windows нужно использовать `dir`. Gemini сама исправит ошибку и предложит правильную команду. Далее gemini cli рассуждает о следующих действиях:

Ответ Gemini:

✦ THINK: The user wants me to find the 5 largest files in the project.
The previous command find . -type f -not -path \"./.git/*\" -printf \"%s %p\\n\" | sort -rn | head -n 5 failed because find, sort, and head are not native Windows commands. I need to use a PowerShell equivalent.
1. Get all files: Get-ChildItem -Recurse -File
2. Exclude .git directory: Where-Object { $_.FullName -notlike "*\.git\*" }
3. Sort by size (descending): Sort-Object -Property Length -Descending
4. Select the top 5: Select-Object -First 5
5. Format the output: ForEach-Object { "{0} {1}" -f $_.Length, $_.FullName }

Let's combine these into a single PowerShell command.Похоже, что find и head не доступны в вашей среде Windows. Я использую PowerShell, чтобы выполнить ту же задачу.

Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2) Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост, Git

Снова неудача

gemini cli продолжает рассуждать о том, что делать дальше:
Ответ Gemini:

✦ THINK: The user wants to find the 5 largest files.

The PowerShell command is still not executing correctly. It seems that the pipe | and special characters are being misinterpreted by the shell when passed as a single command string.

I will try to execute the command by first saving the script to a file and then executing the file with PowerShell.

1. Create a PowerShell script file (find_large_files.ps1).
2. The content of the script will be: Get-ChildItem -Recurse -File | Where-Object { $_.FullName -notlike "*\.git\*" } | Sort-Object -Property Length -Descending | Select-Object -First 5 | Format-Table Length, FullName -AutoSize
3. Execute the script using powershell -File find_large_files.ps1.
4. Delete the script file.

Похоже, что передача сложных команд в PowerShell напрямую вызывает проблемы.

Я создам временный файл сценария PowerShell, выполню его, а затем удалю.

Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2) Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост, Git

На этот раз все получилось!

Шаг 5: Итог

gemini cli подводит итог:

Состояние репозитория:
* Локальный репозиторий: Инициализирован, и все файлы в корневой папке C:\Users\user\Documents\repos были добавлены в первый коммит.
* Удаленный репозиторий: Не настроен. Нет удаленного origin, поэтому невозможно получить обновления или сравнить ветки.
* Большие файлы: Обнаружено несколько очень больших файлов, в основном в подкаталогах venv и public_repositories. Самые большие из них — библиотеки .lib и архивы .zip. Рекомендуется добавить пути, содержащие большие бинарные файлы (например, venv, *.zip), в файл .gitignore, чтобы избежать их попадания в репозиторий. Аудит завершен.

Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2) Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост, Git

Сценарий: "Очистка Docker-окружения"

Docker со временем накапливает множество ненужных образов, контейнеров и сетей. Этот сценарий поможет безопасно всё почистить.

  1. Создайте файл docker-cleanup.md:

    Ты — DevOps-инженер, ответственный за чистоту системы. Твоя задача — безопасно очистить Docker-окружение. Действуй по шагам:

    1. **Покажи запущенные контейнеры:** Сначала выведи список всех активных контейнеров, чтобы я мог убедиться, что не остановлю что-то важное. Предложи `!docker ps`.

    2. **Останови все контейнеры:** После моего одобрения предложи команду для остановки ВСЕХ запущенных контейнеров. Команда: `!docker stop $(docker ps -q)`.

    3. **Глобальная очистка:** Теперь выполни полную очистку системы от "висячих" (dangling) образов, остановленных контейнеров, неиспользуемых сетей и кэша сборки. Предложи самую безопасную и эффективную команду `!docker system prune -af`.

    4. **Отчет:** После выполнения сообщи, сколько места было освобождено, основываясь на выводе последней команды.

  2. Запустите сценарий в Gemini CLI:

    > Прочитай и выполни сценарий очистки Docker из файла 'docker-cleanup.md'

Результат: Gemini проведет вас через безопасный процесс очистки, запрашивая подтверждение на каждом критическом шаге.


Сценарий: "Запуск системных приложений"

Как и было Gemini отлично справляется с запуском приложений. Давайте формализуем это в виде простого сценария для Windows.

  1. Создайте файл open-windows-tools.md:

    Ты — системный администратор Windows.

    Твоя задача — открывать системные утилиты по запросу.

    - Если я прошу "планировщик задач", предложи запустить `!taskschd.msc`.

    - Если я прошу "редактор реестра", предупреди об опасности и предложи запустить `!regedit`.

    - Если я прошу "монитор ресурсов", предложи запустить `!resmon`.

    - Если я прошу "диспетчер задач", предложи запустить `!taskmgr`.

    - Если я прошу "командная строка", предложи запустить `!cmd`.

    - Если я прошу "проводник", предложи запустить `!explorer`.

    Аналогично для других утилит.

  2. Запустите сценарий и дайте команду:

    > Используй инструкции из 'open-windows-tools.md'. Открой планировщик задач.

Результат: Gemini поймет контекст из файла и ваш запрос, после чего предложит выполнить нужную команду.

Ответ Gemini:

Хорошо, открываю Планировщик задач. Выполнить `!taskschd.msc`? (y/n)

После подтверждения на вашем экране откроется стандартная утилита Windows.


Первая часть «Gemini CLI: Знакомство и первые шаги»

В третьей части я покажу как интегрировать gemini cli в среду разработки vs code


Полезно? Подпишись!

Удачи! 🚀

UPD:

Третья часть:

Gemini-cli. Часть 3. Интеграция с vs code

А давайте встроим ии в powershell

Показать полностью 16
[моё] Программирование Инструкция Gemini Cli Искусственный интеллект IT Длиннопост Git
0
13
hypo69
hypo69
1 месяц назад
Лига программистов
Серия gemini-cli

Gemini CLI: Знакомство и первые шаги⁠⁠

Дисклеймер. На пикабу все еще не завезли редактор кода, поэтому картинки. Кто не любит картинки может почитать статью на github

Gemini CLI — это инструмент, который работает прямо в вашем терминале, понимает вашу кодовую базу и помогает исправлять ошибки с помощью запросов на естественном языке. Это ответ Google на Claude Code от Anthropic. Вы можете использовать Gemini 2.5 Pro (при достижении лимита инструмент переключится на Gemini 2.5 Flash) и его контекстное окно в 1 миллион токенов для выполнения до 60 запросов в минуту и 1000 запросов в день, и все это бесплатно.

Содержание

  • Понимание и навигация по большим кодовым базам

  • Обнаружение и исправление ошибок

  • Написание и тестирование кода

  • Инструменты Gemini CLI

  • Интеграция Google CLI с MCP

Ключевые возможности Gemini CLI:

  • Редактирование и рефакторинг: Автоматически улучшает и упрощает ваш код под руководством ИИ.

  • Обнаружение и исправление ошибок: Находит баги и предлагает исправления.

  • Понимание кода: Gemini CLI может обобщать архитектуру, объяснять роли модулей или строить карты потоков выполнения.

  • Генерация тестов: Автоматически создает тестовые задания для pytest

  • Поддержка документации: Вы можете создавать структурированные markdown-документы, списки изменений (changelogs) и ответы на GitHub issues прямо в терминале.

  • Исполнение команд: Gemini CLI может выполнять команды оболочки, такие как git, npm, pip и другие, что позволяет вам управлять проектами без выхода из CLI.


Шаг 1: Предварительные требования

Для начала установите Node.js (версия 18 или выше). Вы можете скачать установщик по вашему выбору или выполнить следующие bash-команды в вашем терминале:

Скачивание и установка nvm (Node Version Manager):
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install... | bash

Инициализация nvm в текущей сессии терминала
. "$HOME/.nvm/nvm.sh"

Скачивание и установка Node.js (например, версии 22):
nvm install 22
Проверка версии Node.js:
node -v # Должно вывести "v22.17.0" или похожее
Проверка версии npm:
npm -v # Должно вывести "10.9.2" или похожее

Шаг 2: Настройка Gemini CLI

Шаг 2.1: Установка Gemini CLI

Когда Node.js и npm установлены и проверены, установите Gemini CLI, выполнив следующую команду в вашем терминале:
npx https://github.com/google-gemini/gemini-cli

Или используйте npm для глобальной установки:
npm install -g @google/gemini-cli gemini

После установки введите gemini в терминале, чтобы получить доступ к инструменту.

Шаг 2.2: Аутентификация

Вы можете использовать ваш личный аккаунт Google для аутентификации.

Gemini CLI: Знакомство и первые шаги Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост

Это предоставит вам до 60 запросов в минуту и 1000 запросов в день при использовании Gemini. В этом руководстве я использовал Вход через Google, но вы также можете использовать API-ключ (установленный как переменная окружения или в файле .env) или аутентификацию через Vertex AI.

Чтобы сгенерировать новый API-ключ, войдите в AI Studio с вашим аккаунтом Google и нажмите "Создать API-ключ".

Установка ключа как переменной окружения
export GEMINI_API_KEY="Your_API_Key"
или создайте файл .env
GEMINI_API_KEY="Your_API_Key"

Вы можете использовать команду /auth в текстовом поле для переключения метода аутентификации по мере необходимости.


Шаг 3: Настройка проекта в Gemini CLI

Введите в терминале команду gemini

Gemini CLI: Знакомство и первые шаги Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост

Когда CLI запущен, мы можем начать взаимодействовать с Gemini из терминала. Есть два способа работы с проектом.

1. Начать новый проект

Чтобы начать проект с нуля, выполните следующие команды:

cd new-project/
gemini

Внутри CLI используйте промпт для решения интересующей вас проблемы, например:

Напиши код кодировщика для трансформера с нуля.

Дайте разрешение на запись файлов:

Gemini CLI: Знакомство и первые шаги Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост

2. Работать с существующим проектом

Если у вас уже есть кодовая база, вы можете работать с ней, выполнив следующие команды:

git clone https://github.com/username/project.git
gemini

Внутри CLI используйте промпт, например:

Предоставь мне сводку всех изменений, внесенных в кодовую базу за последний месяц.


Шаг 4: Эксперименты с Gemini CLI

В качестве примера я буду использовать проект Планировщик 🌍🛫 путешествий на базе ADK. С помощью Gemini CLI я покажу как:

  1. исследовать кодовую базу

  2. обнаружить ошибку или проблему на GitHub или в файле

  3. провести рефакторинг кода и сгенерировать юнит-тесты

  4. создать markdown-отчет о внесенных изменениях

  5. визуализировать кодовую базу, сгенерировав блок-схему

Исследование и понимание кодовой базы

Начнем с того, что попросим Gemini исследовать и объяснить кодовую базу.

Промпт:

Исследуй текущий каталог и опиши архитектуру проекта.

Gemini CLI вернет структурированное резюме, объясняющее архитектуру:

  • Пользовательский интерфейс: Приложение на Streamlit (travel_ui.py) предоставляет интерфейс для взаимодействия.

  • Оркестрация: host_agent действует как центральный координатор.

  • Специализированные агенты: flight_agent, stay_agent, activities_agent для поиска авиабилетов, отелей и развлечений.

  • Коммуникация: Агенты общаются друг с другом через RESTful API на FastAPI.

  • Общие компоненты: shared/schemas.py определяет общие структуры данных.

Это поможет сориентироваться, не читая каждый файл вручную.

Анализ и исправление проблемы на GitHub

Исследуем некоторые открытые проблемы из репозитория GitHub.

Промпт:

Вот проблема на GitHub: [@Search https://github.com/AashiDutt/Google-Agent-Development-Kit-De...]. Проанализируй кодовую базу и предложи 3-шаговый план исправления. Какие файлы/функции следует изменить?

Gemini CLI исследовал проблему:

  • Используя функцию @search, он получил данные с GitHub.

  • Определил основную причину как ошибку сериализации JSON (в данном случае, асинхронная функция create_session() не была вызвана с await).

  • Предложил изменения и обработку ответа в нескольких файлах.

Далее CLI ожидает ввода от пользователя для оценки изменений. Если пользователь согласен, он внесет предложенные изменения.

Внедрение и тестирование исправления

Теперь внедрим и протестируем предложенные Gemini исправления.

Промпт:


Напиши юнит-тест для этого изменения в pytest в файле test_shared.py.

Gemini CLI:

  • Вставил json.dumps() перед отправкой полезной нагрузки задачи.

  • Создал test_agents.py для добавления юнит-тестов.

  • Добавил новый тестовый случай для проверки схемы и передачи вложенных сообщений агентов.

Генерация документации

Теперь, когда исправления внесены, подведем итоги изменений и запишем их в Markdown в файле .txt.

Промпт:

Напиши markdown-сводку об ошибке, исправлении и тестовом покрытии. Отформатируй это как запись в журнале изменений под версией "v0.2.0".

Затем, чтобы сохранить сводку в документ, я использовал следующий промпт:

Промпт:

Сохрани эту сводку в файл .txt и назови его summary.txt

Gemini CLI использует инструмент WriteFile для сохранения файла summary.txt в каталоге проекта.

Доступные инструменты Gemini CLI

Вызов команды /tools в Gemini CLI, покажет список доступных инструментов, которые можно использовать для выполнения различных задач, таких как редактирование кода, генерация тестов, создание документации и многое другое.

Gemini CLI: Знакомство и первые шаги Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост

ReadFolder (ls) Перечисляет файлы и папки в директории — аналог команды ls в командной строке.

ReadFile (read-file) Читает полное содержимое одного файла, что полезно для создания сводок или анализа.

ReadManyFiles (read-many-files) Читает несколько файлов одновременно, обычно по шаблону (например, все файлы .js).

FindFiles (glob) Ищет файлы по шаблону (например, найти все файлы config.json в вашем проекте).

SearchText (grep) Ищет текст внутри файлов, например, для нахождения всех комментариев TODO.

Edit (edit) Применяет изменения в коде с помощью diff. Gemini показывает предварительный просмотр правок и запрашивает подтверждение перед их применением.

WriteFile (write-file) Создает новые файлы (например, README.md) с содержимым, предоставленным пользователем.

Shell (shell) Выполняет команды непосредственно в терминале, если вы добавляете перед ними префикс ! (например, !npm test).

WebFetch (web-fetch) Загружает контент из веба (HTML или JSON), позволяя Gemini анализировать внешние данные.

GoogleSearch (web-search) Выполняет поиск в Google, чтобы основывать ответы на реальной информации (например, для поиска объяснения ошибки).

Save Memory (memoryTool) Сохраняет факты или предпочтения во время сессии (например, «я предпочитаю async/await»), чтобы улучшить последовательность и согласованность ответов.

Расширенные возможности

Вы можете добавлять специальные инструкции для ИИ для конкретного проекта, создав файл GEMINI.md в корневом каталоге вашего проекта. Внутри этого файла вы можете определять правила проекта, стили кода и инструменты, которые должен использовать агент. Это гарантирует, что сгенерированный код соответствует стандартам вашего проекта.

Пример системной инструкции

Интеграция Google CLI с MCP

Для большинства повседневных задач будет достаточно встроенных инструментов. Но что, если вы хотите, чтобы Gemini CLI делал что-то узкоспециализированное, например, взаимодействовал с определенными API или использовал специализированную модель (скажем, генератор изображений или инструмент для анализа безопасности)? Именно здесь на помощь приходит MCP (протокол модельного контекста).

По сути, MCP — это открытый стандарт, который позволяет разработчикам добавлять в ИИ новые инструменты и возможности путем запуска сервера, с которым может взаимодействовать CLI. В Gemini CLI вы можете настроить «MCP-серверы» в файле настроек JSON, и CLI будет рассматривать их как дополнительные инструменты, которые он может использовать.

Как настроить MCP-сервер в Google CLI

В качестве примера я покажу вам, как настроить MCP-сервер для GitHub в Gemini CLI.

Внутри папки вашего проекта создайте папку с помощью команды:

mkdir -p .gemini && touch .gemini/settings.json

Заполните файл этим кодом:

Gemini CLI: Знакомство и первые шаги Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост

инструкция как получить токен

После этого введите /quit в Gemini CLI, чтобы выйти, а затем снова откройте его. Вы увидите, что MCP-сервер GitHub запущен и готов к использованию.

Gemini CLI: Знакомство и первые шаги Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост


Введите команду /mcp, и вы увидите список инструментов GitHub.

Gemini CLI: Знакомство и первые шаги Программирование, Инструкция, Gemini, Cli, Искусственный интеллект, IT, Длиннопост

Удачи!
Полезно? Подпишись!

UPD:

Вторая часть: Gemini CLI: Продвинутые техники и автоматизация сценариев (Часть 2)

Третья часть: Gemini-cli. Часть 3. Интеграция с vs code

А давайте встроим ии в powershell

Показать полностью 7
[моё] Программирование Инструкция Gemini Cli Искусственный интеллект IT Длиннопост
0
111
bayselonarrend
bayselonarrend
1 год назад
1C:Предприятие 8

Интеграция 1С и всех всех всех⁠⁠

Привет! Хочу поделиться своим проектом для 1С, OneScript и CLI, над которым работаю уже около полугода.

Интеграция 1С и всех всех всех Программа, Программирование, 1С, 1с:предприятие 8, Cli, Софт, Open Source, Github, Linux, Windows, Гифка, Длиннопост

Альпака Виталий смотрит как-то дерзко с вызовом и в то же время весело и с задором


Это, на самом деле, не первый мой рассказ о нем - я достаточно часто пишу на Инфостарт, но трафика ведь много не бывает, правда? Тем более, что данный проект может оказаться полезным любому 1С-нику (и, как ни странно, не только), и будет очень здорово, если о нем узнает еще больше людей

Проект называется "Открытый пакет интеграций", он же "ОПИ", он же "OpenIntegrations" в английской локализации по названию репозитория. Проект бесплатный и open-source - найти его можно на GitHub (ссылка, еще раз, будет в конце), и в сути своей он представляет из себя расширение, общие модули которого позволяют легко и просто работать с такими онлайн сервисами как: Telegram, VK, Viber, Notion, Airtable, Yandex.Disk, Dropbox, Slack, сервисами Google Drive, Sheets, Calendar и совсем немного с Twitter

Все реализованные методы представляют из себя законченные действия, вроде ОтправитьСообщение(), СоздатьПост() или ЗагрузитьФайл(), что позволяет не углубляться в работу API, а просто выполнять конкретные операции, необходимые в данный момент

Но это еще не все. Все же знают про OneScript? Это такая открытая реализация стековой машины, которая позволяет выполнять код 1С независимо от самой платформы. С его помощью можно писать скрипты и даже настоящие программы - считай полноценный ЯП общего назначения, только со знакомым синтаксисом 1С. Так вот ОПИ есть и на OneScript! Причем не только как библиотека, но и как CLI приложение

CLI приложение (приложение для командной строки Windows и Linux терминала), на самом деле, моя любимая часть проекта - чувствуется в отвязке от вендера какая-то легкость и творческость :) В целом, это приложение реализует все те же методы, что и расширение для 1С, только отдельно и на любой машине, без необходимости "ставить" для этого платформу.

Вот как это выглядит:

Интеграция 1С и всех всех всех Программа, Программирование, 1С, 1с:предприятие 8, Cli, Софт, Open Source, Github, Linux, Windows, Гифка, Длиннопост

OInt CLI - версия Открытого пакета интеграций для командной строки. На данной гифке сначала вызывается справка, потом создается json клавиатуры для Telegram, а далее эта клавиатура, вместе с текстом, отправляется мне в личку ТГ через бота

Также у проекта есть большая и подробная документация на opeintegrations.dev, где можно найти описание всех функций, примеры кода и инструкции по началу работы с каждым конкретным API. Сам же ОПИ распространяется на двух языках: русском и английском, так что даже пользователи англоязычных конфигураций на этот раз не в пролете (документация и CLI версия тоже переведены)

Интеграция 1С и всех всех всех Программа, Программирование, 1С, 1с:предприятие 8, Cli, Софт, Open Source, Github, Linux, Windows, Гифка, Длиннопост

Одна из страниц документации

Вот такой вот проект. Если вы работаете с 1С или даже просто ищите консольную утилиту для работы с любимыми онлайн-сервисами - буду очень рад, если загляните в мой репозиторий!

Его URL вот: https://github.com/Bayselonarrend/OpenIntegrations

Спасибо за внимание!

UPD:

Вы можете поддержать проект, если поставите ему звездочку на Github: так больше людей узнает о его существовании. Заранее спасибо!

Показать полностью 2
[моё] Программа Программирование 1С 1с:предприятие 8 Cli Софт Open Source Github Linux Windows Гифка Длиннопост
24
28
Ethosa
Ethosa
2 года назад
Программирование на python

HapDoc - утилита для генерации документации⁠⁠

Приветствую.
Хочу поделиться с вами проектом и услышать ваше мнение о нем. Может быть чего-то не хватает? Может быть вы видите его как-то иначе? А может быть вы хотели бы присоединиться к разработке вместе со мной 🙂
Я разрабатываю утилиту для автоматической генерации документации под названием HapDoc. На данном этапе разработке возможно сгенерировать документацию для 3-х типов проектов:

  • Python

  • FastAPI

  • JavaScript

Основными командами являются:

  • gen - Генерация Markdown файлов документации.

  • build - Генерация Markdown файлов документации с последующей сборкой в static HTML.

  • serve - Запускает сервер с помощью FastAPI и uvicorn, для self-host документации.

  • tmpl-new - Создает новый шаблон для документации

  • tmpl-list - Возвращает список имен сохраненных шаблонов

В будущем я хочу добавить включение и отключение различных типов файлов для генерации, например при генерации Python документации будет возможность включить также все .js файлы

[моё] Разработка IT Python Документы Cli Текст
14
69
DELETED
3 года назад
GNU/Linux

Код Доступа Termux⁠⁠

Код Доступа Termux Termux, Android, Open Source, Cli, Гифка, Длиннопост

Статья посвящается любителям CLI в знак солидарности лучшего терминала на OS Android, который испытывает «кошмарную» монополию Google.


В данной работе вербализация пойдет о нижеизложенном со всеми остановками:

* управлять серверами через ssh;

* скачивать ролики/отрывки с YouTube;

* нарезать видео, создавать gif;

* воспроизводить музыку/радио прямо в CLI;

* нарезать mp3-бигфайлы (аналогов приложений на Android попросту нет);

* редактировать документы;

* проверять орфографию: как txt-документов, так и различных статей по url, например, проверка орфографии статей на Pikabu;

* генерировать словари различной сложности;

* создавать блок-схемы; графики и даже 3D-визуализацию;

* тестировать интернет соединение/интерфейс (требуется частично Root);

* снифить/сканировать сети (требуется частично Root);

* запускать и управлять TOR-сетью;

* управлять приложениями и процессами в ОС Android (требуется Root);

* защищать любые данные от случайного редактирования/уничтожения;

* автоматически бэкапить/шифровать по ночам любые данные в своё облако;

* проводить аудит безопасности (об опасности сердить скрипт-кидди с их любимыми: «снифть, парсить, брутить, дампить, сканить, фишить»);

* работать с электропочтой;

* изучать UNIX/shell;

* программировать на Android (на выбор пользователя. В Termux портированы несколько интерпретируемых и компилируемых языков программирования);

* запускать python/php/npm скрипты;

* работать с криптографией; стеганографией и цифровыми подписями;

* парсить данные;

* и даже запускать GNU-gui-софт из CLI.

Код Доступа Termux Termux, Android, Open Source, Cli, Гифка, Длиннопост

Материал подготовил разработчик OSINT-инструмента Snoop Project.

Показать полностью 1
[моё] Termux Android Open Source Cli Гифка Длиннопост
6
romanzhivo
5 лет назад

Polymer: краткие команды для polymer-cli⁠⁠

Всем привет!


Для тех, кто пишет на фреймворке Polymer


В очередной раз набирая команду polymer analyze > analysis.json для генерации документации компонента я решил, что не располагаю таким большим запасом свободного времени, и было бы замечательно сократить её до нескольких букв. К тому же, писать polymer lint или polymer serve мне тоже казалось долгим. Не найдя подходящего решения, написал небольшой CLI - обёртку над командами polymer-cli. Конечно, есть же история команд и можно переключаться в одном терминале стрелочками вверх-вниз по списку команд, или использовать подсказки bash, но это всё равно дольше, чем ввести po doc или po s. Буду рад отзывам и доработкам.


Пакет npm

Репозиторий

[моё] Программирование Javascript Cli Оптимизация Текст Nodejs Npm
18
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии