Інтелектуальний шар — 4 опори

Як Arc OS валідує, навчається, фокусується та вдосконалюється сам.


Огляд

Інтелектуальний шар розташований між повідомленнями користувача та відповідями Claude. Він працює у чотири етапи:

         INPUT                    PROCESSING                 OUTPUT
    ┌──────────────┐        ┌──────────────────┐       ┌─────────────────┐
    │ User Message  │───────►│  Context Router   │       │ Claude Response  │
    │               │        │  (skill scoring)  │       │  + eval warnings │
    │ Fix It / 👎   │        │                  │       │                 │
    │ (feedback)    │        │  Learnings       │       │ Quality metrics │
    │               │        │  (correction     │       │  logged         │
    └──────────────┘        │   injection)     │       └────────┬────────┘
                            │                  │                │
                            │  buildGsdPrompt()│        ┌───────┴────────┐
                            └────────┬─────────┘        │ Nightly Loop   │
                                     │                  │ (improvement   │
                                     ▼                  │  proposals)    │
                              Claude CLI                └────────────────┘

Опора 1: Binary Eval Engine

Що це: Декларативні правила, які перевіряють кожну відповідь перед доставкою.

Навіщо: Вивід AI повинен мати quality gates — як unit-тести для коду.

Як працює:

Кожен skill може мати файл .evals.json із правилами:

{
  "rules": [
    { "id": "gm-001", "type": "string_not_contains", "value": "--force", "severity": "warning" },
    { "id": "gm-002", "type": "max_length", "value": 4000, "severity": "info" }
  ]
}

Після того як Claude згенерував відповідь, eval engine виконує всі застосовні правила:

