code-ai-installer 1.0.1 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agents/a11y_baseline/SKILL.md +41 -0
- package/.agents/adr_log/SKILL.md +69 -0
- package/.agents/api_contract_compliance_review/SKILL.md +18 -0
- package/.agents/api_contracts/SKILL.md +42 -0
- package/.agents/architecture_compliance_review/SKILL.md +17 -0
- package/.agents/architecture_doc/SKILL.md +92 -0
- package/.agents/board/SKILL.md +43 -0
- package/.agents/cloud_infrastructure_security/SKILL.md +68 -0
- package/.agents/code_review_checklist/SKILL.md +47 -0
- package/.agents/current_state_analysis/SKILL.md +44 -0
- package/.agents/data_model/SKILL.md +40 -0
- package/.agents/dependency_supply_chain_review/SKILL.md +20 -0
- package/.agents/deployment_ci_plan/SKILL.md +51 -0
- package/.agents/design_intake/SKILL.md +71 -0
- package/.agents/design_parity_review/SKILL.md +73 -0
- package/.agents/design_systems/SKILL.md +15 -0
- package/.agents/dev_reference_snippets/SKILL.md +397 -0
- package/.agents/docker_kubernetes_architecture/SKILL.md +145 -0
- package/.agents/es2025_beast_practices/SKILL.md +15 -0
- package/.agents/gates/SKILL.md +35 -0
- package/.agents/go_beast_practices/SKILL.md +23 -0
- package/.agents/handoff/SKILL.md +52 -0
- package/.agents/k8s_manifests_conventions/SKILL.md +176 -0
- package/.agents/memory/SKILL.md +29 -0
- package/.agents/mongodb_mongoose_best_practices/SKILL.md +236 -0
- package/.agents/node_express_beast_practices/SKILL.md +30 -0
- package/.agents/observability_logging/SKILL.md +16 -0
- package/.agents/observability_plan/SKILL.md +38 -0
- package/.agents/observability_review/SKILL.md +20 -0
- package/.agents/performance_review_baseline/SKILL.md +17 -0
- package/.agents/pm_backlog/SKILL.md +32 -0
- package/.agents/pm_interview/SKILL.md +56 -0
- package/.agents/pm_prd/SKILL.md +56 -0
- package/.agents/qa_api_contract_tests/SKILL.md +16 -0
- package/.agents/qa_e2e_playwright/SKILL.md +0 -0
- package/.agents/qa_manual_run/SKILL.md +16 -0
- package/.agents/qa_security_smoke_tests/SKILL.md +14 -0
- package/.agents/qa_test_plan/SKILL.md +20 -0
- package/.agents/qa_ui_a11y_smoke/SKILL.md +12 -0
- package/.agents/react_15_3_wix_iframe/SKILL.md +20 -0
- package/.agents/react_beast_practices/SKILL.md +29 -0
- package/.agents/release_gate/SKILL.md +77 -0
- package/.agents/release_gate_checklist_template/SKILL.md +68 -0
- package/.agents/review_reference_snippets/SKILL.md +437 -0
- package/.agents/security_baseline_dev/SKILL.md +16 -0
- package/.agents/security_review/SKILL.md +55 -0
- package/.agents/security_review_baseline/SKILL.md +25 -0
- package/.agents/state_rtk_beast_practices/SKILL.md +15 -0
- package/.agents/state_zustand_beast_practices/SKILL.md +11 -0
- package/.agents/styling_css_stack/SKILL.md +12 -0
- package/.agents/system_design_checklist/SKILL.md +48 -0
- package/.agents/tanstack_beast_practices/SKILL.md +19 -0
- package/.agents/tdd_workflow/SKILL.md +34 -0
- package/.agents/testing_strategy_js/SKILL.md +30 -0
- package/.agents/tests_quality_review/SKILL.md +18 -0
- package/.agents/threat_model_baseline/SKILL.md +57 -0
- package/.agents/tooling_bun_biome/SKILL.md +17 -0
- package/.agents/typescript_beast_practices/SKILL.md +15 -0
- package/.agents/ui_a11y_smoke_review/SKILL.md +15 -0
- package/.agents/ui_inventory/SKILL.md +50 -0
- package/.agents/ux_discovery/SKILL.md +48 -0
- package/.agents/ux_spec/SKILL.md +56 -0
- package/.agents/wix_self_hosted_embedded_script/SKILL.md +88 -0
- package/AGENTS.md +120 -0
- package/README.md +6 -1
- package/agents/architect.md +242 -0
- package/agents/conductor.md +207 -0
- package/agents/product_manager.md +121 -0
- package/agents/reviewer.md +201 -0
- package/agents/senior_full_stack.md +218 -0
- package/agents/tester.md +187 -0
- package/agents/ux_ui_designer.md +145 -0
- package/dist/index.js +62 -23
- package/dist/sourceResolver.d.ts +10 -0
- package/dist/sourceResolver.js +36 -0
- package/package.json +5 -2
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: docker_kubernetes_architecture
|
|
3
|
+
description: Архитектура контейнеризации и Kubernetes: Dockerfile best practices, k8s manifests, security, scaling, rollout, observability, CI/CD.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: Docker & Kubernetes Architecture
|
|
7
|
+
|
|
8
|
+
## Цель
|
|
9
|
+
Спроектировать и задокументировать контейнеризацию и деплой в Kubernetes так, чтобы:
|
|
10
|
+
- сборки были воспроизводимыми и безопасными,
|
|
11
|
+
- окружения (dev/staging/prod) были консистентны,
|
|
12
|
+
- приложение масштабировалось и обновлялось без простоя (по выбранной стратегии),
|
|
13
|
+
- были понятные runbooks, rollback и observability.
|
|
14
|
+
|
|
15
|
+
## Когда применять
|
|
16
|
+
- Проект деплоится в Docker / Kubernetes (self-hosted, cloud k8s, on-prem).
|
|
17
|
+
- Есть микросервисы/несколько компонентов.
|
|
18
|
+
- Нужны горизонтальное масштабирование, HPA, blue-green/canary.
|
|
19
|
+
- Требуются строгие меры безопасности/комплаенса.
|
|
20
|
+
|
|
21
|
+
Если деплой будет без контейнеров (Vercel-only и т.п.) — skill не обязателен.
|
|
22
|
+
|
|
23
|
+
## Входы
|
|
24
|
+
- Architecture Doc + ADR
|
|
25
|
+
- Deployment/CI Plan
|
|
26
|
+
- Non-functional requirements (SLA, perf, security, cost)
|
|
27
|
+
- Tech stack (FE/BE/DB/queues)
|
|
28
|
+
|
|
29
|
+
## Выходы (артефакты)
|
|
30
|
+
- Containerization plan:
|
|
31
|
+
- базовые Dockerfile правила и стандарты
|
|
32
|
+
- стратегия build/run (multi-stage, non-root)
|
|
33
|
+
- Kubernetes plan:
|
|
34
|
+
- namespaces, ingress, service, deployment/statefulset
|
|
35
|
+
- config/secrets strategy
|
|
36
|
+
- health probes, resources, autoscaling
|
|
37
|
+
- rollout/rollback strategy
|
|
38
|
+
- Ops plan:
|
|
39
|
+
- logging/metrics/tracing
|
|
40
|
+
- backups/DR
|
|
41
|
+
- runbooks (deploy, rollback, incident)
|
|
42
|
+
|
|
43
|
+
## Checklist: Docker (must)
|
|
44
|
+
### Build
|
|
45
|
+
- Multi-stage build (builder → runtime)
|
|
46
|
+
- Reproducibility: lockfile + фиксированные версии
|
|
47
|
+
- Минимальный runtime image (alpine/distroless — по уместности)
|
|
48
|
+
- Cache-friendly слои (dependencies раньше исходников)
|
|
49
|
+
- SBOM/скан (если есть пайплайн)
|
|
50
|
+
|
|
51
|
+
### Runtime security
|
|
52
|
+
- Non-root user (USER), минимальные права
|
|
53
|
+
- Read-only filesystem где возможно
|
|
54
|
+
- Не копировать секреты в image
|
|
55
|
+
- Healthcheck (если применимо)
|
|
56
|
+
- Чёткое разделение build args vs runtime env
|
|
57
|
+
|
|
58
|
+
### Logging
|
|
59
|
+
- Логи в stdout/stderr (12-factor)
|
|
60
|
+
- Никаких секретов/PII
|
|
61
|
+
|
|
62
|
+
## Checklist: Kubernetes (must)
|
|
63
|
+
### Workloads
|
|
64
|
+
- Deployment для stateless сервисов
|
|
65
|
+
- StatefulSet для stateful (если нельзя вынести state в managed DB)
|
|
66
|
+
- Разделение по namespaces (dev/staging/prod)
|
|
67
|
+
- Service (ClusterIP), Ingress/Gateway для внешнего трафика
|
|
68
|
+
|
|
69
|
+
### Health & Resilience
|
|
70
|
+
- readinessProbe / livenessProbe корректны
|
|
71
|
+
- startupProbe для тяжёлого старта
|
|
72
|
+
- PodDisruptionBudget (если критично)
|
|
73
|
+
- graceful shutdown (terminationGracePeriodSeconds)
|
|
74
|
+
- retries/timeouts на клиентах
|
|
75
|
+
|
|
76
|
+
### Resources & Scaling
|
|
77
|
+
- requests/limits определены
|
|
78
|
+
- HPA по CPU/Memory и/или custom metrics (если нужно)
|
|
79
|
+
- anti-affinity/topology spread (если HA)
|
|
80
|
+
|
|
81
|
+
### Config & Secrets
|
|
82
|
+
- ConfigMap для конфигов
|
|
83
|
+
- Secrets только через k8s secrets / внешние secret managers (желательно)
|
|
84
|
+
- Rotation стратегия (особенно для DB/3rd-party keys)
|
|
85
|
+
- Не логировать секреты
|
|
86
|
+
- Разделить per-env значения
|
|
87
|
+
|
|
88
|
+
### Network & Access
|
|
89
|
+
- NetworkPolicy (если кластер поддерживает)
|
|
90
|
+
- RBAC least privilege (service accounts)
|
|
91
|
+
- Ограничить доступ к metadata endpoints (если актуально)
|
|
92
|
+
|
|
93
|
+
### Security posture
|
|
94
|
+
- Pod Security Standards / admission policies (baseline/restricted)
|
|
95
|
+
- Drop capabilities, seccompProfile, runAsNonRoot
|
|
96
|
+
- ImagePullPolicy по стратегии релиза
|
|
97
|
+
- Image scanning (в CI) по возможности
|
|
98
|
+
|
|
99
|
+
### Rollout / Rollback
|
|
100
|
+
- Стратегия: RollingUpdate / Blue-Green / Canary (зафиксировать ADR)
|
|
101
|
+
- MaxUnavailable/MaxSurge настроены
|
|
102
|
+
- Rollback plan документирован и реально исполним
|
|
103
|
+
|
|
104
|
+
## Checklist: Observability (must)
|
|
105
|
+
- Correlation id (request_id/trace_id)
|
|
106
|
+
- Metrics (latency, errors, saturation)
|
|
107
|
+
- Tracing (если предусмотрено)
|
|
108
|
+
- Alerts (ошибки/latency/деградация)
|
|
109
|
+
- Log retention (если требования)
|
|
110
|
+
|
|
111
|
+
## Checklist: Data & DR (если есть БД/данные)
|
|
112
|
+
- Backups + retention
|
|
113
|
+
- PITR (если нужно)
|
|
114
|
+
- Тест восстановления (периодически)
|
|
115
|
+
- RPO/RTO (если задано)
|
|
116
|
+
|
|
117
|
+
## ADRs (обязательно фиксировать)
|
|
118
|
+
Создать ADR если выбирается/меняется:
|
|
119
|
+
- кластер/провайдер
|
|
120
|
+
- стратегия rollout (canary/blue-green)
|
|
121
|
+
- ingress (nginx/traefik/gateway)
|
|
122
|
+
- secrets manager
|
|
123
|
+
- политики безопасности (PSS/restricted)
|
|
124
|
+
- масштабирование (HPA/metrics)
|
|
125
|
+
|
|
126
|
+
## Red flags (P0/P1)
|
|
127
|
+
🔴 P0:
|
|
128
|
+
- контейнеры запускаются root
|
|
129
|
+
- секреты попали в image/репо
|
|
130
|
+
- нет readiness/liveness на критичных сервисах
|
|
131
|
+
- нет rollback plan при прод-деплое
|
|
132
|
+
- нет ограничений ресурсов (requests/limits) и сервис критичен
|
|
133
|
+
|
|
134
|
+
🟠 P1:
|
|
135
|
+
- нет HPA при ожидаемой нагрузке
|
|
136
|
+
- нет network policy/RBAC ограничений (если требуется)
|
|
137
|
+
|
|
138
|
+
## Формат ответа
|
|
139
|
+
### Containerization Plan
|
|
140
|
+
### Kubernetes Topology
|
|
141
|
+
### Security Posture
|
|
142
|
+
### Rollout/Rollback
|
|
143
|
+
### Observability
|
|
144
|
+
### Required ADRs
|
|
145
|
+
### Risks (P0/P1/P2)
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: es2025_beast_practices
|
|
3
|
+
description: Писать современный JavaScript (ES2025) с упором на читаемость, предсказуемость, безопасную работу с async, типичные паттерны и performance-гигиену.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: ES2025 Beast Practices
|
|
7
|
+
|
|
8
|
+
## Цель
|
|
9
|
+
Современный JS без “магии”, с понятной асинхронностью и безопасными ошибками.
|
|
10
|
+
|
|
11
|
+
## Правила
|
|
12
|
+
- Предпочитать ясные конструкции, ранние возвраты, явные ошибки
|
|
13
|
+
- async/await с корректным try/catch и контекстными ошибками
|
|
14
|
+
- Не игнорировать ошибки
|
|
15
|
+
- Минимизировать побочные эффекты и глобальные состояния
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gates
|
|
3
|
+
description: Контроль гейтов процесса и Definition of Done: не пропускать этапы, проверять наличие артефактов и критериев проверки, организовывать циклы возврата (Dev↔Reviewer↔Tester).
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: Gates & DoD (контроль качества дирижёра)
|
|
7
|
+
|
|
8
|
+
## Цель
|
|
9
|
+
Не допустить “псевдоготовности”: каждый этап должен завершаться артефактом и проверкой.
|
|
10
|
+
|
|
11
|
+
## Гейты (общая логика)
|
|
12
|
+
- Нельзя двигаться дальше, если предыдущий этап не дал артефакт.
|
|
13
|
+
- Любые P0 замечания = стоп, возврат на доработку.
|
|
14
|
+
|
|
15
|
+
## Минимальные артефакты по этапам (шаблон)
|
|
16
|
+
- PM: PRD + acceptance criteria
|
|
17
|
+
- UX: UX Spec (flows/экраны/состояния/a11y/компоненты)
|
|
18
|
+
- ARCH: Architecture + ключевые решения (ADR) + план задач
|
|
19
|
+
- DEV: код + unit+integration tests + инструкции запуска
|
|
20
|
+
- REV: отчёт ревью (P0/P1/P2) + итог approve/changes
|
|
21
|
+
- TEST: тест-план + тест-отчёт + баги
|
|
22
|
+
|
|
23
|
+
## DoD (универсальная проверка дирижёра)
|
|
24
|
+
Отмечать “☑ готово” можно только если:
|
|
25
|
+
- тесты проходят (unit + integration),
|
|
26
|
+
- нет секретов в коде/логах,
|
|
27
|
+
- есть инструкции запуска/проверки,
|
|
28
|
+
- базовая безопасность соблюдена (валидация, authz, зависимости),
|
|
29
|
+
- UX/UI: реализованы состояния loading/empty/error/success по UX Spec,
|
|
30
|
+
- a11y минимум выполнен (keyboard/focus/labels/ARIA где нужно).
|
|
31
|
+
|
|
32
|
+
## Алгоритм “возврата”
|
|
33
|
+
1) Reviewer/Test нашли проблему → создать задачу `DEV-xx Fix ...`
|
|
34
|
+
2) Поставить `REV-xx`/`TEST-xx` в `⚠️` до фикса
|
|
35
|
+
3) После фикса: повторить ревью/тест, закрыть гейт
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: go_beast_practices
|
|
3
|
+
description: Go best practices: простота, ошибки как значения, интерфейсы, контекст, конкурентность, структура проекта, линтеры и тестирование (TDD).
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: Go Beast Practices
|
|
7
|
+
|
|
8
|
+
## Принципы
|
|
9
|
+
- Читаемость > “умность”
|
|
10
|
+
- Ошибки оборачивать контекстом, не игнорировать
|
|
11
|
+
- Context первым параметром (timeouts/cancel)
|
|
12
|
+
- Маленькие интерфейсы, DI вместо глобального состояния
|
|
13
|
+
- Аккуратная конкурентность: worker pools, errgroup, graceful shutdown
|
|
14
|
+
|
|
15
|
+
## Tooling
|
|
16
|
+
- gofmt/goimports
|
|
17
|
+
- go test (race, cover)
|
|
18
|
+
- golangci-lint (набор линтеров по проекту)
|
|
19
|
+
|
|
20
|
+
## Тестирование
|
|
21
|
+
- table-driven tests
|
|
22
|
+
- helper functions с t.Helper()
|
|
23
|
+
- изоляция тестов, t.Cleanup()
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: handoff
|
|
3
|
+
description: Формирование Context Pack и постановка задачи агенту: цели, ограничения, артефакты, решения, вопросы, Definition of Done. Требует стандартного формата ответа.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: Context Pack Handoff (передача задач агентам)
|
|
7
|
+
|
|
8
|
+
## Цель
|
|
9
|
+
Передавать агентам ровно тот контекст, который нужен для выполнения задачи, без потери ключевых решений.
|
|
10
|
+
|
|
11
|
+
## Когда использовать
|
|
12
|
+
Каждый раз, когда дирижёр делегирует работу любому агенту.
|
|
13
|
+
|
|
14
|
+
## Context Pack (обязательные поля)
|
|
15
|
+
- **Goal**: что нужно получить
|
|
16
|
+
- **Scope**: что входит/не входит
|
|
17
|
+
- **Constraints**: стек/деплой/сроки/интеграции/безопасность
|
|
18
|
+
- **Inputs**: ссылки на документы/файлы/вставки
|
|
19
|
+
- **Decisions**: что уже решено (и нельзя ломать без согласования)
|
|
20
|
+
- **Open Questions**: что неизвестно
|
|
21
|
+
- **Definition of Done**: критерий “готово”
|
|
22
|
+
- **Output Format**: в каком виде вернуть результат
|
|
23
|
+
|
|
24
|
+
## Алгоритм делегирования
|
|
25
|
+
1) Сформируй Context Pack (коротко, но полно).
|
|
26
|
+
2) Чётко сформулируй задачу и ожидаемый артефакт.
|
|
27
|
+
3) Задай “quality bar”: проверки, критерии, формат ответа.
|
|
28
|
+
4) Попроси вернуть результат строго по шаблону отчёта.
|
|
29
|
+
|
|
30
|
+
## Универсальный шаблон постановки задачи
|
|
31
|
+
**Context Pack**
|
|
32
|
+
- Goal:
|
|
33
|
+
- Scope:
|
|
34
|
+
- Constraints:
|
|
35
|
+
- Inputs:
|
|
36
|
+
- Decisions:
|
|
37
|
+
- Open Questions:
|
|
38
|
+
- DoD:
|
|
39
|
+
- Output Format:
|
|
40
|
+
|
|
41
|
+
**Task**
|
|
42
|
+
- ID:
|
|
43
|
+
- Что сделать:
|
|
44
|
+
- Критерии приёмки:
|
|
45
|
+
|
|
46
|
+
**Reply Format**
|
|
47
|
+
### Summary
|
|
48
|
+
### Deliverables
|
|
49
|
+
### Decisions
|
|
50
|
+
### Risks/Blockers
|
|
51
|
+
### Open Questions
|
|
52
|
+
### Next Actions (IDs)
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: k8s_manifests_conventions
|
|
3
|
+
description: Конвенции Kubernetes манифестов: структура репо, Helm/Kustomize, overlays per env, naming/labels, secrets/config, policy, validation, GitOps.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: K8s Manifests Conventions
|
|
7
|
+
|
|
8
|
+
## Цель
|
|
9
|
+
Задать единые конвенции для Kubernetes манифестов и их сопровождения, чтобы:
|
|
10
|
+
- инфраструктура была предсказуемой и повторяемой,
|
|
11
|
+
- dev/staging/prod отличались только overlays/values,
|
|
12
|
+
- было легко делать review/rollout/rollback,
|
|
13
|
+
- соблюдались security и policy.
|
|
14
|
+
|
|
15
|
+
## Когда применять
|
|
16
|
+
- Проект разворачивается в Kubernetes или планируется миграция туда.
|
|
17
|
+
- Есть несколько компонентов/сервисов или несколько окружений.
|
|
18
|
+
|
|
19
|
+
## Входы
|
|
20
|
+
- Architecture Doc + ADR
|
|
21
|
+
- Deployment/CI Plan
|
|
22
|
+
- Требования к окружениям (dev/staging/prod), домены, ingress
|
|
23
|
+
- Требования к секретам и политике безопасности
|
|
24
|
+
|
|
25
|
+
## Выходы
|
|
26
|
+
- Выбранный подход: Helm / Kustomize / raw manifests (с обоснованием)
|
|
27
|
+
- Структура каталогов в репо
|
|
28
|
+
- Naming/labels/annotations стандарты
|
|
29
|
+
- Правила для Config/Secrets
|
|
30
|
+
- Правила для Ingress/Gateway
|
|
31
|
+
- Минимальный набор policy/валидаторов
|
|
32
|
+
- GitOps/CI проверки (dry-run, lint, schema validation)
|
|
33
|
+
|
|
34
|
+
## Выбор инструмента (обязательное решение)
|
|
35
|
+
Архитектор должен выбрать один из подходов и зафиксировать ADR:
|
|
36
|
+
|
|
37
|
+
### Option A: Kustomize (часто лучший default)
|
|
38
|
+
- overlays для env (dev/staging/prod)
|
|
39
|
+
- patchesStrategicMerge / json6902 patches
|
|
40
|
+
- простое чтение diff'ов
|
|
41
|
+
|
|
42
|
+
### Option B: Helm
|
|
43
|
+
- шаблонизация, values.yaml per env
|
|
44
|
+
- удобно для комплексных чартов/модулей
|
|
45
|
+
- нужно следить за читаемостью шаблонов
|
|
46
|
+
|
|
47
|
+
### Option C: Raw manifests
|
|
48
|
+
- допустимо только для очень маленьких проектов
|
|
49
|
+
- быстро деградирует при росте env/сервисов
|
|
50
|
+
|
|
51
|
+
## Рекомендуемая структура репо (пример)
|
|
52
|
+
|
|
53
|
+
### Если Kustomize
|
|
54
|
+
```txt
|
|
55
|
+
k8s/
|
|
56
|
+
base/
|
|
57
|
+
namespace.yaml
|
|
58
|
+
deployment.yaml
|
|
59
|
+
service.yaml
|
|
60
|
+
ingress.yaml
|
|
61
|
+
hpa.yaml
|
|
62
|
+
pdb.yaml
|
|
63
|
+
configmap.yaml
|
|
64
|
+
overlays/
|
|
65
|
+
dev/
|
|
66
|
+
kustomization.yaml
|
|
67
|
+
patch-deployment.yaml
|
|
68
|
+
patch-ingress.yaml
|
|
69
|
+
staging/
|
|
70
|
+
kustomization.yaml
|
|
71
|
+
patch-deployment.yaml
|
|
72
|
+
prod/
|
|
73
|
+
kustomization.yaml
|
|
74
|
+
patch-deployment.yaml
|
|
75
|
+
patch-ingress.yaml
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### Если Helm
|
|
79
|
+
```txt
|
|
80
|
+
k8s/
|
|
81
|
+
charts/
|
|
82
|
+
app/
|
|
83
|
+
Chart.yaml
|
|
84
|
+
values.yaml
|
|
85
|
+
templates/
|
|
86
|
+
deployment.yaml
|
|
87
|
+
service.yaml
|
|
88
|
+
ingress.yaml
|
|
89
|
+
hpa.yaml
|
|
90
|
+
env/
|
|
91
|
+
dev.yaml
|
|
92
|
+
staging.yaml
|
|
93
|
+
prod.yaml
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
## Naming / Labels (обязательные конвенции)
|
|
97
|
+
Использовать Kubernetes recommended labels:
|
|
98
|
+
- app.kubernetes.io/name
|
|
99
|
+
- app.kubernetes.io/instance
|
|
100
|
+
- app.kubernetes.io/component
|
|
101
|
+
- app.kubernetes.io/part-of
|
|
102
|
+
- app.kubernetes.io/version
|
|
103
|
+
- app.kubernetes.io/managed-by
|
|
104
|
+
|
|
105
|
+
Минимум:
|
|
106
|
+
- все ресурсы должны иметь единый набор labels для селекторов, алертов и поиска.
|
|
107
|
+
|
|
108
|
+
## Secrets / Config (строго)
|
|
109
|
+
### Config
|
|
110
|
+
- ConfigMap для конфигов без секретов
|
|
111
|
+
- разделять per-env только overlays/values
|
|
112
|
+
|
|
113
|
+
### Secrets
|
|
114
|
+
- не хранить plaintext секреты в репо
|
|
115
|
+
- предпочтение: external secret manager (AWS Secrets Manager, GCP Secret Manager, Vault, Doppler и т.п.)
|
|
116
|
+
- если используете k8s Secrets:
|
|
117
|
+
- base64 не считать безопасностью
|
|
118
|
+
- ограничить доступ RBAC
|
|
119
|
+
- включить rotation план
|
|
120
|
+
|
|
121
|
+
### Запрет
|
|
122
|
+
- секреты в Docker image
|
|
123
|
+
- секреты в Helm values в plaintext в git
|
|
124
|
+
- логирование секретов
|
|
125
|
+
|
|
126
|
+
## Ingress / Gateway (обязательное)
|
|
127
|
+
- зафиксировать ingress controller (nginx/traefik/gateway api) в ADR
|
|
128
|
+
- TLS обязателен для prod
|
|
129
|
+
- rate limiting / WAF — если предусмотрено security baseline
|
|
130
|
+
- security headers — если это часть edge политики
|
|
131
|
+
|
|
132
|
+
## Probes / Resources (must)
|
|
133
|
+
- readinessProbe + livenessProbe обязательны для сервисов, которые принимают трафик
|
|
134
|
+
- requests/limits обязательны для prod
|
|
135
|
+
- terminationGracePeriodSeconds + graceful shutdown
|
|
136
|
+
- HPA если ожидается переменная нагрузка или SLA
|
|
137
|
+
|
|
138
|
+
## Policy / Security (must)
|
|
139
|
+
- Pod Security Standards (baseline/restricted) — зафиксировать уровень
|
|
140
|
+
- runAsNonRoot, seccompProfile, drop capabilities
|
|
141
|
+
- RBAC least privilege (service account per app)
|
|
142
|
+
- NetworkPolicy (если кластер поддерживает) — определить минимум
|
|
143
|
+
|
|
144
|
+
## CI / Validation (must)
|
|
145
|
+
Добавить проверки (по возможности):
|
|
146
|
+
- `kubectl apply --dry-run=server` (или эквивалент)
|
|
147
|
+
- schema validation (kubeconform/kubeval)
|
|
148
|
+
- lint (helm lint / kustomize build)
|
|
149
|
+
- policy checks (conftest/OPA, kyverno validate) — если используете policies
|
|
150
|
+
- image scanning/SBOM — если в пайплайне
|
|
151
|
+
|
|
152
|
+
## GitOps (опционально, но рекомендовано)
|
|
153
|
+
- ArgoCD / Flux, если нужно управлять env'ами как декларативным состоянием
|
|
154
|
+
- задокументировать процесс promotion dev→staging→prod
|
|
155
|
+
|
|
156
|
+
## Red Flags
|
|
157
|
+
🔴 P0:
|
|
158
|
+
- секреты в репо/values/image
|
|
159
|
+
- нет probes на критичном сервисе
|
|
160
|
+
- нет requests/limits в prod
|
|
161
|
+
- отсутствует единый labels/naming (сломает ops/monitoring)
|
|
162
|
+
- непонятно, как делать rollback
|
|
163
|
+
|
|
164
|
+
🟠 P1:
|
|
165
|
+
- env различаются “ручными правками” вместо overlays/values
|
|
166
|
+
- нет CI validation на манифесты
|
|
167
|
+
|
|
168
|
+
## Формат ответа архитектора
|
|
169
|
+
### Chosen Approach (Helm/Kustomize/Raw) + ADR reference
|
|
170
|
+
### Repo Structure
|
|
171
|
+
### Naming & Labels
|
|
172
|
+
### Secrets/Config Strategy
|
|
173
|
+
### Ingress Strategy
|
|
174
|
+
### Policy & Security Baseline
|
|
175
|
+
### CI Validation Checklist
|
|
176
|
+
### Risks (P0/P1/P2)
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: memory
|
|
3
|
+
description: Управление контекстом проекта через векторную БД/MCP: что сохранять, как извлекать, как избегать конфликтов решений и потери контекста.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: Memory / Vector DB (опционально)
|
|
7
|
+
|
|
8
|
+
## Цель
|
|
9
|
+
Не терять контекст между сессиями и итерациями: решения, контракты, требования, результаты тестов.
|
|
10
|
+
|
|
11
|
+
## Что сохранять
|
|
12
|
+
- PRD и изменения (версии/даты)
|
|
13
|
+
- UX Spec и изменения
|
|
14
|
+
- Architecture + ADR (ключевые решения)
|
|
15
|
+
- API контракты и схемы данных
|
|
16
|
+
- Стандарты DoD и гейты
|
|
17
|
+
- Итоги ревью (P0/P1/P2) и фиксы
|
|
18
|
+
- Тест-планы/отчёты и списки багов
|
|
19
|
+
|
|
20
|
+
## Извлечение (retrieval) перед делегированием
|
|
21
|
+
Перед выдачей задачи агенту:
|
|
22
|
+
- найди релевантные фрагменты по ключам: `feature`, `module`, `endpoint`, `decision`, `test`, `bug`
|
|
23
|
+
- включи в Context Pack только самое важное (5–15 пунктов максимум)
|
|
24
|
+
|
|
25
|
+
## Конфликты
|
|
26
|
+
Если новое предложение противоречит сохранённому решению:
|
|
27
|
+
- пометь: `Конфликт: ...`
|
|
28
|
+
- перечисли: старое решение, новое предложение, последствия
|
|
29
|
+
- вынеси на согласование пользователю/дирижёру
|