Files
SubochevAV 8f616f359f
ci / JVM build + tests (pull_request) Failing after 54s
docs: per-module READMEs (run vs library) + root navigation hub
Every subproject now has README.md:
- 3 runnable modules (:standalone, :agentik-cli, :agentik-tui):
  quickstart, env table, parameters, known limits
- 11 library modules: what it is, which problem solves, how to
  wire it in, where versions live

Root README.md is the navigation hub (Quickstart, Modules table,
publish + CI/CD notes).

Also: ci.yml prunes the :memory-vector -x excludes now that
text-embedding-kmp artifacts are published to caffeine.

518 tests green.

Verified publish pipeline: :proto:publish to caffeine produces
pom.module + per-target klibs + sources for all 9 KMP targets.

🤖 Generated with [opencode]
2026-09-16 20:44:16 +03:00
..

:skills — парсер SKILL.md (KMP, JVM-only)

Что это

Парсер и runtime для навыков агента в формате opencode Skills:

  • SKILL.md / *.yaml с YAML-frontmatter (name, description, allowed-tools, etc.) и markdown-телом.
  • Реестр SkillCatalog, лоадер SkillLoader (поиск по ~/.agentik/skills/).
  • Skill имеет стабильный id, описание, может требовать определённые tools (allowed-tools: [run_command, write_file]) — это контролируется на уровне вызова.
  • Загруженные скиллы аггрегируются в system-prompt через Skill.toSystemPromptSection() или подгружаются по требованию через tool read_skill.

Решает задачу: агенту нужно объяснить "что я умею" на разных языках (нативный skill-вызов vs. описание), нужно уметь включать/выключать навыки по требованию, и нужно хранить текстовые навыки прямо в git-репозитории (а не в БД).

Где используется

  • :standalone подгружает все SKILL.md из ~/.agentik/skills/ и инструментового скилл-майнера (skill-mining: создание новых SKILL.md по LLM-рефлексии).
  • Активно юзается для: code-review, arch-summary, telegram-reply, любых "habits" агента.

Как подключить

kotlin {
    sourceSets.commonMain.dependencies {
        api("pw.binom.agentik:skills:0.1.0")
    }
}

Версии

gradle/libs.versions.toml → [versions] agentik-skills.

Пример SKILL.md

---
name: code-review
description: Review uncommitted diff and produce line-anchored comments.
allowed-tools: [run_command, read_file]
---

You are a strict reviewer. For every change in the diff, output:
- File: <path>
- Severity: <nit|warning|blocker>
- Comment: <one sentence>

Only mention issues that are objectively wrong. Do not refactor.

Тесты

./gradlew :skills:jvmTest

Покрывают: парсинг yaml-frontmatter, обработку отсутствующих полей, unicode-имена, дубликаты id, очень большое тело.

Чего здесь НЕТ

  • Никакого HTTP / tool-вызова. Парсер и реестр — не более.
  • Никакой БД. SKILL.md живут в файлах под управлением пользователя.

Текущий статус

Используется продакшеном. Парсер простой и предсказуемый; расширять формат frontmatter можно без поломок (новые поля игнорируются).