Files
Rules/.cursor/rules/machine-connectivity-bootstrap.mdc
T

89 lines
3.8 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
description: Новый или «голый» ПК — сначала SSH, Gitea, GitHub и LAN
alwaysApply: true
---
# Подключения: Gitea, GitHub, LAN
Если на компьютере **нет** рабочих SSH/HTTPS-доступов к git и LAN — **настрой их до начала задачи** (clone, push, deploy, API Gitea).
## Когда проверять
В **начале сессии** или **перед** git push, deploy, clone, работой с `$HOME/CursorRules`:
- `git remote -v`; пробный `git fetch` / `git ls-remote` по каждому нужному remote
- SSH: `git@github.com`, Gitea (`git.kalinamall.ru`, `git.papatramp.ru` / LAN IP), хосты деплоя (например `192.168.128.77`)
- наличие `~/CursorRules` (Windows: `%USERPROFILE%\CursorRules`) и `local/*.conf`
**Не начинай** push, deploy или clone «вслепую», если проверка не прошла.
## Что считается «нет подключений»
| Симптом | Значит |
|---------|--------|
| `Permission denied (publickey)` | нет SSH-ключа или записи в `~/.ssh/config` |
| `Could not resolve host` / timeout на Gitea/GitHub | нет сети/VPN или неверный HostName |
| нет `$HOME/CursorRules` | репозиторий Rules не развёрнут |
| нет ключей из `local/git-ssh-hosts.conf` в `~/.ssh/` | не запускали Setup-GitSsh |
| нет `local/papatramp-gitea.conf`, `kalinamall-gitea.conf` | API Gitea не настроен |
| deploy: нет `deploy/secrets.env` | локальный деплой по паролю не настроен |
## Что делать (по порядку)
### 1. Новый компьютер (ничего нет)
Из каталога **рабочего проекта**:
| ОС | Действие |
|----|----------|
| Windows | скопировать `install.ps1` с рабочего ПК → запустить в каталоге проекта |
| Mac / Linux | то же с `install.sh` |
Скрипт клонирует Rules в `~/CursorRules`, создаёт ключи, `~/.ssh/config`, remotes, `init-cursor`.
### 2. CursorRules уже есть, но доступы сломаны или неполные
Windows:
```powershell
& $HOME\CursorRules\scripts\Invoke-MachineBootstrap.ps1 -Root $HOME\CursorRules
& $HOME\CursorRules\scripts\Setup-GitSsh.ps1
& $HOME\CursorRules\scripts\Set-GitRemotes.ps1 -RepoPath (Get-Location)
init-cursor -Update
```
Mac / Linux:
```bash
~/CursorRules/scripts/invoke-machine-bootstrap.sh
~/CursorRules/scripts/setup-git-ssh.sh
~/CursorRules/scripts/Set-GitRemotes.sh "$(pwd)"
init-cursor --update
```
### 3. Проект с удалённым деплоем
```bash
cp deploy/secrets.env.example deploy/secrets.env
# DEPLOY_HOST, DEPLOY_PASSWORD; при входе по паролю — DEPLOY_SSH_KEY=0
```
На Windows без `sshpass`: `python scripts/deploy-remote.py` (если скрипт есть в проекте).
## Remotes (эталон)
| Remote | Куда |
|--------|------|
| `kalinamall` | git.kalinamall.ru |
| `home` | git.papatramp.ru |
| `github` | github.com/PTah |
На **сервере деплоя** `origin` должен быть **достижим из LAN** (часто `https://github.com/PTah/<repo>.git`, а не публичный HTTPS `git.papatramp.ru`).
## Агент
1. При первом `git fetch` / `push` / deploy в сессии — **проверь** remotes и SSH.
2. При ошибке доступа — **сначала bootstrap** (скрипты выше), затем повтори операцию.
3. **Не** проси «создай репо вручную», пока не пробовал API/скрипты из `gitea-home-api`.
4. `deploy/secrets.env`, `local/*.conf` — **не коммитить**.