[Claude's response about git operations]
---
Eval: ⚠️ No force push | ℹ️ Response under 4000 chars

Типи правил

Тип Що перевіряє
string_contains Відповідь має містити певний текст
string_not_contains Відповідь НЕ повинна містити текст
regex_match Відповідь має відповідати regex-патерну
regex_not_match Відповідь НЕ повинна відповідати regex
max_length Відповідь має бути <= N символів
min_length Відповідь має бути >= N символів

Ключові дизайн-рішення

Дизайн-референс: Anthropic Skill Creator — структуровані evals із бінарними assertions.


Опора 2: Context Router

Що це: Інтелектуальний відбір skills, який інжектить у кожен prompt лише релевантні.

Навіщо: 25 skills, завантажених одночасно = розпорошення контексту. Модель намагається застосувати поради з deployment до code reviews.

Як працює:

Перед побудовою prompt роутер оцінює кожен зареєстрований skill відносно повідомлення користувача:

Score = (trigger matches x 2) + (keyword matches x 1)
Sort by score descending → take top 5

Приклад:

User: "Review this code for XSS vulnerabilities"

Scoring:
  code-review:     trigger "review" (2) + keyword "XSS" (1) = 3
  code-review-protocol: trigger "code review" (2)            = 2
  deployment-flow: no match                                  = 0
  git-manager:     no match                                  = 0

Injected into prompt:
  SKILLS_HINT (focus on these):
  - code-review: Security audit and code quality review...
  - code-review-protocol: Structured code review with OWASP...

Чому advisory, а не filtering

Роутер пропонує skills, але не блокує інші. Claude все одно має повний доступ.

Підхід Ризик
Жорсткий filtering (--allowedTools) Помилкова класифікація ламає сесію
Symlink-мутації Зміни файлової системи на робочому процесі
Advisory hints Безпечно: неправильна підказка = Claude її ігнорує

Triggers vs Keywords

Triggers (2 бали): Явні сигнали виклику. Користувач безпосередньо запитує цю можливість.

Keywords (1 бал): Ширший семантичний контекст. Натякає на релевантність, не будучи командою.

Дизайн-референс: Context priming — фокусована увага без жорсткого filtering.


Опора 3: Reflect Loop

Що це: Автоматичне фіксування корекцій як persistent rules.

Навіщо: Корекції AI повинні переживати рестарти. Одна корекція = постійне покращення.

Як працює:

CEO presses 🛠️ Fix It
    │
    ├── addLearning(source: "fixit", rule: "Fix requested for: <last response>")
    ├── projectLearnings reloaded from disk
    └── Fix prompt sent to Claude for immediate correction

CEO presses 👎
    │
    ├── addLearning(source: "negative", rule: "Negative feedback on: <response>")
    ├── qualityTracker.logFeedback(positive: false)
    └── projectLearnings reloaded from disk

Правила зберігаються у learnings.md:

# Learnings

## Rules

- [2026-04-03T14:22:00Z] [fixit] Always use t-call for translations in Odoo QWeb
- [2026-04-03T15:10:00Z] [negative] Avoid sudo in deployment scripts

При кожному наступному повідомленні накопичені learnings інжектяться:

LEARNINGS (past corrections — follow these rules):
- Avoid sudo in deployment scripts
- Always use t-call for translations in Odoo QWeb

Ключові властивості

Дизайн-референс: Claude Reflect System — корекції стають постійними правилами, що запобігають регресії.


Опора 4: Karpathy Loop

Що це: Нічний автоматизований аналіз метрик якості з пропозиціями покращень, що надсилаються CEO.

Навіщо: Люди забувають переглядати продуктивність. Система має сама знаходити свої слабкі місця.

Як працює:

Щодня о 03:00 UTC запускається scripts/nightly-improve.ts:

  1. Read registry — перебирає всі child bots із bot_registry.json
  2. Read metrics — завантажує quality-metrics.json для кожного child
  3. Find underperformers — фільтрує skills, де:
    • applied_count >= 3 (мінімальний розмір вибірки, щоб уникнути шуму)
    • І АБО success_rate < 80%, АБО feedback_negative > feedback_positive
  4. Read learnings — витягує пов'язані патерни корекцій
  5. Generate proposals — на основі шаблонів (детерміновано, без AI)
  6. Send to CEO — підсумковий звіт + індивідуальні картки пропозицій у Telegram

Потік схвалення CEO

Telegram: Proposal Card
┌──────────────────────────────────────┐
│ Improvement Proposal                  │
│                                       │
│ Child: citadel-v2                     │
│ Skill: code-review                    │
│ Reason: low success rate (72%)        │
│ Feedback: 👍 4 / 👎 6                │
│                                       │
│ Related learnings:                    │
│   • Always use t-call for i18n        │
│                                       │
│ [✅ Approve]  [❌ Reject]             │
└──────────────────────────────────────┘

Ключові дизайн-рішення

Дизайн-референс: Karpathy AutoResearch Loop — modify → verify → keep/discard → repeat. З критичним доповненням у вигляді людського схвалення.


Як 4 опори працюють разом

Day 1:
  CEO sends message → Context Router suggests relevant skills
  Claude responds → Evals check output → Warning: "No force push"
  CEO sees warning, presses Fix It → Learning saved to learnings.md

Day 2:
  CEO sends similar message → Learnings injected: "Don't use --force"
  Claude avoids the mistake → No eval warnings → thumbs-up
  Quality metrics improve for that skill

Day 30:
  Nightly loop detects git-manager skill has 95% success rate
  No proposal needed — skill is healthy

Day 30 (different skill):
  Nightly loop detects code-review at 68% success
  Sends proposal to CEO → CEO approves → skill backed up
  CEO manually improves skill.md
  Next cycle: success rate climbs

Система створює позитивний цикл зворотного зв'язку: корекції стають постійними правилами → правила покращують якість → метрики відображають покращення → нічний цикл підтверджує здоров'я.


Опора 5: Sage Worker (Phase 40.11+)

Що це: AI-аналіз skills, бенчмарки та виявлення в marketplace.

Навіщо: Ручне покращення skills не масштабується. Потрібен автоматизований аналіз якості skills та доступ до community expertise.

Як працює:

Аналіз skills

Обери будь-який skill у Skill Evolution UI → клікни "Sage Analyze" → Sage (Claude Haiku) оцінює:

A/B-бенчмарки

Порівнюй дві версії skill:

  1. Обери оновлення skill (PR)
  2. Запусти бенчмарк → Sage тестує обидві версії на зразкових prompts
  3. Результати показують порівняння якості з підсумком

Виявлення в marketplace

Шукай на claudemarketplaces.com skills, створені спільнотою:

  1. "Sage Scout" → пошук за ключовим словом
  2. Аналіз сумісності з твоїм проєктом
  3. Встанови глобально або зроби fork до конкретного проєкту

Дизайн-референс: Менеджери пакетів (npm, pip) для управління AI-skills, з LLM-аналізом сумісності.