val caffeineRepo = providers.gradleProperty("caffeineRepo").getOrElse("http://192.168.76.117/repository/caffeine") pluginManagement { repositories { gradlePluginPortal() mavenCentral() google() } } dependencyResolutionManagement { repositories { // Сначала mavenLocal — чтобы локально опубликованные версии // (через publishToMavenLocal) перекрывали caffeine. mavenLocal() mavenCentral() google() // Локально опубликованные snapshot-ы text-embedding-kmp (см. `~/.m2`). // Home Nexus, репо "caffeine": pw.binom.* (A2A, ...) maven { name = "caffeine" url = uri(caffeineRepo) setAllowInsecureProtocol(true) } } } rootProject.name = "agentik" include(":standalone") // Собственный протокол agentik. Пока в нём пилим, потом вынесем. include(":proto") // Парсер скилов (YAML-frontmatter + markdown body, opencode-style). include(":skills") // Ktor-сервер, экспонирующий Agent по HTTP (SSE + JSON). include(":server") // Ktor-клиент, превращающий HTTP-фасад в `Agent`/`Conversation`. include(":client") // CLI-клиент поверх :client — REPL со slash-командами и стримингом ответов. // KMP со всеми целями (jvm + весь натив), jvm-таргет собирается как shadowJar. include(":agentik-cli") // Встраиваемая долговременная память агента. `:memory-api` — интерфейсы, // `:memory-md` — реализация на базе §-файлов (Hermes-style). include(":memory-api") include(":memory-md") // Vector-бэкенд долговременной памяти поверх JVector (ANN-индекс) + SQLite // для метаданных. JVM-only (JVector не имеет KMP-таргетов). На Android ART // работает через Java 11 base classes (scalar fallback). include(":memory-vector") // Интерфейсы хранилища и разговорной истории: MessageStore / WorkingMemoryStore / // ConversationStore / ReflectionStore + StorageBundle агрегатор. Реализации — // в :storage-inmemory / :storage-sqlite / :storage-android (последний deferred). include(":storage-core") // In-memory реализация всех 4 store'ов из :storage-core. KMP, без платформенных // IO-зависимостей. Используется в тестах (быстрый setup, без JDBC) и будет // использоваться в Android-сборке (JVector/SQLite не подходят для ART out-of-box). include(":storage-inmemory") // SQLDelight-реализация всех 4 store'ов из :storage-core. JVM-only (SQLDelight // native драйверов для KMP вне JVM пока не публикует). Содержит 4 .sq-файла + // 5 классов: SqliteStores, SqliteConversationStore, SqliteMessageStore, // SqliteWorkingMemoryStore, SqliteReflectionStore. Бэкенд для прод-запуска // :standalone (путь к .db файлу в AGENTIK_DB). include(":storage-sqlite") // Ядро механики toolsets: ToolsetRegistry + ToolsetDispatchPolicy + встроенные // тулы enable_toolset/disable_toolset. KMP, не зависит от :standalone, может быть // переиспользован в Android-сборке. Интеграция с ChatAgent — commit 5+. include(":agent-toolsets")