Интерактивна сесия за ценообразуване на оферта — труд, материали, надценка. Използва се след анализ на поръчка с eop-analyze.
Преди да започнеш, прочети задължително с Read tool:
./eopowers/offers/$ARGUMENTS/analysis.md — ако не съществува: "Първо стартирайте /eop-analyze $ARGUMENTS"./eopowers/company-profile.md — ако не съществува: "Първо стартирайте /init"./eopowers/domain.md — ако не съществува: "Стартирайте /init първо"Използвай секция "Ценообразуване" от domain.md за:
Ценообразуване на поръчка $ARGUMENTS:
- [ ] Зареждане на анализ и фирмен профил
- [ ] Преглед на раздели и позиции
- [ ] Избор на режим (бърз / детайлен)
- [ ] Пазарно проучване на материали
- [ ] Калкулация на себестойност по раздели
- [ ] Определяне на целеви процент и множител
- [ ] Обобщение и корекции
- [ ] Генериране на анализи на единични цени (ако domain.md има П1-П5)
- [ ] Запис на pricing.md и price-analyses.xlsx
Прочети анализа от ./eopowers/offers/$ARGUMENTS/analysis.md и фирмения профил. Извлечи всички раздели и позиции от анализа (или КСС ако е наличен).
Зареди методологията от pricing-guide.md за справка с дневни ставки, надценки и стратегия.
Покажи преглед на разделите:
📋 Поръчка $ARGUMENTS — [N] раздела, [M] позиции
| Раздел | Позиции | Ключови материали |
|--------|---------|-------------------|
| 1. [име] | [N] | [материали] |
| 2. [име] | [N] | [материали] |
...
Попитай: "Бърз режим (препоръчително за 20+ позиции) или детайлен режим позиция по позиция? (бърз/детайлен)"
По подразбиране: бърз.
Покажи ценовия ориентир от domain.md (секция "Ценообразуване → Ценови ориентир").
Попитай: "Какъв процент от прогнозната стойност целите? (напр. 75%)"
Предложи стойност базирана на критерия за оценка от analysis.md:
Dispatch eop-market-researcher субагент с ВСИЧКИ ключови материали от всички раздели наведнъж. Подай:
Субагентът връща таблица с пазарни цени за всеки материал.
За всеки раздел, изчисли себестойност:
Себестойност на раздел = Труд + Материали + Допълнителни
Труд: оцени часовете по количество × норматив (от pricing-guide.md)
× средна часова ставка от domain.md
Материали: от пазарното проучване × количества
Допълнителни: транспорт, механизация (наем ако е нужен)
Покажи таблица:
| Раздел | Себестойност (EUR) | % от прогнозна |
|--------|-------------------|----------------|
| 1. [име] | [X] | [Y]% |
| 2. [име] | [X] | [Y]% |
...
| ОБЩО | [X] | [Y]% |
Изчисли множител: множител = целева_сума / обща_себестойност
Приложи множителя върху себестойността на всяка позиция, за да получиш единична цена:
Единична цена = Себестойност на позиция × множител / количество
Покажи обобщение по раздели:
═══════════════════════════════════════
📊 ОБОБЩЕНИЕ НА ЦЕНООБРАЗУВАНЕТО
═══════════════════════════════════════
Обща стойност на офертата: X EUR (без ДДС)
Прогнозна стойност на поръчката: Y EUR
Разлика: Z%
Себестойност: W EUR
Печалба: P EUR (Q% марж)
Множител за единични цени: Rx върху себестойност
═══════════════════════════════════════
Провери дали domain.md има секция "Параметри за анализ на единични цени" (П1-П5).
Ако НЯМА — пропусни тази стъпка. Покажи: "ℹ️ Domain.md няма П1-П5 параметри — price-analyses.xlsx няма да бъде генериран."
Ако ИМА — генерирай ./eopowers/offers/$ARGUMENTS/price-analyses.xlsx:
python3 << 'PYTHON_SCRIPT'
from openpyxl import load_workbook, Workbook
from openpyxl.styles import Font, Alignment, Border, Side
# П1-П5 параметри от domain.md (попълни конкретните стойности)
P1 = 7.50 # средна часова ставка лв./час
P2 = 0.72 # допълнителни трудови разходи
P3 = 0.40 # допълнителни механизация разходи
P4 = 0.06 # доставно-складови разходи
P5 = 0.10 # печалба
wb = Workbook()
# За всеки раздел от pricing.md — създай отделен лист
# За всяка позиция — ред с колони:
# №, Описание, Ед. мярка, Кол., Труд (часове), Труд (лв.), Механизация, Материали, П4, П5, Ед. цена
# headers
headers = ['№', 'Описание', 'Ед. мярка', 'Кол.',
'Труд часове', f'Труд лв. (×П1×(1+П2))',
f'Механизация (×(1+П3))', 'Материали',
f'П4 ({P4*100:.0f}%)', f'П5 ({P5*100:.0f}%)', 'Ед. цена']
# За всяка позиция:
# labor_cost = hours * P1 * (1 + P2)
# mech_cost = mechanization * (1 + P3)
# subtotal = labor_cost + mech_cost + materials
# p4_cost = subtotal * P4
# p5_cost = (subtotal + p4_cost) * P5
# unit_price = (subtotal + p4_cost + p5_cost) / quantity
wb.save('./eopowers/offers/$ARGUMENTS/price-analyses.xlsx')
PYTHON_SCRIPT
Реалният скрипт трябва да:
За детайлно ценообразуване позиция по позиция, потребителят казва "детайлен".
В този режим, за ВСЯКА позиция следвай стъпките по-долу.
Покажи позицията:
📋 Позиция #N: [описание]
Минимално изискване: [стойност]
Единица мярка: [единица]
Количество: [количество]
Попитай: "Можеш ли да изпълниш тази позиция с наличните ресурси? (да/не/частично)"
Попитай последователно:
Изчисли и покажи:
Труд: [N] работници × [D] дни × [S] лв./ден = [Total] лв.
За всеки основен материал в позицията:
eop-market-researcher субагент или използвай WebSearch)Попитай:
Попитай:
Изчисли: Общо = Труд + Материали + Допълнителни
Покажи обобщение:
📊 Обобщение за Позиция #N:
Труд: [X] лв.
Материали: [Y] лв.
Допълнителни: [Z] лв.
─────────────────────────
ОБЩО: [X+Y+Z] лв.
Единична цена: [сума] лв./[единица]
Запиши позицията и премини към следващата.
След всички позиции — покажи обобщението (същото като Стъпка 4 на бърз режим) и премини към Стъпка 6 (анализи на единични цени).
Запиши файл ./eopowers/offers/$ARGUMENTS/pricing.md в следния формат:
# Ценообразуване — поръчка [offer-id]
## Обобщение
- Обща стойност на оферта: [X] EUR (без ДДС)
- Прогнозна стойност на поръчката: [Y] EUR
- Разлика: [Z]%
- Себестойност: [W] EUR
- Печалба: [P] EUR ([Q]% марж)
- Множител за единични цени: [R]x върху себестойност
- Стратегия: [описание]
- Дата: [current date]
## По раздели
### Раздел 1: [име] — [обща стойност] EUR
| # | Описание | Мярка | Кол. | Ед. цена (EUR) | Общо (EUR) |
|---|----------|-------|------|----------------|------------|
| 1 | ... | ... | ... | ... | ... |
### Раздел 2: [име] — [обща стойност] EUR
...
## Калкулация
| Компонент | EUR |
|-----------|-----|
| Раздел 1: [име] | [стойност] |
| Раздел 2: [име] | [стойност] |
...
| **Директни разходи** | **[сума]** |
| Overhead [X]% | [стойност] |
| Непредвидени [X]% | [стойност] |
| **ОБЩА СТОЙНОСТ (без ДДС)** | **[сума]** |
## Бележки
- [бележки за специфични решения, подизпълнители, наеми и др.]
За подробна методология на ценообразуване, виж pricing-guide.md.