Skip to content
Back to skills

Init Landing System

BSecurity

Развернуть систему генерации лендингов (скиллы new-landing/landing-experiment/landing-journal/landing-ads + CI + nginx + docs/adr + experiments + стартовые README/CLAUDE) в уже существующем проекте. Использовать, когда нужно поставить эту систему в другой репозиторий/проект, забутстрапить лендинг-проект с нуля или перенести наработки. Merge-aware: не затирает существующие файлы без подтверждения.

  • 10 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added June 8, 2026
content-marketingpythonbashgit

Security analysis

B75/100
  • criticalAccesses sensitive system or user directories

Pro scans all 20 files and shows the line behind each finding

Scanned June 8, 2026

npx -y skills add monthu56/landforge --skill init-landing-system --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Init Landing System?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Init Landing System
[![Security: B — Skills Directory](https://www.skillsdirectory.com/api/skills/monthu56-init-landing-system/badge)](https://www.skillsdirectory.com/skills/monthu56-init-landing-system)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: init-landing-system
description: Развернуть систему генерации лендингов (скиллы new-landing/landing-experiment/landing-journal/landing-ads + CI + nginx + docs/adr + experiments + стартовые README/CLAUDE) в уже существующем проекте. Использовать, когда нужно поставить эту систему в другой репозиторий/проект, забутстрапить лендинг-проект с нуля или перенести наработки. Merge-aware: не затирает существующие файлы без подтверждения.
---

# init-landing-system — развёртывание системы в проекте

Ставит всю систему генерации лендингов в существующий проект из снимка (`reference/system/`) +
шаблонов (`reference/templates/`), подставляя инфраструктурные значения целевого проекта.
Безопасно: существующие файлы по умолчанию **не перезаписываются**.

## Когда и где

- Запускать **в целевом проекте** (куда ставим систему), не в эталоне-источнике.
- Чтобы skill был доступен в любом проекте — установить его в user-level:
  `bash scripts/install_user.sh` (копирует skill со снимком в `~/.claude/skills/`). После этого
  `/init-landing-system` доступен везде.
- Снимок системы обновляется из эталона скриптом `scripts/sync_templates.sh` (запускать в
  эталонном репо после изменений в скиллах/CI/инфре, затем переустановить в user-level).

## Workflow

### 1. Проверки
- Целевой проект — git-репозиторий (если нет — предложи `git init`).
- Это не сам эталон-источник (init_project.py предупредит, если увидит себя в целевом).

### 2. Собрать параметры
Нужно (если не заданы — спроси через `AskUserQuestion`):
- **brand** — название проекта/бренда;
- **prod-domain** — канонический прод-домен;
- **staging-domain** — staging-домен;
- **slug** — базовый slug (из него имена контейнеров `<slug>-landing` / `new-<slug>-landing` и
  каталоги `/root/<container>`; можно переопределить `--prod-container`/`--staging-dir` и т.д.).

### 3. Предпросмотр (dry-run)
```bash
python3 .claude/skills/init-landing-system/scripts/init_project.py \
  --brand "<Brand>" --prod-domain <prod> --staging-domain <staging> --slug <slug> \
  --target <path-to-project> --dry-run
```
Покажет, что будет записано и что уже существует (конфликты).

### 4. Развернуть
Убери `--dry-run`. Существующие файлы пропускаются (перечислятся). Чтобы перезаписать
конкретные — повтори с `--force` (осторожно: затрёт правки целевого проекта).

### 5. Что получит проект
`.claude/skills/` (4 генераторных скилла), `.github/workflows/` (deploy + cleanup-preview под
домены проекта), `deploy/nginx.{prod,staging}.conf`, `docs/adr/` (README + template),
`experiments/README.md`, `.gitignore`, стартовые `README.md` и `CLAUDE.md`.

### 6. Чеклист ручного (вне кода)
init_project.py печатает его в конце:
1. Сервер: два контейнера nginx + Traefik-роуты на домены (как в эталоне: Traefik + два
   `nginx:alpine`; webroot `<DIR>/html`, конфиг `<DIR>/nginx.conf`).
2. DNS: прод- и staging-домены → сервер.
3. GitHub-secrets: `DEPLOY_HOST`, `DEPLOY_USER`, `DEPLOY_SSH_KEY`, `DEPLOY_KNOWN_HOSTS`.
4. Первый лендинг: `/new-landing`; затем реальные ID Метрики/верификаций.

### 7. Зафиксировать
Предложи в целевом проекте: `git add -A && git commit` первичной системы. Дальше проект живёт по
своему README/CLAUDE.

## Важно
- Контентные плейсхолдеры скелета (`{{TITLE}}`, `{{HERO_*}}`, `{{METRIKA_ID}}` …) **не**
  подставляются — это часть `new-landing`, заполняются при генерации лендинга. init подставляет
  только инфраструктурный whitelist (см. `reference/placeholders.md`).
- Инвариант системы переносится вместе: лендинги — статический HTML, контент в разметке, без JS
  на критпути.

Files in this skill

  • SKILL.md5.1 KB
  • reference/placeholders.md1.5 KB
  • reference/system/deploy/nginx.prod.conf862 B
  • reference/system/deploy/nginx.staging.conf1.1 KB
  • reference/system/docs-adr/template.md1 KB
  • reference/system/experiments/README.md1.4 KB
  • reference/system/github-workflows/cleanup-preview.yml1.8 KB
  • reference/system/github-workflows/deploy.yml7.3 KB
  • reference/system/gitignore158 B
  • reference/system/skills/landing-ads/SKILL.md5.5 KB
  • reference/system/skills/landing-ads/reference/ad-formats.md2.7 KB
  • reference/system/skills/landing-ads/reference/utm-scheme.md2.2 KB
  • reference/system/skills/landing-ads/scripts/build_utm.py2.6 KB
  • reference/system/skills/landing-ads/scripts/check_ads.py3.6 KB
  • reference/system/skills/landing-experiment/SKILL.md6 KB
  • reference/system/skills/landing-experiment/reference/ab-implementation.md4.4 KB
  • reference/system/skills/landing-experiment/reference/experiment-design.md2.8 KB
  • reference/system/skills/landing-experiment/scripts/check_experiment.py4.9 KB
  • reference/system/skills/landing-journal/SKILL.md3.7 KB
  • reference/system/skills/landing-journal/scripts/log_event.py4.5 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…