— приложения A · C · D —

Справочник на вградените

879 нативни функции · тематични семейства · генерирано от стабилния регистър на сървъра

Зареждане…

Администриране и работно пространство

api-create

[api-create name]

Създава работно пространство и генерира API ключ.

clear

[clear mode?]

Изчиства контекста. Режими: 'vars', 'macros', 'kb', 'all' (по подразбиране).

file-tree

[file-tree path?]

Получава дървото на директорията като JSON.

freespace

[freespace path?]

JSON {path,total,used,free,total_h,used_h,free_h,percent_used} за диска, съдържащ `path` (по подразбиране: текущата директория).

log-clear

[log-clear file]

Изпразва файл с журнал.

log-list

[log-list]

Списък на наличните лог файлове (име, етикет, размер, mtime).

log-tail

[log-tail file n]

Чете последните n реда от журнала.

proadmin

[proadmin email pass]

Повишава привилегиите.

proai-validator

[proai-validator JSON|fichier]

Статично валидира .proai файл (път или вграден JSON). Връща доклада в Markdown формат.

role-define

[role-define name cap1 cap2 …]

създава/обновява потребителска роля (ROOT). Caps от затворения речник.

role-delete

[role-delete name]

изтрива потребителска роля (ROOT). Вградените роли са защитени.

role-list

[role-list]

JSON {роля: [caps]} за всички роли (вградени + потребителски).

sys-info

[sys-info]

Получава системна информация (нишки, платформа).

user-add

[user-add email pass nom prenom]

Създава потребител.

user-delete

[user-delete email]

Изтрива потребител.

user-list

[user-list]

Списък на всички потребители (администратор).

user-role

[user-role email]

текуща роля | [user-role email роля] задава ролята (ROOT).

user-update

[user-update email pass nom prenom]

Актуализира потребител.

webdriver-config

[webdriver-config]

Показва отпечатъка на машината + пътя до профилите. [webdriver-config path] -> Задава пътя до профилите за тази машина.

workspace

[workspace list|login|go ...]

Управлява контекста на работното пространство.

workspace-set

[workspace-set email ws]

Предоставя достъп.

workspace-unset

[workspace-unset email ws]

Отнема достъп.

Генетични алгоритми

genetic:add-counter

[genetic:add-counter $store $record $expected [$actual] [$weight=5.0]]

$store. Мутира и връща store (позволява верижно извикване).

genetic:best

[genetic:best $pop]

Индивидът с най-висока скаларна приспособеност.

genetic:counter-size

[genetic:counter-size $store]

Цяло число на съхранените корекции.

genetic:counter-store

[genetic:counter-store [schema?]]

Празен CounterStore. Натрупва корекции от потребители; подава се на [genetic:fit-with-counter] за включване в fitness spec.

genetic:evolve

[genetic:evolve $pop $fitness-spec [opts-json]]

Еволюирала популация. fitness-spec е JSON речник {kind, dataset, label_field, ...}; opts-json поддържа {generations, mutation_rate, crossover_rate, elitism, tournament_k, seed, plateau_window}.

genetic:fit-with-counter

[genetic:fit-with-counter $fit-spec-json $store [weight=0.5]]

Обогатен JSON. Инжектира $store.examples + counter_weight в fitness spec за използване от [genetic:evolve]. Крайна fitness = (1-w)*holdout + w*counter.

genetic:fitness

[genetic:fitness $individual]

Скаларна приспособеност (или списък за многоцелева задача).

genetic:lineage

[genetic:lineage $individual]

JSON {generation, parents, mutation_op}.

genetic:pareto

[genetic:pareto $pop]

Списък от индивиди на недоминирания фронт. Използва се с многоцелеви fitness specs (kind: multi_objective) за разкриване на границата на компромис между цели (напр. прецизност vs. краткост vs. цена).

genetic:population

[genetic:population genome1 genome2 ...]

Популация. Всеки аргумент е пълен геном (обикновено списък от речници с правила).

Апроксимация

approximation:confidence

[approximation:confidence $approx]

'exact'|'high'|'moderate'|'low'.

approximation:from-ilp

[approximation:from-ilp $learn_result [value?]]

VVL_Approximation. Wraps an ILP LearnResult so its trust level propagates through arithmetic BinOps.

approximation:llm-weight

[approximation:llm-weight LOGPROB]

calibrated weight in [0, 1]. Pass an OpenAI top_logprob. Buckets: ≥-0.5 → 0.3, [-2, -0.5) → 0.7, <-2 → 1.0.

approximation:make

[approximation:make VALUE ASSUMPTIONS_JSON [QUESTION?]]

VVL_Approximation. Each assumption: {name, value, source: user|fact|LLM|computation, concept?, weight?}.

approximation:range

[approximation:range $approx]

'low - high' string sized by Σ weight_llm.

approximation:revise

[approximation:revise $approx OVERRIDES_JSON]

new VVL_Approximation. Re-runs the stored code with assumption values overridden. Keys are either bare names or 'Concept.field'. Overridden assumptions are re-tagged source='user' so confidence improves.

approximation:scalars

[approximation:scalars $approx]

JSON list of {name, value, range, confidence}. Per-field range estimates for Concept-shaped results.

approximation:sensitivity

[approximation:sensitivity $approx [pct=0.10]]

JSON list of records ranked by impact. Each LLM-source numeric assumption is perturbed by ±pct, the stored code is re-run, and the result delta is captured. Tells you which LLM estimates dominate the final answer.

approximation:trace

[approximation:trace $approx]

JSON {value, confidence, n_*, w_*, range, assumptions}.

approximation:value

[approximation:value $approx]

numeric value (or string if non-numeric).

Асинхронност и паралелизъм

async

[async expression]

Изпълнява асинхронно, връща Promise

await

[await promise] [await promise ms]

Изчаква разрешаването на promise

channel

[channel capacity?] | [channel name capacity?]

Създава канал; без капацитет каналът е небуфериран, при capacity>0 комуникацията е буферирана

channel-delete

[channel-delete name]

Изтрива именуван канал от регистъра (1/0).

channel-exists

[channel-exists name]

Проверява дали именуван канал съществува (1/0).

channel-list

[channel-list]

Списък на всички именувани канали (по азбучен ред).

getTimeout

[getTimeout]

Получава текущата настройка за таймаут в секунди

host-continuation-proxies

[host-continuation-proxies]

Инспекция на VVL прокси дескрипторите на активните хост продължения.

host-continuation-transfer

[host-continuation-transfer proxy_id|proxy]

Връща решението на ВМ за прехвърляне на прокси на хост продължение.

host-continuation-vm-proxy

[host-continuation-vm-proxy proxy_id vm_task_id resource_kind? operation?]

Изгражда дескриптор на прокси на продължение, управлявано от ВМ.

host-continuations

[host-continuations]

Инспекция на активните Python хост продължения от блокиращи чакания.

promise-all

[promise-all list ms?]

Изчаква всички promise (като Promise.all)

promise-race

[promise-race list ms?]

Връща първия разрешен promise

promise-state

[promise-state promise]

Получава състоянието на promise без блокиране

promise-value

[promise-value promise]

Получава стойността ако е разрешен, иначе празно

rwait

[rwait ms]

Изчаква ms милисекунди, връща сигнал

semaphore

[semaphore name? n?]

Създава или извлича именован/анонимен semaphore с начален брояч n (по подразбиране: 1)

semaphore-delete

[semaphore-delete name]

Изтрива именован semaphore от регистъра (връща 1/0)

semaphore-exists

[semaphore-exists name]

Проверява дали съществува именован semaphore (връща 1/0)

semaphore-list

[semaphore-list]

Списък на всички именовани semaphore (сортирани по азбучен ред)

setTimeout

[setTimeout ms]

Конфигурира таймаута за блокиращи операции (0=безкрайно)

signal

[signal]

Връща сигнал за успешно завършване

stop

[stop]

Спира чисто текущия паралелен клон

task-async

[task-async queue graph params]

Поставя задача в опашката и връща Promise

Атоми и политики

atom:axes

[atom:axes $x]

JSON речник на осите на метаданни (payload_kind, effect_kind, determinism, persistence, trust_level, provenance, cost_hint, latency_hint).

atom:capabilities

[atom:capabilities $x]

Списък от имена на протоколи за способности, които атомът удовлетворява (Introspectable, Identifiable, Featurizable, LLMRepresentable, Persistable, Callable, Traceable, ...).

atom:family

[atom:family $x]

Низово име на семейство (SymbolicAtom/GroundedAtom/ReifiedAtom) или празен низ.

atom:trace

[atom:trace $x]

JSON {family, class, runtime_id, content_hash, axes, dump, ...} структурирана следа на всеки атом.

policy:check

[policy:check $policy $atom]

JSON {allowed, matched_rule, action, axis, op, values, reason}. Обхожда правилата по ред; първото съвпадение печели. При отсъствие на съвпадение се прилага отказ по подразбиране.

policy:define

[policy:define [list "allow|deny" AXIS [OP] VALUES...] ...]

Политика. Оси: family, payload_kind, effect_kind, determinism, persistence, trust_level, provenance, cost_hint, latency_hint, capabilities. Оператори: in (по подразбиране), ==, !=, >, <, >=, <=. Действие по подразбиране: deny.

Други

@

[@ "Name"]

Реифицира концепт (безплатно). [@ "Name" ClassName] -> Реификация с шаблон на клас. [@ "Name" "lazy"] -> Без bootstrap.

email

[email action ...]

Клиент за имейл на ниво протокол (SMTP/IMAP/POP3). connect: [email connect name protocol host port user pass] disconnect: [email disconnect name] list: [email list] send: [email send name to subject body] или [email send name <{spec}>] folders: [email folders name] inbox: [email inbox name folder? limit?] search: [email search name criteria folder? limit?] read: [email read name uid folder?] flag: [email flag name uid flag folder?] unflag: [email unflag name uid flag folder?] move: [email move name uid dest source?] delete: [email delete name uid folder?] save: [email save name uid dir folder?] pop-list: [email pop-list name] pop-read: [email pop-read name index] pop-delete: [email pop-delete name index]

getResourceBase64

[getResourceBase64 $res]

Връща PNG данни в Base64.

getResourceBase64ZIP

[getResourceBase64ZIP $res]

Връща PNG, компресиран с ZIP и кодиран в Base64.

pis

[pis url user pass]

Клиент PIS (Partner Information System). Методи: ping, partners, partner, clients, distributors, create_partner, save_partner, search_partner, change_partner, locations, location, create_location, save_location, location_state, location_parts, search_location, parts, part, create_part, create_parts, update_part, search_part, unconfirmed_parts, orders, order, client_orders, create_order, assign_order, set_order_state, search_order, systems, system, client_systems, save_system, copy_system, release_system, search_system, systems_by_parts, contacts, contact, create_contact, save_contact, remove_contact, approve_contact, send_approve_mail, user_exists, search_user, part_types, part_type, search_parttype, templates, template, search_template, countries, has_backup, backups, activate_space, me, raw

tekitisy

[tekitisy url login password]

Клиент за управление на сайтове Tekitisy. VDOM връзка + автоматично разполагане на plugin_gateway ако липсва. Команди на клиента: [$tk "sites"] -> списък на сайтове/плъгини [$tk "site" "ИмеСайт"] -> избира сайт Команди на сайт: [$site "pages"] -> списък HTML страници [$site "upload" "name" $html] -> качва страница [$site "upload-file" "n" "path"] -> качва от файл [$site "upload-dir" "path/"] -> качва директория [$site "download" "name"] -> изтегля страница [$site "delete" "name"] -> изтрива ресурс [$site "routing"] -> текущ код за маршрутизация [$site "set-routing" $code] -> заменя маршрутизацията [$site "add-route" "/url" "f"] -> добавя маршрут [$site "auto-routing"] -> генерира авто-маршрутизация [$site "inject" "seo" "p" $m] -> инжектира SEO [$site "inject" "cookie" "p"] -> инжектира GDPR бисквитки [$site "inject" "mobile-menu" "p"] -> мобилно меню [$site "fix-links" "p" $map] -> поправя връзките [$site "deploy" "dir/" $opts] -> пълно разполагане [$site "macros"] -> списък на сървърни макроси [$site "macro-code" "name"] -> код на макрос [$site "set-macro" "n" $code] -> редактира макрос [$site "kv"] -> KV хранилище [$site "kv-get" "key"] -> чете стойност [$site "kv-set" "k" "v"] -> записва стойност [$site "status"] -> пълно резюме

Релационни бази данни

db

[db action name args...]

Операции SQLite (open, query, exec, tables).

mssql

[mssql action alias ...]

Изпълнява операция SQL Server. Действия: connect/disconnect/list/exec/query/table/begin/commit/rollback/autocommit/tables/schema. Вж. vvl_mssql.

pg

[pg conn_string|action ...]

Изпълнява операция PostgreSQL. Вж. vvl_pg за синтаксиса на връзка и заявки.

CSV

CSV

[CSV "filename.csv"]

Създава или зарежда CSV файл (разширението е незадължително).

csv-add

[csv-add $csv record]

Добавя запис в CSV.

csv-all

[csv-all $csv]

Връща всички записи като списък.

csv-autosave

[csv-autosave $csv enabled]

Превключва автоматичното записване при всяка промяна. false за масови вмъквания, после [csv-save].

csv-count

[csv-count $csv]

Връща броя на записите.

csv-create-index

[csv-create-index $csv field]

Създава индекс върху поле за ускоряване на търсенията.

csv-delete

[csv-delete $csv key]

Изтрива запис по първичен ключ.

csv-erase

[csv-erase $csv]

Изчиства всички данни и схемата.

csv-filter

[csv-filter $csv lambda]

Филтрира записите с помощта на предикатна функция.

csv-find

[csv-find $csv key]

Открива запис по първичен ключ.

csv-grid

[csv-grid $csv field1 val1 [field2 val2 ...] value_field]

Бързо нативно N-мерно търсене: филтрира всяка ос по поле>=стойност, връща value_field на реда при най-ниския праг на първата ос.

csv-key

[csv-key $csv fieldname]

Задава полето за първичен ключ.

csv-orderby

[csv-orderby $csv fieldname]

Задава ред на сортиране и сортира данните.

csv-reload

[csv-reload $csv]

Презарежда данните от диска.

csv-save

[csv-save $csv]

Принудително записва на диска (по подразбиране записването е автоматично).

csv-setfield

[csv-setfield $csv name type]

Добавя или променя поле в схемата.

csv-update

[csv-update $csv key updates]

Актуализира запис по първичен ключ.

csv-where

[csv-where $csv field op value]

Бързо филтриране без lambda. Оператори: =, !=, >, <, >=, <=, contains, startswith, endswith.

csv-where-indexed

[csv-where-indexed $csv field value]

Свръхбързо търсене по индексирано поле (O(1)).

Символни изчисления

proof:auto

[proof:auto P]

{status: proved|refuted|unknown, by, justification, counterexample?}.

proof:check

[proof:check GOAL TERME]

Проверява терм на доказателство (естествено приспадане; листа 'auto' се разреждат от оракула).

proof:llm

[proof:llm GOAL max?]

LLM предлага терм за доказателство, LCF ядрото проверява и връща грешката (вердикт, проверен от ядрото, или честен неуспех).

proof:repair

[proof:repair GOAL $proposer max?]

цикъл на ядрото генерирай→провери→поправи (генератор = ламбда [feedback] -> изходник на терм за доказателство).

symbolic

[symbolic x | x y z | EXPR]

Декларира един или повече символи, или реифицира израз.

symbolic:assume

[symbolic:assume x "positive" …]

Символ с допускания.

symbolic:det

[symbolic:det M]

Детерминанта.

symbolic:diff

[symbolic:diff e var n?]

Производна.

symbolic:dsolve

[symbolic:dsolve eq func]

Решава диференциално уравнение.

symbolic:eq

[symbolic:eq lhs rhs]

Уравнение.

symbolic:exact

[symbolic:exact EXPR question?]

Точно приближение (резултат от CAS).

symbolic:expand

[symbolic:expand e]

Развита форма.

symbolic:factor

[symbolic:factor e]

Факторизирана форма.

symbolic:fn

[symbolic:fn f x [y …]]

Неопределена функция f(x,…).

symbolic:integrate

[symbolic:integrate e var (a b)?]

Примитивна функция/интеграл.

symbolic:inv

[symbolic:inv M]

Обратна матрица.

symbolic:lambda

[symbolic:lambda x [y …] body]

Символна ламбда, прилагана чрез [$f arg].

symbolic:latex

[symbolic:latex e]

Низ LaTeX.

symbolic:limit

[symbolic:limit e var to]

Граница.

symbolic:matrix

[symbolic:matrix <[[...]]>]

Символна матрица.

symbolic:numeric

[symbolic:numeric e digits?]

Числено оценяване.

symbolic:parse

[symbolic:parse "x**2-1"]

Израз.

symbolic:rational

[symbolic:rational p q]

Точно рационално число.

symbolic:simplify

[symbolic:simplify e]

Опростена форма.

symbolic:solve

[symbolic:solve eq var?]

Решения на eq=0.

symbolic:solve-linear

[symbolic:solve-linear A b]

Решение на A·x=b.

symbolic:solveset

[symbolic:solveset eq var]

Множество от решения.

symbolic:string

[symbolic:string e digits?]

Низ SymPy.

symbolic:subs

[symbolic:subs e var val [var val …]]

Замяна(и).

symbolic:transpose

[symbolic:transpose M]

Транспониране.

Каталог на генерични

generic

[generic "question" "name"?]

Обобщава решение в каталог с ключови думи. Режимът на трасировка следва ctx.trace (REPL :t).

generic:code

[generic:code name]

Връща VVL изходния код на запомнената ключова дума.

generic:contract

[generic:contract name]

Връща параметрите и договора за изход.

generic:evolve

[generic:evolve name]

Регенерира записа generic от изходния въпрос, запазвайки името.

generic:forget

[generic:forget name]

Премахва запис generic от каталога и неговите артефакти.

generic:info

[generic:info name]

Връща пълната карточка на функция generic.

generic:invoke

[generic:invoke "name" ...]

Вътрешен помощник за изпълнение на ключова дума, генерирана от generic, с запазване на приближенията.

generic:list

[generic:list status?]

Изброява функциите generic в каталога на работното пространство.

generic:load

[generic:load name]

Зарежда запомнената ключова дума в текущия контекст.

generic:pseudocode

[generic:pseudocode name]

Регенерира псевдокод в Markdown от каталога.

generic:tests

[generic:tests name]

Връща запомнените тестове или случаи на валидиране.

generic:validate

[generic:validate name]

Изпълнява запомнените тестове и обновява оценката за валидиране.

Низове

contains

[contains collection item]

1 ако списъкът/низът съдържа елемента.

endsWith

[endsWith string suffix]

1 ако низът завършва с дадения суфикс.

graphemes

[graphemes string]

Списък от Unicode графемни клъстери (= String.graphemes/1).

instr

[instr needle haystack [start] [compare]]

Намира първото срещане (с база 1), връща позицията или 0.

instrall

[instrall needle haystack [compare]]

Намира всички срещания, връща списък с позиции (с база 1).

instrrev

[instrrev needle haystack [start] [compare]]

Намира последното срещане (с база 1), връща позицията или 0.

join

[join list separator]

Обединява елементите на списък с разделител (по подразбиране празен).

lower

[lower s]

Малки букви (префиксен псевдоним на метода .lower).

mid

[mid start length string]

Извлича подниз (с база 1, дължина=0 означава до края).

pad-end

[pad-end s largeur motif?]

Complete s A DROITE jusqu'a `largeur` grapheme(s) (= padEnd / ljust). Motif par defaut " ".

pad-start

[pad-start s largeur motif?]

Complete s A GAUCHE jusqu'a `largeur` grapheme(s) (= padStart / rjust). Motif par defaut " ".

replace

[replace regex new string]

Заместване чрез регулярен израз.

sha256

[sha256 string]

SHA-256 хеш с малки букви (hex) на UTF-8 байтовете на низа.

split

[split sep string]

Списък от части.

startsWith

[startsWith string prefix]

1 ако низът започва с дадения префикс.

strToLowerCase

[strToLowerCase s]

Малки букви.

strToUpperCase

[strToUpperCase s]

Главни букви.

substring

[substring s start len?]

Подниз; start е от 1 (отрицателен — от края), дължината е незадължителна.

trim

[trim s]

Премахва празните символи по краищата (префиксен псевдоним на .trim).

upper

[upper s]

Главни букви (префиксен псевдоним на метода .upper).

Клъстер за разпределени изчисления

cluster:audit

[cluster:audit filters?]

Подредени JSON събития от жизнения цикъл на задачите.

cluster:await

[cluster:await job timeout_seconds?]

Изчаква DONE, FAILED или CANCELED; изтичането на времето не изтрива задачата.

cluster:backup

[cluster:backup]

Съгласувана гореща снимка; възстановяването е офлайн операция.

cluster:call

[cluster:call function_ref arg...]

Зарежда регистрирана функция по нейния sha256, проверява арността ѝ и я изпълнява локално във ВМ.

cluster:cancel

[cluster:cancel job]

Отменя задачата и нейните чакащи или наети шардове.

cluster:drain

[cluster:drain worker_id enabled?]

На master по подразбиране включва drain (без нови наеми) или връща възела в работа.

cluster:gc

[cluster:gc min_age_seconds?]

Премахва само необвързани обекти от хранилището, по-стари от дадения срок.

cluster:jobs

[cluster:jobs filters?]

Списък със записи за прогрес на задачите, от най-новите.

cluster:map

[cluster:map function_ref items options?]

Подава непразен списък като персистентни шардове и връща дескриптора на задачата.

cluster:metrics

[cluster:metrics]

JSON с метрики: ограничен снимък на задачи, работни възли и слотове.

cluster:register

[cluster:register [keyword name `body]]

Компилира keyword по каноничния път на компилация, одитира резултата и го съхранява в хранилище с адресация по съдържание.

cluster:result

[cluster:result job pagination?]

Краен резултат на задачата според стратегията reduce.

cluster:status

[cluster:status job]

JSON за прогрес на задача, видима в текущия workspace.

cluster:workers

[cluster:workers]

JSON изглед на регистрираните работни възли.

Изчисления / Оптимизация

optimize

[optimize "NL description" "name"]

Компилира заявка за оптимизация на естествен език в блок [optimize:problem ...] чрез LLM, анализира и регистрира. Кешира се в .optimize_nl_cache.json. Проверявайте чрез [optimize:code name] преди решаване.

optimize:code

[optimize:code name]

Извежда регистрирания проблем като VVL [optimize:problem ...] низ. Подходящ за проверка и копиране; полезен за задачи, генерирани от NL чрез [optimize "..." name].

optimize:explain

[optimize:explain name]

Четимо представяне на компилирания CP-SAT модел: променливи (с източник), ограничения, целева функция.

optimize:problem

[optimize:problem name (schema class)? body...]

Регистрира CP-SAT задача. Схемата/класът са незадължителни: в режим pure-local декларирайте решаващите променливи чрез [decision $x Type [min L] [max H]] в тялото. Форми на тялото (Sprint 1): [decision $x Type [min L] [max H]], [maximize expr], [minimize expr], [assert expr].

optimize:report

[optimize:report name]

След решаване произвежда чрез LLM четимо резюме на присвояването. Комбинира изхода на [optimize:code] и последния резултат от [optimize:solve].

optimize:solve

[optimize:solve name [time_limit secs] [backend "cp-sat"]]

Стартира решаването и връща VVL_OntologyInstance (режим онтология) или низ с резултат (локален режим). В Sprint 1 се поддържа само бекендът [backend "cp-sat"].

optimize:validate

[optimize:validate name]

Структурна диагностика на регистрирания проблем. Изброява всеки некомпилируем израз с предложение за корекция. Работи дори ако [optimize:problem] е върнал грешка.

optimize:why-infeasible

[optimize:why-infeasible name]

След като [optimize:solve] върне INFEASIBLE, изолира минималното множество ограничения [assert], чието пресичане е неудовлетворимо, чрез литерали за допускания на CP-SAT.

Конфигурация

config-cluster

[config-cluster <field> <value>] (admin)

записва <CLUSTER> във vvl.config.

config-cluster-show

[config-cluster-show] (admin)

конфигурация на клъстера, токенът е скрит.

config-cluster-worker-token

[config-cluster-worker-token <worker-id> <token> [previous-token]] (admin)

конфигурира тайна, обвързана с работен възел; празен токен я премахва.

config-gateway-token

[config-gateway-token <token>] (admin)

Записва <GATEWAY><AUTHTOKEN>.

config-geo-key

[config-geo-key <key>] (admin)

Записва <GEO><GOOGLE-API-KEY>.

config-jev

[config-jev <field> <value>] (admin)

записва <JEV> във vvl.config. Поле: account-id|token|model|provider|threshold|timeout. [config-jev show] (токенът е скрит), [config-jev test] (реално извикване).

config-llm

[config-llm <field> <value>] (admin)

Записва <LLM> в vvl.config. Поле: key|model|agent|max-tokens|provider|endpoint|embedding|image|vision|temperature.

config-rest

[config-rest <host> <port>] (admin)

Записва <REST> (влиза в сила при следващото стартиране на REST).

config-root-password

[config-root-password <pwd> [user]] (admin)

Записва <SECURITY> (хеш на root).

config-show

[config-show] (admin)

Резюме на конфигурацията (тайните са скрити).

setting

[setting "nom"]

Текуща стойност; [setting "име" стойност] я задава, прилага и записва в <TUNING> на vvl.config (постоянно). Заменя променливите на средата VVL_*.

setting-reset

[setting-reset "nom"]

Премахва стойността (runtime + конфигурация), връщайки подразбирането.

settings

[settings]

Опис на настройките: име, стойност, подразбиране, произход, документация.

Договори и проверка

contract

[contract [params] [require "…"]… [ensure "…"]… body]

Функция с контракт (пред/пост условия проверени при извикване).

contract:info

[contract:info keyword]

договорът на даден [keyword] като JSON (args, require, ensure, returns, mode).

contract:mode

[contract:mode] / [contract:mode "enforce"|"warn"|"off"]

режим на договорите на keyword за цялата сесия.

contract:ontology

[contract:ontology [params] [into <abstract>] [satisfies s] [require "…"]… [ensure "…"]… [retry n] [on-fail graceful|raise] [commit] body]

самовъзстановяващ се договорен LLM производител: произведи -> валидирай (прагов satisfies_hybrid + ensure) -> при неуспех върни грешката на производителя и повтори.

contract:verify

[contract:verify $fn | keyword]

Статично верифицира requires ⟹ ensures (символно изпълнение + [proof:auto]).

contract:warnings

[contract:warnings] / [contract:warnings clear]

нарушенията, записани в режим warn (keyword, вид, съобщение).

verify:approx

[verify:approx P]

VVL_Approximation (confidence = произход на доказателството).

verify:repair

[verify:repair $proposer max?]

Цикъл генериране → верификация → поправка (включваем proposer).

Управление на потока

and

[and a b ...]

1, ако ВСИЧКИ аргументи са истина, иначе 0.

attempt

[attempt expr]

Връща JSON {"ok":true,"value":...} или {"ok":false,"error":{type,message}}.

break

[break] ou [break valeur]

Излиза от текущия цикъл [for] / [while].

continue

[continue]

Преминава към следващата итерация на цикъла [for] / [while].

delay

[delay ms]

Спира изпълнението. Кооперативен: проверява сигнала за спиране на всеки 100 мс.

do

[do expr1 expr2 ...]

Последователно изчисляване. Спира при сигнал за спиране, връща стойността на последния израз.

exit

[exit val?]

Вдига сигнала за спиране в текущия контекст (връщайки стойността).

if

[if cond then else?]

Условна конструкция. Връща клона then ако условието е истинно, иначе клона else (или празна стойност).

not

[not val]

1 ако val е неистинно/празно, иначе 0.

or

[or a b ...]

1, ако ПОНЕ един аргумент е истина, иначе 0.

race

[race expr1 expr2 ...]

Паралелно състезание: печели първата непразна стойност, губещите клонове се отрязват.

raise

[raise "message"] ou [raise "type" "message"]

Повдига грешка, прихващаема чрез [try] / [attempt].

silent

[silent expr1 expr2 ...]

Изпълнява изразите, но винаги връща "".

switch

[switch val case1 body1 ... _ default?]

Сравнява val с вариантите. '_' съответства на всичко.

timeout

[timeout ms expr]

Изпълнява с времево ограничение. При изтичане вдига StopBranchException (прихватваемо чрез ~>).

try

[try try-body catch-body]

Изпълнява тялото try; при изключение свързва $__error и изпълнява тялото catch.

try:json

[attempt expr]

Връща JSON {"ok":true,"value":...} или {"ok":false,"error":{type,message}}.

when

[when cond body]

Изпълнява тялото само ако условието е истинно.

while

[while body]

Цикъл докато тялото е истинно. Твърд лимит от 100 000 итерации.

Кредити за извиквания

billing-credit

[billing-credit ws amount expiry? note?]

Добавя кредити; срок = дни (число) или "YYYY-MM-DD", по подразбиране без срок (root).

billing-history

[billing-history ws limit?]

JSON дневник, от най-новите към най-старите (по подразбиране 100 записа) (root).

billing-list

[billing-list]

JSON преглед на всички работни пространства: режим, баланс, потребление за 30 дни и общи суми (root).

billing-mode

[billing-mode ws "metered"|"unlimited" low_threshold?]

Превключва режима на таксуване на работно пространство (root).

billing-reset

[billing-reset ws note?]

Нулиране: балансът на работното пространство пада до 0 (root).

billing-set

[billing-set ws amount expiry? note?]

Задава принудително баланса на точна стойност (root).

billing-status

[billing-status ws]

JSON: режим, баланс, партиди кредити (със срок) и потребление на работно пространство (root).

billing-usage

[billing-usage ws days?]

JSON дневно потребление (извиквания, изразходвани кредити, отхвърлени) за N дни, по подразбиране 30 (root).

Байесова диагностика

diagnose

[diagnose kb "obs."]

Абдуктивна диагностика по Райтер: минимални конфликти + минимални множества за отзоваване, подредени по цена на убеждението.

diagnose:repair

[diagnose:repair kb "obs." mode? pick?]

прилага диагноза: фактите се отзовават, на правилата бета-убеждението се понижава («soft») или се отзовават («hard»).

diagnose:why-not

[diagnose:why-not kb "goal." depth?]

положителна абдукция: минимални множества липсващи факти за извеждане на целта (ограничено по дълбочина).

Разни

chr

[chr codepoint]

Единичен символ от Unicode кодова точка.

guid

[guid]

Генерира UUID (Universally Unique Identifier).

ord

[ord char]

Unicode кодова точка на първия символ.

random

[random n]

Случайно цяло в [0, n). Аналог на Orc Random(n).

timestamp

[timestamp]

Връща текущото времево клеймо в милисекунди (epoch).

Factur-X

Factur-X

[Factur-X $pdf <data> "out.pdf" $options?]

VVL_Pdf. Обвива PDF файл в Factur-X (PDF/A-3 + CII XML). <data> е или DSL списък [Fx-Invoice ...], JSON речник на фактура, или XML низ/път. Профили: MINIMUM, BASIC WL, BASIC, EN 16931, EXTENDED, XRECHNUNG. Опции: profile, lang, auto_profile, check_xsd, additional_attachments.

Фибри

fiber-alive

[fiber-alive $fiber]

Проверява дали фибрата е все още активна (1) или завършена (0). Алтернатива: $fiber.alive. Пример: [while [fiber-alive $gen] ...]

fiber-load

[fiber-load $json]

Възстановява фибра от JSON на [fiber-save] и продължава оттам.

fiber-resume

[fiber-resume $fiber]

Възобновява изпълнението на фибрата и връща следващата произведена стойност. Връща празен низ, ако фибрата е завършена. Алтернатива: $fiber.resume. Пример: [fiber-resume $gen]

fiber-save

[fiber-save $fiber]

Сериализира СПРЯНА ВМ фибра в JSON (преносимо продължение). Възобновява се чрез [fiber-load].

fiber-to-list

[fiber-to-list $fiber]

Събира всички останали стойности от фибрата в списък. Изчерпва фибрата напълно. Алтернатива: $fiber.to-list. Пример: [fiber-to-list $gen]

session-load

[session-load $json]

Възстановява сесия от [session-save] в текущия контекст (променливи + възобновени фибри).

session-save

[session-save]

Сериализира ЦЯЛАТА сесия (променливи + работещи фибри) в преносим JSON.

spawn

[spawn keyword args...] or [spawn lambda args...]

Създава фибра/генератор от ключова дума или ламбда. Връща обект фибра, който произвежда стойности мързеливо. Пример: $gen = [spawn [counter 10]]

stream-pipe

[stream-pipe $fiber lambda]

Трансформира стойностите на фибрата чрез ламбда функция. Връща нова фибра с трансформирани стойности. Пример: [stream-pipe $nums [lambda [$x] [* $x 2]]]

yield

[yield value]

Спира изпълнението и връща стойност от фибрата. Може да се извиква само в контекст на фибра. Пример: [for $i [range 10] [yield $i]]

Файлова система

file-append-b64

[file-append-b64 "path" "base64_content"]

Добавя двоични данни (декодирани от base64) към файл (създава го, ако липсва).

file-delete

[file-delete "path"]

Изтрива файл или директория (надеждно, с повторни опити под Windows).

file-read

[file-read "path"]

Чете текст от файл в работното пространство (jail).

file-read-b64

[file-read-b64 "path"]

Чете двоичен файл и връща съдържанието му като низ base64.

file-rename

[file-rename "old_path" "new_name"]

Преименува файл или директория в рамките на същата родителска директория.

file-write

[file-write "path" "content"]

Записва текст във файл в работното пространство (jail).

file-write-b64

[file-write-b64 "path" "base64_content"]

Записва двоичен файл от низ base64.

ls

[ls "/path"?]

JSON списък от {name,type,size,modified} за записите в директория.

Google API

calendarCreate

[calendarCreate summary startISO endISO desc?]

Създава събитие.

calendarList

[calendarList max]

Изброява предстоящите събития.

gmailList

[gmailList query max]

Изброява непрочетените имейли (JSON).

gmailSend

[gmailSend to subject body]

Изпраща имейл.

Гео и маршрутизация

geo:coords

[geo:coords "city or address"]

{lat, lon, name, source}. source ∈ {offline, google, google-cache}. Офлайн приоритет (cities-fr.csv), резервен Google Geocoding ако GOOGLE_MAPS_API_KEY е зададен.

geo:distance

[geo:distance "src" "dst"]

Цяло число км. Псевдоним на haversine с низови входове.

geo:haversine

[geo:haversine A B]

Цяло число км (ортодромично). A/B са или JSON {lat, lon} или низове (разрешени чрез [geo:coords]).

geo:store-info

[geo:store-info]

{offline_cities, google_api_key_configured}. Полезно за проверка на статуса на географския бекенд.

route:matrix

[route:matrix [list src...] [list dst...]]

Матрица от км между всяка двойка (src, dst). Изходът е VVL списък-от-списъци от цели числа, използваем от [for] вътре в [optimize:problem] като коефициенти на разстояние.

HTTP

httpDELETE

[httpDELETE url headers?]

DELETE; незадължителни заглавки (JSON речник). Връща VVL_String при 2xx, VVL_Json {error,status,body} при >=400.

httpGET

[httpGET url headers?]

GET; незадължителни заглавки (JSON речник). Връща VVL_String при 2xx, VVL_Json {error,status,body} при >=400.

httpPATCH

[httpPATCH url body headers?]

PATCH с тяло text/JSON. Връща VVL_String при 2xx, VVL_Json {error,status,body} при >=400.

httpPOST

[httpPOST url body headers?]

POST с тяло text/JSON и незадължителни заглавки.

httpPUT

[httpPUT url body headers?]

PUT с тяло text/JSON. Връща VVL_String при 2xx, VVL_Json {error,status,body} при >=400.

json-rpc

[json-rpc url service method args?]

Извиква JSON-RPC 2.0 крайна точка. Изгражда конверта, изпраща POST, връща разобрания резултат или {error:msg}.

server

[server port host?]

Стартира минимален VVL HTTP сървър (само за администратор).

site

[site baseUrl domain funcDef1 funcDef2 ...]

Декларира ключови думи, маршрутизирани чрез HTTP (ODESA).

ИИ и агенти

agent

[agent "goal" options?]

Автономен агент ReAct. Генерира VVL, изпълнява го в текущия контекст, получава обратна връзка и итерира. Използвайте [§§ "под-въпрос"]/[resolve "..."] вътре в целта/кода за специализирано неврo-символично решаване (изчисления, оптимизация, извличане, факти, експертни системи). Опции: budget (int, по подразбиране 8), tools (list[str], само филтър за документация), model (str), reflect (bool, по подразбиране true — изпълнява финален извик judge(), който може да отхвърли и да предостави 1 коригиращ стъпка).

agentTrace

[agentTrace]

VVL_Json със структурирана трасировка на изпълнението на последния [agent] извик: {goal, model, steps_used, max_steps, done_signal, return_type, tool_calls[], tool_calls_count, errors[], final_code, usage_total{prompt_tokens,...}, elapsed_ms}. Връща <{}>, ако в този контекст не е изпълнен нито един [agent] извик.

architect

[architect "goal" options?]

Високониво оркестратор. Генерира план VVL (единичен проход или план JSON предварително), проверява синтаксиса, изпълнява с автоматично коригиране от LLM при грешки в изпълнението. Речник с опции: {model, budget, max_retries (по подразбиране 3), plan_first (bool), session (id), temperature, use_rag}.

architect-resume

[architect-resume "session-id"]

Зарежда запазена сесия [architect]: реhидратира резултатите от фазите в [mem "<sid>"] и връща {session_id, phases, plan}.

codegen

[codegen "goal"]

VVL_Json {"ok":true,"code":"<VVL код>"} или {"ok":false,"error":...}. Генерира VVL код чрез LLM (същият двигател като :agent / vvl_codegen). Не променя сесията.

intent

[intent "NL" "ProblemName"] (post-hoc)

Компилира намерение на естествен език в единична форма на тялото (soft/assert/maximize/minimize) и я добавя към съществуващ проблем. Inline форма: поставете [intent "..."] вътре в тялото на [optimize:problem ...].

semantic

[§ x] aka [semantic x]

VVL_Semantic за текст | VVL_Semantic(описание) за [§ img] (LLM с визия) | VVL_Img за [§ 'desc' IMG 'WxH'] (DALL-E 3). Генерираните изображения се записват в работното пространство на активния потребител.

semanticCache

[semanticCache action ...]

Управление на кэша: 'reset' (изчисти всичко), 'delete' op left right (премахни един запис), 'purge' op (премахни всички записи на оператор), 'list' [op] (покажи записите).

semanticMode

[semanticmode mode [threshold]]

Задава семантичния режим: 'normal', 'advanced' (агентен модел за @) или 'jev' (логическите оператори се решават от Jev, LLM поема при колебание; незадължителен праг 0.5..1)

semanticModel

[semanticModel] | [semanticModel kind] | [semanticModel kind name] | [semanticModel kind name persist]

Инспектира или заменя LLM модели. Видове: 'model' (базов, @ normal), 'agent' ([agent]/[architect], @ advanced), 'vision' ([§ img]), 'image' ([§ desc IMG size]). С 'persist' стойността се записва и в vvl.config (иначе е локална за процеса).

ILP — индукция на логика

ilp:bias

[ilp:bias BIAS_JSON]

Спецификация на отклонение. BIAS_JSON: {target, predicates:[{name,modes,role?,is_bk?}], max_body?, max_clauses?, max_vars?, types?, allow_recursion?}.

ilp:constraints

[ilp:constraints $result]

Атомът ConstraintStore от LearnResult — използвайте [atom:trace] върху него за пълния журнал на неуспехите.

ilp:explain

[ilp:explain $result]

Низ. Форматиран изход на изпълнение на LFF (програма, покритие, изминало време, ограничения по вид).

ilp:induce

[ilp:induce DESCRIPTION HEAD_NAME HEAD_ARITY POS NEG [OPTS?] [KB_NAME?]]

LearnResult. Пълен конвейер: предложение за отклонение от LLM + засяване на хипотези от LLM + прецизиране LFF. opts: {n_seeds, max_body, max_iter, beam_width, seed}.

ilp:learn

[ilp:learn $bias HEAD_PRED POS_JSON NEG_JSON [BK_JSON] [OPTS_JSON] [KB_NAME]]

Атом LearnResult. Стартира Learning-From-Failures върху пространството от хипотези, ограничено от отклонението. opts: {max_body, max_iter, beam_width, seed}.

ilp:learn-with-counter

[ilp:learn-with-counter $bias HEAD_NAME POS NEG $store [WEIGHT?] [OPTS?] [KB_NAME?]]

LearnResult. Включва корекциите на потребителите (от [genetic:counter-store]) в наборите от примери за противникова ре-индукция.

ilp:propose-bias

[ilp:propose-bias DESCRIPTION HEAD_NAME HEAD_ARITY POS NEG [KB_NAME?]]

Възел Bias. LLM предлага декларации за режими + предикати за тялото от естествен език + примерни примери.

ilp:refine-with-ga

[ilp:refine-with-ga $result HEAD_NAME POS NEG [OPTS?] [KB_NAME?]]

Прецизиран LearnResult. Стохастично прецизиране на победителите от LFF резултат чрез мутации за изтриване на литерал и замяна на променлива; обединява нови съгласувани клаузи и повторно стартира алчно покритие на множеството.

ilp:seed-hypotheses

[ilp:seed-hypotheses $bias DESCRIPTION POS NEG [N?]]

JSON списък от низове с клаузи Prolog. LLM предлага до N кандидатни клаузи на Хорн за отклонението.

ilp:test

[ilp:test CLAUSES_JSON HEAD_PRED POS_JSON NEG_JSON [BK_JSON] [KB_NAME]]

JSON резултат от тест. Тества програма-кандидат срещу {E+, E-} без обучение.

Изображения и рисуване

addImage

[addImage $res1 $res2 x y alpha? alphacolor?]

Поставя res2 върху res1.

blur

[blur $res value]

Прилага Гаусово замъгляване.

brightness

[brightness $res value]

Регулира яркостта (1.0 = оригинал).

contrast

[contrast $res value]

Регулира контраста (1.0 = оригинал).

createBlackWhite

[createBlackWhite $res]

Преобразува в черно-бяло.

createGrayScale

[createGrayScale $res]

Преобразува в нива на сивото.

createImage

[createImage w h bgcolor? transparency?]

Създава ново изображение (transparency: 0=непрозрачно, 100=прозрачно).

createNegative

[createNegative $res]

Инвертира цветовете (негатив).

cropImage

[cropImage $res x y w h]

Изрязва областта в (x,y) с размер w×h.

drawAngleArc

[drawAngleArc $res x y radius startAngle endAngle pen fill alpha?]

Рисува дъга.

drawBezier

[drawBezier $res points pen alpha?]

Рисува крива на Безие.

drawEllipse

[drawEllipse $res x1 y1 x2 y2 pen fill alpha?]

Рисува елипса.

drawLine

[drawLine $res x1 y1 x2 y2 pen alpha?]

Рисува линия (pen: '#RRGGBB:width').

drawPolygon

[drawPolygon $res points pen fill alpha?]

Рисува полигон.

drawRect

[drawRect $res x1 y1 x2 y2 pen fill alpha?]

Рисува правоъгълник.

drawRoundRect

[drawRoundRect $res x1 y1 x2 y2 radius pen fill alpha?]

Рисува правоъгълник с заоблени ъгли.

emboss

[emboss $res]

Прилага ефект на релеф (emboss).

fillBezier

[fillBezier $res points pen fill alpha?]

Рисува запълнена фигура на Безие.

flipImage

[flipImage $res direction]

Обръща 'horizontal' или 'vertical'.

getHeight

[getHeight $res]

Връща височината на изображението.

getImage

[getImage 'path']

Зарежда файл с изображение в променлив ресурс ImageRes.

getImageURL

[getImageURL 'url']

Изтегля изображение от URL в променлив ресурс ImageRes.

getPixel

[getPixel $res x y]

Връща цвета '#RRGGBB' на пиксела на дадена позиция.

getPixel32

[getPixel32 $res x y]

Връща 32-битово цяло число ARGB на пиксела на дадена позиция.

getWidth

[getWidth $res]

Връща ширината на изображението.

imageToBase64

[imageToBase64 $res format?]

Кодира като data URI (png/jpg).

resizeImage

[resizeImage $res w h]

Преоразмерява с интерполация на най-близкия съсед.

resizeResampling

[resizeResampling $res w h]

Преоразмерява с повторна дискретизация по Ланцош.

rotateImage

[rotateImage $res angle bgcolor?]

Завърта с дадения ъгъл в градуси.

saturation

[saturation $res value]

Регулира насищеността (1.0 = оригинал).

saveImage

[saveImage $res 'path' format?]

Записва изображението в файл (формат: png/jpg/bmp).

setPixel

[setPixel $res x y color]

Задава цвета на пиксел на дадена позиция.

sharpen

[sharpen $res value]

Изостря изображението.

Байесов извод

bannotate

[bannotate kb "clause" p source? label?]

Анотира една клауза. p е число или "?"; source ∈ {user, fact, LLM, learned}; label споделя една случайна променлива между клаузи.

bapprox

[bapprox kb "goal" ...]

VVL_Approximation, обвиваща P[goal], така че да преминава през аритметиката на VVL и [approximation:*].

bbeliefs

[bbeliefs kb]

Всички убеждения на клаузи в KB (JSON).

bfacts

[bfacts kb "p::fact" ...]

Добавяне на вероятностни (анотирани) факти. Използвайте "0.8::rain." или "?::rain." (равномерен prior, за обучение).

blearn

[blearn kb OBS_JSON iterations? seed?]

Байесово (Gibbs) обучение на тегла на клаузи от наблюдавани query-atoms. OBS_JSON: [{"goal":"wet(r1)","obs":true}, ...]. Записва posteriori в KB.

bposterior

[bposterior kb "clause"]

Текущото Beta убеждение на клауза (JSON).

bprob

[bprob kb "goal" n_outer? n_inner? seed?]

JSON {value, ci, range, confidence, assumptions}. Предиктивна вероятност с разпространение на епистемна неопределеност. Отрицанието е точно (булево решение по светове).

brules

[brules kb "p::head:-body." ...]

Добавяне на вероятностни (анотирани) правила.

Интроспекция на променливи

parse-statements

[parse-statements code]

JSON списък с инструкции от първо ниво {start_line, end_line, text}. Използва се от дебъгера на IDE.

vars

[vars all?]

JSON списък с променливите на сесията {name, type, preview, value}. "all" включва локалните $__.

JSON / XML

JSON

[JSON s]

Разбира JSON низ s като JSON обект.

XML

[XML s]

Разбира XML низ.

getXMLValue

[getXMLValue xml "xpath"]

Получава текстовото съдържание на възел(и).

json-decode

[json-decode string]

Разбира JSON низ в обект VVL_Json. При грешка на разбора връща низ с грешка.

json-encode

[json-encode value]

Кодира стойност (низ, число…) като JSON литерал с кавички и правилно екраниране.

json-get-opt

[json-get-opt key json default?]

Чете стойност по ключ от JSON обект. Връща стойността по подразбиране (или ""), ако ключът липсва — безопасно за незадължителни полета.

json-keys

[json-keys json]

Връща VVL_List на всички имена на ключове от JSON обект.

json-path-get

[json-path-get json_str path]

Чете вложена стойност по път с точки и скоби (напр. 'layout.tabs[0].viewSystem.views.INIT.root'). Връща JSON низ на стойността или 'null', ако не е намерена.

json-path-set

[json-path-set json_str path new_value]

Задава вложена стойност по път с точки и скоби. new_value се разбира като JSON, ако е възможно. Връща обновения пълен JSON низ.

json-set

[json-set json_str key value]

Задава ключ от първо ниво в низ на JSON обект, връща обновения JSON низ.

jsonGetValue

[jsonGetValue key json]

Чете стойност по ключ/индекс от JSON. Предизвиква KeyError, ако липсва.

jsonToList

[jsonToList jsonArray]

Преобразува JSON масив в VVL списък.

object

[object [key value ...]]

Лек обект като VVL_Json речник; сериализируем чрез .json.

setXMLValue

[setXMLValue value xml "xpath"]

Задава текстовото съдържание на възел(и).

strToJson

[JSON s]

Разбира JSON низ s като JSON обект.

Списъци

append

[append head|tail val list]

Добавя стойност към списък.

chunk

[chunk n list]

Списък от парчета по n елемента; последното може да е по-късо (= Enum.chunk_every).

collect

[collect expr1 expr2 ...]

Изчислява изрази и връща стойностите, запазени чрез [keep].

concat

[concat l1 l2 l3...]

Сплескване с едно ниво — конкатенира дадените списъци.

count-by

[count-by f serie]

paires [cle nombre] (= SELECT cle, COUNT(*) GROUP BY cle).

cycle

[cycle serie]

БЕЗКРАЕН поток, повтарящ КРАЙНА серия (= cycle в Haskell).

dim

[dim $var value]

Присвоява стойност на променлива (алтернатива на $var = value).

drop

[drop n list]

Списък без първите n елемента; отрицателно n маха от края (= Enum.drop).

exist

[exist value list]

1 ако стойността е в списъка, иначе 0.

first

[first serie]

Първият елемент на списък, първият знак на низ ("" ако е празен).

getType

[getType element]

Низ с етикет на тип VVL ("NUM", "STRING", "LIST", "JSON", ...).

getValue

[getValue idx list]

Връща елемента на индекс с основа 1.

group-by

[group-by f serie]

paires [cle elements], dans l'ordre de premiere apparition (= GROUP BY).

index-of

[index-of serie valeur]

Позиция на стойността в списъка (или на подниза), броена от 1; 0, ако липсва. Същият ред на аргументите като при [contains].

insert

[insert idx value list]

Вмъква стойност на индекс с основа 1.

iterate

[iterate f x]

БЕЗКРАЕН поток x, f(x), f(f(x))... (= iterate в Haskell).

keep

[keep value]

Добавя стойност към буфера на текущия [collect] и я връща.

last

[last serie]

Последният елемент на списък, последният знак на низ ("" ако е празен).

length

[length x]

Връща дължината на списък, низ или JSON (дължина на масив, брой ключове на речник).

let

[let [[$x expr1] [$y expr2] ...] body]

Локални последователни обвързвания (let*), изчислява тялото, възстановява предишните обвързвания.

list

[list items...]

Вариадичен конструктор на VVL_List.

listMatch

[listMatch list default lambda_cons]

Ако е празен — стойност по подразбиране; иначе lambda_cons(head, tail).

match

[match target pattern1 body1 ... default?]

Съпоставяне с шаблон с отложено изпълнение на тялото.

mset

[mset [$vars...] $values]

Деструктурираща операция за присвояване на множество променливи.

pop

[pop head|tail list]

Връща стойността на главата или опашката на списък.

put

[put type idx value list]

Вмъква/заменя на индекс с основа 1 с типизиране (NUM/STRING/LIST/JSON).

remove

[remove idx list]

Изтрива елемента на индекс с основа 1.

repeat

[repeat v]

БЕЗКРАЕН поток от една и съща стойност (= repeat в Haskell).

rest

[rest serie]

Серията без първия ѝ елемент (списък или низ).

scan

[scan f init serie]

les resultats INTERMEDIAIRES du pli (= scanl / Enum.scan / +\).

slice

[slice start stop step? list]

Срез с основа 1, крайната граница включена. Отрицателна стъпка обръща реда.

unique

[unique list]

Списък без дубликати, печели първото срещане (= Enum.uniq).

unpack

[unpack list $headVar $tailVar]

Деструктурира списък в променливи глава/опашка. Връща 1 при успех, 0 ако е празен.

update

[update type idx value list]

Актуализира стойността на индекс с основа 1 с типизиране.

with

[with $source $alias expr1 expr2 ...]

Паралелно изчисляване на изрази, всеки с $alias = source.

zip

[zip a b]

Списък от двойки, спира при по-късия списък (= Enum.zip).

zip-with

[zip-with f a b]

f, приложена върху двойките, спира при по-късата (= zipWith).

Размита логика и експерт

expert

[expert "NL describing domain AND rules" "ExpertName"]

Инициализира пълна експертна система: генерира онтологията + абстракциите чрез [fuzzy:ontology], генерира правило за диспечеризация чрез [fuzzy:rule], след което регистрира ключова дума VVL <ExpertName>, която приема един NL низ и връща класифицирания екземпляр. След това извикващият код може да използва [<ExpertName> "свободен вход"] без да пише какъвто и да е друг VVL код.

expert:active

[expert:active]

JSON списък на експертите, регистрирани в текущата сесия (тези, до които рутерът може да диспечеризира). Различава се от [expert:list], който изброява експертите, персистирани на диск чрез [expert:save]. Използвайте за инспекция на ctx._expert_registry — символният рутер консултира този списък при класифициране на въпрос в семейството expert_system.

expert:list

[expert:list]

Връща JSON списък на всички запазени експерти.

expert:load

[expert:load "Name"]

Възстановява запазен експерт: схема, абстракции, правила и ключова дума. Връща променливата на схемата за по-нататъшна употреба.

expert:save

[expert:save "Name"]

Персистира вече изграден експерт (схема, абстракции, правила, ключова дума) за по-нататъшно презареждане чрез [expert:load].

fuzzy:and

[fuzzy:and a b ...]

T-норма AND върху всички аргументи. Използвайте :family <name> за предефиниране.

fuzzy:degree

[fuzzy:degree [§ x] "spam"]

степен 0..1, в която описанието се отнася за x; [fuzzy:degree [§ x] ["ниско" "средно" "високо"]] -> позиция върху скалата, 0..1. Jev в [semanticMode "jev"] (LLM при колебание на Jev), иначе LLM.

fuzzy:degrees

[fuzzy:degrees [§ x] `[name "predicate" name2 ["low" "high"] ...]]

JSON {име: степен 0..1}, всички измерени с ЕДНО извикване на Jev ([semanticMode "jev"]); LLM поема само степените, за които Jev се колебае.

fuzzy:extremely

[fuzzy:extremely x]

x**4 (свръх-концентрация).

fuzzy:family

[fuzzy:family]

Текущо семейство. [fuzzy:family "name"] -> задаване ("zadeh"/"probabilistic"/"lukasiewicz").

fuzzy:few

[fuzzy:few values]

Средно на долната половина (квантификатор «малко са»).

fuzzy:imp

[fuzzy:imp a b]

Нечетка импликация a→b в рамките на активното семейство.

fuzzy:most

[fuzzy:most values]

Средно на горната половина (квантификатор «повечето са»).

fuzzy:not

[fuzzy:not x]

1-x.

fuzzy:ontology

[fuzzy:ontology "NL description of the domain"]

Генерира пълна онтология (класове, атрибути, абстракции, релации) от описание на естествен език. Генерираният VVL се парсва и изчислява незабавно, така че $<Schema> е свързан и готов за употреба с [ontology:fromText], [fuzzy:rule], [ontology:infer] и др.

fuzzy:or

[fuzzy:or a b ...]

T-конорма OR върху всички аргументи. Използвайте :family <name> за предефиниране.

fuzzy:rule

[fuzzy:rule "rule in NL" $schemaVar?]

Транслира правилото на естествен език в формална ontology:rule с инфиксни оператори ~&/~|/~!/≈>. Правилото след това се изчислява чрез [ontology:infer ...] без допълнителни LLM извиквания.

fuzzy:slightly

[fuzzy:slightly x]

x**(1/3) (свръх-дилатация).

fuzzy:somewhat

[fuzzy:somewhat x]

sqrt(x) (дилатация).

fuzzy:very

[fuzzy:very x]

x**2 (концентрация).

fuzzy:wmean

[fuzzy:wmean values weights]

Претеглена аритметична средна на два VVL списъка с еднаква дължина.

Пропозиционална логика

proposition

[proposition "p & q

r"] -> компилира четима INFIX пропозиция.

proposition:and

[proposition:and P Q …]

конюнкция.

proposition:entails

[proposition:entails [P …] G]

1 ако предпоставките влекат G.

proposition:eq

[proposition:eq a b]

a = b.

proposition:ge

[proposition:ge a b]

a ≥ b.

proposition:gt

[proposition:gt a b]

a > b.

proposition:iff

[proposition:iff P Q]

еквивалентност P<->Q.

proposition:implies

[proposition:implies P Q]

импликация P->Q.

proposition:le

[proposition:le a b]

a ≤ b.

proposition:lt

[proposition:lt a b]

a < b.

proposition:ne

[proposition:ne a b]

a ≠ b.

proposition:not

[proposition:not P]

отрицание.

proposition:or

[proposition:or P Q …]

дизюнкция.

proposition:parse

[proposition:parse "p & q

r"] -> същото като [proposition "…"] (форма с пространство от имена).

proposition:sat

[proposition:sat P]

{sat, model} (изпълнимост).

proposition:symbolic

[proposition:symbolic p [q …]]

декларира един или повече пропозиционални символа.

proposition:valid

[proposition:valid P]

1 ако тавтология, 0 в противен случай.

proposition:xor

[proposition:xor P Q …]

изключващо или.

Дневници

log

[log msg...]

Добавя към файла с журнал на контекста (и към конзолата, ако няма работно пространство).

logImage

[logImage img options?]

Показва изображение в REPL. Режими: "image" (по подразбиране, term-image) или "ascii" (Pillow).

logTable

[logTable list_of_objects options?]

Показва Rich таблица от JSON списък. Опции: {box, title, styles}.

print

[print arg1 arg2 ...]

Извежда аргументите в конзолата.

MCP

mcp-call

[mcp-call $client tool_name arguments?]

Извиква инструмент MCP. Връща резултат в JSON формат.

mcp-close

[mcp-close $client]

Затваря MCP връзката и прекратява сървърния процес.

mcp-connect

[mcp-connect name command env?]

Свързва се с MCP сървър чрез stdio. Връща "mcp:<name>".

mcp-list

[mcp-list $client]

Изброява наличните инструменти на MCP сървъра. Връща JSON масив.

mcp-resource

[mcp-resource $client uri]

Чете ресурс от MCP сървъра. Връща JSON.

mcp-servers

[mcp-servers]

Изброява всички активни MCP връзки. Връща JSON масив.

Модули

module:def

[module:def name [export a b ...] body...]

Дефинира модул с пространство от имена. Builtin RAW. Тялото се изпълнява в изолиран контекст. Експорти: - стойностите се четат с [module:get Module name]; - ключовите думи се инсталират само под квалифицирани имена като Module:name.

module:get

[module:get module export]

Връща експортирана стойност от модул. Builtin RAW. `module` и `export` могат да бъдат думи или низове.

module:info

[module:info module]

Връща метаданните на модул като JSON. Builtin RAW. Полета на резултата: name, exports, keywords, path

module:list

[module:list]

Връща имената на заредените/дефинираните модули.

module:load

[module:load "file.vvl"]

Зарежда файл с модул VVL веднъж. Файлът се разрешава чрез правилата за път на текущото работно пространство и обикновено съдържа една или повече форми [module:def ...]. Използва ctx.module_cache: повторното зареждане на същия път връща кеширания резултат. Използвайте [module:reload "file.vvl"] за принудително повторно изпълнение.

module:reload

[module:reload "file.vvl"]

Принудително презарежда файл с модул VVL. Повторно парси и изпълнява файла, заменяйки квалифицираните ключови думи за модули, предефинирани от него.

Мета и интроспекция

compute

[compute stack ops]

Стеков двигател в стил Uiua. Пр.: [compute [] [5 "iota" 2 "*"]]

dump

[dump value]

Връща текстовия дамп VVL на изчислена стойност. Полезно за отстраняване на грешки и за обратни трансформации на стойности: $text = [dump `[a b 1]] -> "[a b 1]" [eval [load $text]] -> [a b 1] Обратната трансформация е гарантирана за основни четими стойности: числа, низове, списъци и JSON. Платформените ресурси могат да връщат само диагностични дампове.

eval

[eval expr]

Кратък псевдоним на [evaluate]. RAW builtin. Предпочитан в работния процес code-as-data: $form = [load "[+ 2 3]"] [eval $form] -> 5 Използвайте [load] за разбор на изходния код без изпълнение, след това [eval] за стартиране на заредената форма.

evaluate

[evaluate expr]

Изчислява изходен код VVL или ЕЛЕМЕНТИТЕ на форма. RAW builtin.

execute

[execute expr]

ИЗПЪЛНЯВА форма, повтаряйки до стабилност. RAW builtin. Това е «do» на VVL.

form

[form value]

Връща текст за показване на човек за изчислена стойност. За разлика от [mold]/[dump], низовете не са в кавички и списъците се обединяват като текст: [form "hello"] -> "hello" [form `[a 10 b]] -> "a 10 b" Използвайте [mold] или [dump], когато ви трябва представяне, предназначено за [load].

help

[help name?]

Изброява builtins или показва помощ за конкретна команда.

import

[import "file.vvl"]

Изпълнява zewnętrzен файл VVL.

inspectWord

[inspectWord name]

Проверява дали дума е builtin, ключова дума или друго.

keyword

[keyword name template]

Дефинира macro.

lambda

[lambda [params] body]

Дефинира анонимна функция.

load

[load source]

Разбира низ от изходен код VVL без изпълнение. Връща: - единствения разбран възел, когато изходният код има един израз на ниво корен; - списък VVL от възли, когато изходният код има няколко оператора на ниво корен.

mem

[mem db key val?]

Хранилище ключ-стойност (четене или запис).

memSearch

[memSearch db val]

Намира ключове по стойност.

mold

[mold value]

Връща четимото представяне VVL на изчислена стойност. `mold` е наименованието в стил REBOL за текстовата форма, ориентирана към обратна трансформация. В момента умишлено споделя същата семантика като [dump]: [mold `[a b 1]] -> "[a b 1]" [eval [load [mold `[a b 1]]]] -> [a b 1] Използвайте [form], когато искате текст за човека, а не четим изходен код.

proai-validator-json

[proai-validator-json JSON|fichier]

Структуриран отчет за валидиране на JSON. Връща JSON с полета score, valid, hasCritical, hasErrors, summary и entries[], всеки с id/severity/category/title/message/path/fix/expected/actual.

quote

[quote expr...]

Връща необработено(и) изражение(я) без изчисление. RAW builtin. - Един аргумент: връща това необработено изражение. - Няколко аргумента: връща списък VVL от необработени изражения.

sub

[sub "file.vvl" args...] or [sub graphName args...]

Извиква под-скрипт или под-граф.

type-of

[type-of value]

Връща стабилно малко-буквено наименование на тип VVL.

version

[version]

JSON {"VAILS", "VVL", "variant"?, "branch"?, "sha"?}. "variant" се появява при експериментални билдове; branch/sha когато git е достъпен.

λ

[λ [params] body]

Псевдоним на lambda.

ODESA

odesa:call

[odesa:call URL token fonction [param valeur] …]

вътрешен форуардър за ключовите думи от [odesa:site].

odesa:site

[odesa:site URL préfixe ?token]

изтегля манифеста на ODESA сървър и инсталира ключови думи префикс:функция (HTTP извикване + повторна оценка на VVL).

Обекти (класове)

class

[class Name : Parent? [field f default :ann?]* [method m [params] body]* [mixin M]* [implements P]*]

class-of

[class-of $obj]

Името на класа на обекта (или типа Python за не-екземпляри).

implements-of

[implements-of $obj ProtocolName]

1, ако обектът имплементира protocol/protocole.

is-a

[is-a $obj ClassName]

1, ако обектът е екземпляр на клас, подклас, mixin или имплементира protocol/protocole.

method-call

[method-call $obj "nom" args...]

извиква метода по неговото ИМЕ (динамично изпращане).

methods-of

[methods-of $obj]

JSON списък с имена на методи.

new

[new ClassName arg1 arg2 ...]

Създава екземпляр. Класове VVL: позиционните аргументи се предават на init(). Класове на онтология: предавайте именувани двойки [attr value] -> VVL_OntologyInstance.

object-class

[object-class $obj]

Име на класа (обект или клас). Иначе грешка.

object-fields

[object-fields $obj]

Имена на полетата, сортирани (същият ред като във VM).

object-get

[object-get $obj champ]

Стойност на полето, "" ако липсва.

object-has

[object-has $obj champ]

1, ако полето съществува, иначе 0.

object-new

[object-new Classe] ou [object-new Classe <{...}>]

Екземпляр с тези полета.

object-set

[object-set $obj champ valeur]

НОВ обект; източникът остава непокътнат.

object-to-json

[object-to-json $obj]

JSON {__vvl_object__, fields, …} — формата на VM.

protocol

[protocol Name [requires methodA] [requires methodB] ...]

Дефинира интерфейс.

relation

[relation Name [domain Class] [range Class] [cardinality ...] [inverse R] [symmetric true] [transitive true]]

Релация в стил OWL.

Office COM

call

[call obj method args...]

Извикване на метод.

excel-chart

[excel-chart $book spec]

Вмъкване на диаграма от JSON спецификация.

excel-formula

[excel-formula $book spec]

Вмъкване на формули от JSON спецификация.

excel-info

[excel-info $book]

Пълна структура на работната книга (листове + клетки) като JSON.

excel-pdf

[excel-pdf $book path]

Експортиране на работна книга като PDF.

excel-style

[excel-style $book spec]

Прилагане на стилове от JSON спецификация.

excel-table

[excel-table $book spec]

Създаване на таблица от JSON спецификация.

get

[get obj prop]

Получаване на свойство.

office

[office app visible?]

Стартиране на приложение Office (word/excel/outlook/powerpoint).

outlook-folders

[outlook-folders $outlook]

Списък на всички пощенски папки на Outlook като JSON [{name,path,unreadCount,itemCount}...].

outlook-list

[outlook-list $outlook folder? max?]

Списък на последните имейли в папка (по подразбиране Входящи, макс. 50). Връща JSON списък.

outlook-move

[outlook-move $outlook entryId targetFolder]

Преместване на имейл в друга папка по път.

outlook-read

[outlook-read $outlook entryId]

Четене на единичен имейл по EntryID. Връща JSON {subject,sender,body,attachments...}.

outlook-save

[outlook-save $outlook entryId path]

Запазване на имейл като .msg файл на диска.

outlook-search

[outlook-search $outlook query folder?]

Търсене на имейли по заявка (DASL филтър). Връща JSON списък.

outlook-send

[outlook-send $outlook to subject body cc? bcc? attachments?]

Изпращане на имейл чрез Outlook.

ppt-animate

[ppt-animate $pres slideIdx shapeIdx effect]

Добавяне на анимационен ефект към фигура.

ppt-chart

[ppt-chart $pres slideIdx spec]

Вмъкване на диаграма от JSON спецификация.

ppt-duplicate

[ppt-duplicate $pres slideIdx]

Дублиране на съществуващ слайд.

ppt-export

[ppt-export $pres path format?]

Експортиране на презентацията (по подразбиране pdf, също pptx, png).

ppt-info

[ppt-info $pres]

Пълна структура на презентацията като JSON {slides:[{layout,shapes:[...]}]}.

ppt-master

[ppt-master $pres action params...]

Манипулиране на главния слайд и оформленията.

ppt-pdf

[ppt-pdf $pres path]

Експортиране на презентацията като PDF файл.

ppt-shape

[ppt-shape $pres slideIdx spec]

Създаване или промяна на фигура от JSON спецификация.

ppt-slide

[ppt-slide $pres action params...]

Управление на слайдове (добавяне, изтриване, дублиране, преместване).

ppt-style

[ppt-style $pres slideIdx shapeIdx style]

Прилагане на визуален стил (запълване, рамка, шрифт) към фигура.

ppt-text

[ppt-text $pres slideIdx shapeIdx text]

Задаване на текстово съдържание на фигура.

ppt-transition

[ppt-transition $pres slideIdx effect]

Задаване на ефект на преход на слайда.

prop

[prop obj path...]

Обхождане на път от свойства върху COM обект.

quit

[quit obj]

Затваряне на приложението Office.

set

[set obj prop val]

Задаване на свойство.

word-info

[word-info $doc]

Пълна структура на документа като JSON (един извик).

word-pdf

[word-pdf $doc path]

Експортиране на документ Word като PDF файл.

word-table

[word-table $doc spec]

Създаване на таблица от JSON спецификация.

word-textbox

[word-textbox $doc spec]

Създаване на текстово поле от JSON спецификация.

Функции от висок ред

every

[every lambda list]

1, ако всеки елемент удовлетворява предиката (= Enum.all?).

filter

[filter lambda list]

Филтрира списък по предикат. Поддържа VVL_List и VVL_Json.

flat

[flat list] or [flat list depth]

Изравнява вложен списък до едноелементен списък. Незадължителна дълбочина ограничава изравняването.

for

[for $var list body]

Итерира по списък или JSON масив. Връща списък от резултатите на тялото.

jit

[jit]

текущ праг на компилация | [jit N] го задава (извиквания до компилиране на гореща ламбда; 0 = JIT изключен, 1 = веднага).

map

[map lambda list]

Прилага функция към всеки елемент на списък.

pmap

[pmap lambda list]

Прилага функция паралелно към всеки елемент на списък.

reduce

[reduce lambda init? list]

Свиване на списък до една стойност (ламбдата приема акумулатор и елемент).

some

[some lambda list]

1, ако поне един елемент удовлетворява предиката (= Enum.any?).

take

[take n serie]

първите n елемента на списък ИЛИ мързелив поток. Свежда поток (дори безкраен) до n елемента.

vectorize

[vectorize]

състояние (1/0) | [vectorize 1|0] включва/изключва векторизиращото ниво на [map] в движение (за целия процес).

PDF (генериране)

PDFMake

[PDFMake <template> $data "out.pdf" $options?]

VVL_Pdf. Шаблонът е VVL израз в скоби (DSL) или низ (Markdown); типът се открива автоматично. Опции: pageSize/orientation/margins/defaultStyle/title/author/input.

PDF (подпис)

pdfListKeys

[pdfListKeys "users"|"guests"|"all"?]

JSON на хранилищата за ключове на работното пространство.

pdfMakeGuestKey

[pdfMakeGuestKey "email" "Nom Prénom" days?]

Създава гостови сертификат .p12 (автоматична парола, криптиран).

pdfMakeUserKey

[pdfMakeUserKey "password" days?]

Създава .p12 за ctx.user в работното пространство.

pdfRevokeKey

[pdfRevokeKey "user:email"|"guest:id"]

1/0. Изтрива .p12 и записва пръстовия отпечатък.

pdfSign

[pdfSign $pdf "out.pdf" "user:email"|"guest:id" password?]

Относителен път на подписания PDF.

pdfVerify

[pdfVerify "signed.pdf"]

JSON {valid, signers:[{cn,email,trust,fingerprint,revoked,...}]}.

PDF / Изображения

IMG

[IMG "path"]

Създава VVL_Img и предварително зарежда неговото base64 представяне.

PDF

[PDF "path"]

Създава VVL_Pdf.

imgToMatrix

[imgToMatrix "path" mode?]

JSON матрица от пиксели (режим "RGB" или "L").

matrixToImg

[matrixToImg matrix "path"]

Записва матрица като файл изображение.

pdfMeta

[pdfMeta $pdfObj]

JSON {pages, author, ...}.

pdfText

[pdfText $pdfObj max_pages?]

Текст, извлечен от PDF.

pdfToImages

[pdfToImages $obj zoom?]

Списък от VVL_Img (по един на страница).

Разбор и диалекти

dialect:def

[dialect:def name grammar]

Регистрира именувана граматика за разбор. Builtin RAW. Граматиката се съхранява в текущия контекст под `name`. Не става builtin, ключова дума или плъгин.

dialect:list

[dialect:list]

Връща имената на регистрираните диалекти.

dialect:parse

[dialect:parse name input]

Разбира вход с помощта на регистрирана граматика. Builtin RAW. `name` може да е дума или низ. `input` се изчислява. Връща същата JSON структура като [parse].

parse

[parse input grammar]

Разбира низ или списък с диалекта за разбор на VVL. Builtin RAW. `input` се изчислява; `grammar` се чете като правила. Връща JSON: {ok, position, captures, rest, expected?} Примитивни правила: digit number num letter space string word list any end Комбинатори: [some rule] едно или повече [any rule] нула или повече [opt rule] незадължително [repeat n rule] точно n пъти [repeat min max rule] между min и max пъти [alt r1 r2 ...] алтернативи [capture name rule] улавя консумирания вход [literal value] съвпадение с литерал [to rule] напредва до rule без да го консумира [thru rule] напредва през rule и го консумира [rule name grammar] дефинира локално подправило [do expr...] изпълнява действие VVL на текущата позиция

Персистиране на обекти

obj-assert

[obj-assert $instance kbname?]

Инжектира факти instance/2 + prop/3 + rel/3 в база Prolog. Без kbname използва базата по подразбиране (вж. [kb default]). Връща броя на фактите.

obj-delete

[obj-delete $instance] or [$instance.delete]

Изтрива инстанция от SQLite по нейния UUID.

obj-find

[obj-find ClassName field value op?]

Търси инстанции по стойност на поле. op: '=' (по подразбиране), '>=', '<=', '>', '<', '!=', 'LIKE'.

obj-join

[obj-join FromClass relField ToClass filterField filterValue]

Релационно обединение между класове чрез таблица vvl_relations.

obj-load

[obj-load ClassName id]

Зарежда инстанция по UUID от SQLite.

obj-query

[obj-query ClassName "SQL WHERE clause"]

Директна SQL заявка към vvl_objects. Използвайте с внимание.

obj-retract

[obj-retract $instance kbname?]

Премахва всички факти Prolog за инстанция от база. Без kbname използва базата по подразбиране. Връща броя на премахнатите факти.

obj-save

[obj-save $instance] or [$instance.save]

Записва инстанция в SQLite. Генерира UUID, индексира скаларни полета, съхранява :ref връзки в vvl_relations.

Оперативно планиране

planning:add-constraint

[planning:add-constraint $schema $planning_id $kind <{params}>?]

създава и записва ново Ограничение (kind, params), добавя го към C, връща идентификатора на ограничението.

planning:add-resource

[planning:add-resource $schema $planning_id $resource_id]

добавя към R.

planning:add-task

[planning:add-task $schema $planning_id $task_id]

добавя задачата към T (идемпотентно), увеличава версията, нормализира.

planning:assign

[planning:assign $schema $planning_id $task_id $resource_ids $start_ts $end_ts]

създава и записва ново Назначение, добавя неговия id към A, връща идентификатора на назначението.

planning:code

[planning:code NAME [horizon L H] body...]

връща VVL кода [optimize:problem ...], който би генерирал [planning:problem ...], без да го регистрира. Инструмент за инспекция на DSL десахаризатора.

planning:compile

[planning:compile $schema $mission_id $h_start_ts $h_end_ts]

Мост Фаза 2: чете Mission/Task/Resource/Reservation от онтологичната база от знания, изчислява допустимостта от requirements_json + skill_ids, генерира DSL източника [planning:problem ...] и го регистрира. Връща името на задачата 'PB_<mission_id>'.

planning:compile-code

[planning:compile-code $schema $mission_id $h_start_ts $h_end_ts]

връща DSL източника [planning:problem ...], генериран от онтологията, без да го регистрира. Инструмент за инспекция на моста Фаза 2.

planning:compose

[planning:compose $schema $p1 $p2 [as $new_id]?]

обединение компонент по компонент + нормализация. Връща идентификатора на новото Планиране.

planning:diff

[planning:diff $schema $p1 $p2]

<{from, to, added: {comp:[...]}, removed: {comp:[...]}, modified}>.

planning:equivalent

[planning:equivalent $schema $p1 $p2]

1 ако p1 ≡ p2 в нормална форма, 0 в противен случай.

planning:from-mission

[planning:from-mission $schema $mission_id $h_start_ts $h_end_ts [as $id]?]

попълва T (инстанции на задачи на мисията), R (активни ресурси), F (потвърдени резервации) от базата от знания.

planning:includes

[planning:includes $schema $p1 $p2]

1 ако p2 ⊑ p1 (компонентно-базирано подмножество), 0 в противен случай.

planning:install-algebra-classes

[planning:install-algebra-classes $schema]

добавя онтологичните класове `Planning` и `Constraint` към схемата (идемпотентно). Необходимо преди всякакво извикване на [planning:new] / [planning:compose] / и др.

planning:meet

[planning:meet $schema $p1 $p2 [as $new_id]?]

p1 ⊓ p2 (непразен meet => припокриване).

planning:new

[planning:new $schema $id $mission_id $h_start_ts $h_end_ts]

записва празна инстанция Planning (T=R=A=C=F=∅). Връща нейния id.

planning:normalize

[planning:normalize $schema $p_id]

прилага правилата за опростяване PDF § 7.4 на място: премахване на осиротели назначения, сливане на дублирани ограничения, отмяна и премахване на изтекли резервации, премахване на precedence(t,t') с t ∉ T.

planning:problem

[planning:problem NAME [horizon L H] body...]

DSL за планиране Фаза 1. Форми на тялото: [task ID [duration N] [window L H]?], [resource ID [kind K]? [capacity N]?], [fixed-reservation R L H], [precedence T1 T2], [on-resource-group T ROLE [resources R1 R2 ...]], [no-overlap-resource R], [objective minimize-makespan]. Десахаризира до [optimize:problem ...] и регистрира задачата. Капацитети > 1 не се поддържат в V0.

planning:reify-assignments

[planning:reify-assignments $schema $problem_name]

след [planning:solve] чете последното решение на решателя и създава инстанции Assignment в базата от знания (записани). Връща списък VVL_Json от речници {task_id, resource_ids, start_ts, end_ts}.

planning:remove-constraint

[planning:remove-constraint $schema $planning_id $constraint_id]

отзовава инстанцията Constraint и я премахва от C.

planning:remove-resource

[planning:remove-resource $schema $planning_id $resource_id]

премахва от R и каскадно отзовава всички Назначения, използващи този ресурс (Назначенията, подкрепени от потвърдена или активна Резервация в F, са защитени).

planning:remove-task

[planning:remove-task $schema $planning_id $task_id]

премахва от T и каскадно отзовава всички Назначения с подходящ task_id.

planning:seed

[planning:seed $schema "ClassName" <{key: val, ...}>]

създава и записва онтологична инстанция от JSON речник. Заобикаля [new ClassName] (знае само OO класове, не онтологични). Полетата от тип списък в плануването (skill_ids, requirements_json, depends_on_task_ids, …) се кодират автоматично в JSON. Връща Prolog id на записаната инстанция.

planning:snapshot

[planning:snapshot $schema $p_id [as $new_id]?]

дълбоко копие с version+1, верижен parent_id, snapshot_ts=now.

planning:solve

[planning:solve NAME [time_limit secs]?]

решава задача, регистрирана чрез [planning:problem ...]. Връща VVL_Json със стойностите на решенията плюс __status__ / __objective__. Същият backend като [optimize:solve].

planning:subtract

[planning:subtract $schema $p1 $p2 [as $new_id]?]

p1 \ p2 компонент по компонент (некомутативно).

planning:unassign

[planning:unassign $schema $planning_id $task_id]

отзовава всички Назначения с подходящ task_id и ги премахва от A.

planning:validate

[planning:validate NAME]

структурна диагностика на задача, регистрирана чрез [planning:problem ...]. Същата диагностична повърхност като [optimize:validate]; полезно когато десахаризаторът е успял, но базовият модел CP-SAT има меки проблеми.

Плъгини

plugin-info

[plugin-info name]

Манифест + подписващ + дайджест + статус.

plugin-inspect

[plugin-inspect "x.vvlplugin"]

Проверява формата, дайджеста, подписа и политиката без инсталиране.

plugin-install

[plugin-install "x.vvlplugin"]

Проверява подписа и политиката, записва .py файла, създава записа.

plugin-load

[plugin-load "name" as kw (mode "inproc")?]

Повторно проверява дайджеста спрямо записа, след което свързва ctx.plugins[kw].

plugin-remove

[plugin-remove "name"]

Разсвързва + изтрива файл(овете) + записа. Идемпотентна операция.

plugin-trust-add

[plugin-trust-add id "<PEM>" tier]

Добавя доверен публичен ключ Ed25519 (ниво: standard|high). Администратор.

plugin-trust-export

[plugin-trust-export id "out.pub"]

Презаписва PEM в plugins/_inbox. Администратор.

plugin-trust-get

[plugin-trust-get id]

Детайли на ключ + PEM. Администратор.

plugin-trust-import

[plugin-trust-import "author.pub" id tier]

Импортира .pub ключ от plugins/_inbox. Администратор.

plugin-trust-list

[plugin-trust-list]

JSON списък на доверените ключове (без необработен PEM). Администратор.

plugin-trust-remove

[plugin-trust-remove id]

Отнема/изтрива ключ. Администратор.

plugin-trust-update

[plugin-trust-update id tier]

Променя нивото на ключ. Администратор.

plugin-unload

[plugin-unload kw]

Премахва свързването на сесията.

plugin-workspace-trust

[plugin-workspace-trust [name] 0|1]

Активира/деактивира plugins_trusted (портата за режим inproc). Администратор.

plugins-list

[plugins-list]

Инсталирани + заредени плъгини (статус).

Плъгини (тайни)

plugin-audit

[plugin-audit n?]

Последни runtime събития на плъгините. Администратор.

plugin-login

[plugin-login plugin profile json]

Съхранява специален профил за удостоверяване за плъгин. Администратор.

plugin-login-list

[plugin-login-list plugin]

Списък на профилите за удостоверяване на плъгин. Администратор.

plugin-logout

[plugin-logout plugin profile]

Изтрива профил за удостоверяване на плъгин. Администратор.

plugin-secret-get

[plugin-secret-get plugin key]

Чете секрет на плъгин. Администратор.

plugin-secret-list

[plugin-secret-list plugin]

Списък на имената на съхранените секрети. Администратор.

plugin-secret-remove

[plugin-secret-remove plugin key]

Изтрива секрет на плъгин. Администратор.

plugin-secret-set

[plugin-secret-set plugin key value]

Съхранява шифриран секрет за плъгин. Администратор.

Релационно програмиране

=/=

[=/=]

[=/=] -> псевдоним на [distinct]: цел/терм miniKanren (валидно в [run]).

==

[==]

[==] -> псевдоним на [unify]: цел/терм miniKanren (валидно в [run]).

absent

[absent]

цел/терм miniKanren (валидно в [run]).

all

[all]

цел/терм miniKanren (валидно в [run]).

any

[any]

цел/терм miniKanren (валидно в [run]).

any-weighted

[any-weighted]

цел/терм miniKanren (валидно в [run]).

bind-csv

[bind-csv Classe $csv ["pk"]]

поражда класа ЗАЕДНО с полетата му, изведени от СХЕМАТА на CSV (колони + изведени типове), и го обвързва с CSV като източник.

commit

[commit]

цел/терм miniKanren (валидно в [run]).

commit-once

[commit-once]

цел/терм miniKanren (валидно в [run]).

conda

[conda]

[conda] -> псевдоним на [commit]: цел/терм miniKanren (валидно в [run]).

conde

[conde]

[conde] -> псевдоним на [any]: цел/терм miniKanren (валидно в [run]).

condu

[condu]

[condu] -> псевдоним на [commit-once]: цел/терм miniKanren (валидно в [run]).

conj

[conj]

[conj] -> псевдоним на [all]: цел/терм miniKanren (валидно в [run]).

cons

[cons]

цел/терм miniKanren (валидно в [run]).

constrain

[constrain]

цел/терм miniKanren (валидно в [run]).

defrel

[predicate nom [params] goal…]

дефинира логическа релация.

disj

[disj]

[disj] -> псевдоним на [any]: цел/терм miniKanren (валидно в [run]).

distinct

[distinct]

цел/терм miniKanren (валидно в [run]).

exists

[exists]

цел/терм miniKanren (валидно в [run]).

fact

[fact]

цел/терм miniKanren (валидно в [run]).

fail

[fail]

цел/терм miniKanren (валидно в [run]).

fresh

[fresh]

[fresh] -> псевдоним на [exists]: цел/терм miniKanren (валидно в [run]).

kb-goal

[kb-goal]

[kb-goal] -> псевдоним на [fact]: цел/терм miniKanren (валидно в [run]).

match-obj

[match-obj]

[match-obj] -> псевдоним на [obj-match]: цел/терм miniKanren (валидно в [run]).

obj-match

[obj-match]

цел/терм miniKanren (валидно в [run]).

once

[once]

цел/терм miniKanren (валидно в [run]).

predicate

[predicate nom [params] goal…]

дефинира логическа релация.

prob

[prob [vars] goal…]

МАРГИНАЛНА вероятност = сума от тежестите на всички решения.

probability

[prob [vars] goal…]

МАРГИНАЛНА вероятност = сума от тежестите на всички решения.

run

[run N [vars] goal…]

СПИСЪК с най-много N решения.

run*

[run-all [vars] goal…]

СПИСЪК с ВСИЧКИ решения (псевдоним на [run-all]).

run-all

[run-all [vars] goal…]

СПИСЪК с ВСИЧКИ решения (материализира се; разминава се при безкрайна релация — вж. [run-stream]).

run-stream

[run-stream [vars] goal…]

Мързелив ПОТОК от решения, консумиран с [take].

run-weighted

[run-weighted [vars] goal…]

СПИСЪК от [решение вероятност] — всеки свят с вероятността си.

s#

[s#]

[s#] -> псевдоним на [succeed]: цел/терм miniKanren (валидно в [run]).

succeed

[succeed]

цел/терм miniKanren (валидно в [run]).

u#

[u#]

[u#] -> псевдоним на [fail]: цел/терм miniKanren (валидно в [run]).

unify

[unify]

цел/терм miniKanren (валидно в [run]).

val

[val]

цел/терм miniKanren (валидно в [run]).

without

[without]

[without] -> псевдоним на [absent]: цел/терм miniKanren (валидно в [run]).

≡

[≡]

[≡] -> псевдоним на [unify]: цел/терм miniKanren (валидно в [run]).

Prolog

facts

[facts name "fact"...]

Добавяне на факти към базата от знания (KB).

kb

[kb set|reset|default|dump|delete|list|save|load name?]

Управление на бази от знания.

prologExists

[prologExists name query]

1 ако съществува поне едно решение, иначе 0.

prologFirstValue

[prologFirstValue name query var default]

Първото свързване на променливата или стойността по подразбиране.

prologSolutions

[prologSolutions name query]

Списък от решения (всяко решение е списък от двойки [var, value]).

prologValues

[prologValues name query var]

Списък от стойности, свързани с променливата в рамките на всички решения.

query

[query JSON|VVL name query...]

Изпълнение на заявки към KB. Връща JSON или списък VVL.

rules

[rules name "rule"...]

Добавяне на правила към KB.

RAG

genius

[genius "question" mode?]

Запитва документацията на VVL чрез RAG. mode: "hybrid" (по подразбиране) или "naive". Изисква предварително :genius-learn.

ragAsk

[ragAsk kb question mode?]

Семантично търсене. Режими: hybrid|naive|local|global (по подразбиране: hybrid).

ragAskAdvanced

[ragAskAdvanced kb question top_k? mode?]

Разширено търсене с прецизен контрол.

ragAskSimple

[ragAskSimple kb question top_k?]

Просто търсене без LLM (top_k=5).

ragCacheClear

[ragCacheClear]

Изчиства целия кэш на RAG в паметта.

ragCacheInfo

[ragCacheInfo]

Информация за кэша (заредени инстанции, памет).

ragClear

[ragClear kb]

Изтрива цялото съдържание (без да унищожава базата).

ragClose

[ragClose kb]

Затваря базата знания (освобождава кэша в паметта). [ragClose] без аргумент затваря всички.

ragDelete

[ragDelete kb]

Изтрива база знания (необратимо).

ragDocContent

[ragDocContent kb docId]

Извлича съдържанието на документ.

ragDocs

[ragDocs kb]

Изброява всички документи (id, статус, размер).

ragExtractJson

[ragExtractJson kb question schema?]

Структурирано извличане в JSON.

ragInfo

[ragInfo kb]

Информация за база знания (размер, файлове, състояние на кэша).

ragInsert

[ragInsert kb text]

Вмъква текст (връща 'OK').

ragInsertBatch

[ragInsertBatch kb texts]

Вмъква множество текстове (списък). По-бързо от многократни единични извиквания.

ragInsertId

[ragInsertId kb text]

Вмъква и връща ID (ПРЕПОРЪЧИТЕЛНО).

ragList

[ragList]

Изброява RAG базите знания, налични в текущия контекст.

ragRemove

[ragRemove kb text]

Изтрива по съдържание (изисква ТОЧЕН текст, предпочитайте ragRemoveById).

ragRemoveById

[ragRemoveById kb docId]

Изтрива по ID (ПРЕПОРЪЧИТЕЛНО).

ragRemoveEntity

[ragRemoveEntity kb entity]

Премахва обект от графа.

ragRemoveRelation

[ragRemoveRelation kb src tgt]

Премахва връзка между 2 обекта.

ragSearchContext

[ragSearchContext kb query mode?]

Извлича само контекста (без генерация).

ragSearchDocs

[ragSearchDocs kb query]

Търсене по ключови думи в документите (без LLM).

ragUpdate

[ragUpdate kb text]

Обновява текст (delete+insert).

ragUpdateById

[ragUpdateById kb docId text]

Обновява по ID.

Регистър и смарт договори

ed25519:keygen

[ed25519:keygen]

{private, public}: нова двойка ключове Ed25519, base64 (private = зародиш от 32 байта). Не е детерминистично: отказва се в договор на регистър.

ed25519:public

[ed25519:public private-key]

публичният ключ в base64 на даден частен ключ.

ed25519:sign

[ed25519:sign private-key "message"]

подпис в base64 (детерминистичен). За клауза [signed] на договор се подписва "<регистър>|<keyword>|<съобщение>".

ed25519:verify

[ed25519:verify public-key "message" signature]

1, ако подписът е валиден, иначе 0.

ledger:anchor

[ledger:anchor name :to "rfc3161"|"opentimestamps" :url "…"?]

закотвя главата на регистъра при външен свидетел (орган за времеви печати, по подразбиране FreeTSA; Bitcoin чрез OpenTimestamps).

ledger:anchor-policy

[ledger:anchor-policy name :to ["rfc3161" "opentimestamps"] :every seconds? :blocks n? | :off]

декларира във веригата (подписан конфигурационен блок) колко често се закотвя регистърът; планировчикът на сървъра го извършва.

ledger:anchor-status

[ledger:anchor-status name]

политика на закотвяне, последна котва по свидетел, още незакотвени блокове, закъснение.

ledger:anchor-tick

[ledger:anchor-tick]

изпълнява веднага едно преминаване на планировчика на закотвянето; връща какво е било закотвено.

ledger:anchor-upgrade

[ledger:anchor-upgrade name]

извлича атестацията от Bitcoin за чакащите котви OpenTimestamps.

ledger:anchors

[ledger:anchors name]

котвите на регистъра (доставчик, височина, статус, дата).

ledger:await-final

[ledger:await-final name height? :timeout seconds]

изчаква, докато блокът (по подразбиране: главата) стане окончателен; `final` е false, ако времето за изчакване (по подразбиране 30 s) изтече преди това.

ledger:block

[ledger:block name height]

блок като JSON.

ledger:check-anchors

[ledger:check-anchors name :offline? :trust "sha256:…"?]

проверява всяка котва спрямо регистъра (пренаписана история) и спрямо нейния свидетел (подпис на TSA + закрепен корен, заглавие на блока на Bitcoin, ключ на свидетеля).

ledger:check-checkpoint

[ledger:check-checkpoint checkpoint :key "sha256:…"?]

от страната на свидетеля: подпис, ключ и съгласуваност с регистъра (открива пренаписана история).

ledger:check-proof

[ledger:check-proof proof :key "sha256:…"?]

проверява резултат от [ledger:proof]: път до корена на състоянието, хеш на блока, подпис, отпечатък на ключа.

ledger:checkpoint

[ledger:checkpoint name]

контролна точка на главата, подписана с ключа на регистъра, за приложенията свидетели.

ledger:create

[ledger:create name :signer "key"? :frozen?]

създава регистър (подписан генезис блок) в работното пространство.

ledger:destroy

[ledger:destroy $self]

в метод на клас на регистър: обектът се премахва от регистъра, когато методът приключи.

ledger:drop

[ledger:drop name]

изтрива изцяло регистър (блокове, състояние, код). Необратимо; записва се в contract.log.

ledger:exists

[ledger:exists name]

1, ако регистърът съществува в работното пространство.

ledger:finality

[ledger:finality name height?]

кворум, окончателна височина, чакащи блокове, атестирана височина по реплика; с височина: дали този блок е окончателен.

ledger:finality-policy

[ledger:finality-policy name :quorum k :replicas {"node": "public key" …} | :off]

декларира във веригата (подписан конфигурационен блок) репликите, на които се опира регистърът: един блок е окончателен, щом k от тях са го атестирали.

ledger:follow

[ledger:follow name :key "sha256:…"? :adopt?]

на работен възел на клъстера: следва регистъра на главния възел на клъстера. Копието е само за четене; всеки блок се изпълнява отново, преди да бъде приложен. :adopt превръща регистър, записван тук (бивш основен възел), в реплика.

ledger:get

[ledger:get name "slot"]

потвърдената стойност на слот ("" при отсъствие).

ledger:has-object

[ledger:has-object Class key…]

1, ако обектът съществува в своя регистър, иначе 0.

ledger:history

[ledger:history name :from h? :limit n? :slot "s"?]

резюмета на блокове (извиквания, записи, хеш).

ledger:info

[ledger:info name]

височина, хеш на главата, конфигурация, внедрени версии на keyword.

ledger:init

[ledger:init name [["slot" value] …]]

начално състояние (блок init), само преди първата транзакция.

ledger:invariant

[ledger:invariant name inv-name "expr"]

добавя инвариант на регистъра върху семейства от слотове (sum(p*), count(p*), min(p*), max(p*), old(...)), проверяван при всяка транзакция; подписан конфигурационен блок.

ledger:invariant-drop

[ledger:invariant-drop name inv-name]

премахва инвариант на регистъра (подписан конфигурационен блок).

ledger:invariants

[ledger:invariants name]

инвариантите на регистъра {име: израз}.

ledger:list

[ledger:list]

регистрите на работното пространство.

ledger:now

[ledger:now]

време на текущия блок (в keyword на регистър).

ledger:object

[ledger:object Class key…]

обектът на клас на регистър такъв, какъвто го познава регистърът (моментна снимка; в транзакция: такъв, какъвто го вижда транзакцията).

ledger:objects

[ledger:objects Class]

ключовете на обектите на клас на регистър.

ledger:promote

[ledger:promote name]

на реплика, назована в политиката за финалност: поема регистъра, когато основният възел е загубен (блок за поемане, подписан с регистрирания ключ на репликата). Необратимо.

ledger:proof

[ledger:proof name "slot"]

доказателство на Меркъл за стойността на слота (или за отсъствието му) в подписаното състояние на блока на главата; може да се провери без сървъра.

ledger:random

[ledger:random n]

цяло число в [0, n), детерминистично (зародишът е хешът на предходния блок).

ledger:replica-key

[ledger:replica-key]

възел реплика: публичният ключ Ed25519 (base64), с който тя подписва своите атестации; за регистриране в политиката за финалност на основния възел.

ledger:replica-status

[ledger:replica-status name?]

възел реплика: височина, изоставане спрямо основния възел, статус (new | ok | error | diverged | detached) и причината за разминаване.

ledger:replicas

[ledger:replicas name]

основен възел: репликите, които са изпълнили отново регистъра и са подписали главата му (реплика, височина, изоставане).

ledger:state

[ledger:state name "prefix"?]

потвърденото състояние като JSON.

ledger:sync

[ledger:sync name?]

възел реплика: изтегля, изпълнява отново и прилага веднага новите блокове на основния възел.

ledger:time

[ledger:time]

време на текущия блок в цели секунди от началото на епохата (в keyword на регистър; детерминистично).

ledger:tx

[ledger:tx name :tx-id "id"? [expr …]]

изпълнява изразите (извиквания на keyword на регистър) в ЕДНА транзакция: всичко или нищо, един блок. Вече познат :tx-id не се изпълнява повторно.

ledger:unfollow

[ledger:unfollow name]

възел реплика: спира да следва основния възел; копието остава, само за четене.

ledger:verify

[ledger:verify name :chain-only?]

проверява хешовете и подписите и изпълнява повторно всяка транзакция; {ok, error, …}.

ledger:witness

[ledger:witness name checkpoint witness-name public-key signature]

записва като котва приподписването на контролна точка от приложение свидетел.

oracle

[oracle "label" expression]

в keyword на регистър: изчислява недетерминистичен израз (LLM, Jev, REST, случайно число) еднократно, записва отговора му в блока и го прочита обратно при повторно изпълнение.

state:del

[state:del alias]

изтрива деклариран слот на състоянието.

state:get

[state:get alias]

стойност на деклариран слот на състоянието в текущата транзакция.

state:has

[state:has alias]

1, ако декларираният слот съществува.

state:put

[state:put alias value]

записва деклариран слот на състоянието (потвърждава се заедно с транзакцията).

Реификация на концепти

concept:approx

[concept:approx $concept "field"]

Обвива поле на концепт като VVL_Approximation с неговия записан произход (LLM/факт/потребител). Разпространява доверието чрез (+, -, *, /). Поле, открито от LLM → "moderate"; поле, зададено от потребителя → "exact".

concept:method

[concept:method $concept "name" [lambda [$params] body]]

Дефиниране на потребителски метод върху концепт (замества генерираните от LLM).

concept:reset

[concept:reset] or [concept:reset "Name"]

Изчистване на кеша на концепти (всички или конкретен).

concepts

[concepts "/path"] or [concepts "/path" as "prefix_"]

Зарежда концептите, запазени от агентите VAILS под kb/neuro/, и излага всеки като $<prefix><slug>. Идемпотентно: повторните изпълнения докладват {status, loaded, updated, unchanged, skipped} въз основа на DB updated_at на всеки концепт.

concepts:available

[concepts:available]

Връща всички индекси на хранилища под kb/neuro/ (заредени или не). Всяко записване има флаг "loaded".

concepts:info

[concepts:info]

Резюме на сесията. [concepts:info "/path"] → Пълен индекс на хранилище (+ блок на сесията ако е текущо зареден).

concepts:list

[concepts:list]

Връща пътищата, заредени в текущата сесия чрез [concepts "/..."] (path, mode, prefix, variables, count, last_loaded_at).

Разрешаване NL→VVL

resolve

[resolve "question NL"] or [§§ "question"]

Неврo-символен resolver. Класифицира подвъпрос на естествен език и го насочва към правилния специалист (изчисление, оптимизация, релационна/Prolog заявка, индукция на правила, извличане на факти, структурирано извличане, експертна система). Използва се вътре в [agent], когато подзадача изисква формула, решавател, извличане, факти или проверяем Approximation вместо ръчно написан код.

resolve:classify

[resolve:classify "question NL"]

{family, sub_kind, confidence, reasoning} — Чист класификатор, без диспечеризация.

resolve:trace

[resolve:trace "question NL"]

{classification, events[], result} — Идентично на resolve, но връща структуриран JSON на следата.

resolveV

[resolveV "question NL"] or [§§? "question"]

Идентично на resolve, но журналира маршрутизацията и генерирания VVL код; използва се за дебъгване. Псевдоним: [§§? "question"].

Онтологична система

ontology:abstract

[ontology:abstract concept]

Маркира концепт като абстрактен (не може да бъде инстанциран директно).

ontology:ask

[ontology:ask query]

Необработена Prolog заявка.

ontology:askMagic

[ontology:askMagic question]

Свободна заявка на естествен език към онтологията с LLM-подпомогнато разрешаване.

ontology:clear-rules

[ontology:clear-rules $schema]

Няма подробна помощ за ontology:clear-rules

ontology:clearInstances

[ontology:clearInstances concept?]

Премахва всички инстанции на концепт (или всички инстанции, ако не е даден концепт).

ontology:commit

[ontology:commit instance]

Записва инстанция в базата от знания.

ontology:comprehend

[ontology:comprehend text]

LLM-базирано извличане на концепти/отношения от текст на естествен език.

ontology:concept-add

[ontology:concept-add name attrs?]

Добавя нов концепт към активната онтология.

ontology:consistent

[ontology:consistent $schema]

Няма подробна помощ за ontology:consistent

ontology:context

[ontology:context name?]

Превключва към или връща текущия контекст на онтологията.

ontology:debugLog

[ontology:debugLog on|off]

Включва или изключва подробното журналиране за отстраняване на грешки в онтологията.

ontology:define

[ontology:define name definitions...]

Дефинира класове и отношения.

ontology:entails

[ontology:entails $schema "goal"]

Няма подробна помощ за ontology:entails

ontology:export

[ontology:export path format?]

Експортира активната онтология на диск (JSON/TTL/Gherkin).

ontology:fromImage

[ontology:fromImage image]

Изгражда/разширява онтологията от изображение чрез vision LLM.

ontology:fromText

[ontology:fromText onto class text debug?]

Извличане с ИИ.

ontology:identify

[ontology:identify entity]

Идентифицира най-близкия концепт, съответстващ на дадено описание на обект.

ontology:in-world

[ontology:in-world world body]

Изчислява тяло от изрази в специфичен контекст на възможен свят (Zalta).

ontology:infer

[ontology:infer query]

Изпълнява една стъпка на извод върху онтологията.

ontology:infer-fixpoint

[ontology:infer-fixpoint]

Изпълнява извода многократно до достигане на фиксирана точка.

ontology:json

[ontology:json]

Сериализира активната онтология в JSON.

ontology:learn

[ontology:learn examples]

Научава нови правила/концепти от маркирани примери.

ontology:listStores

[ontology:listStores]

Изброява всички именовани хранилища на онтологии, заредени в момента.

ontology:load

[ontology:load path]

Зарежда онтология от диска (замества активното хранилище).

ontology:loadGherkin

[ontology:loadGherkin path]

Зарежда онтология от синтаксис Gherkin (.feature).

ontology:loadNamed

[ontology:loadNamed name path]

Зарежда онтология в именован слот (multi-store).

ontology:merge

[ontology:merge source target]

Обединява концепти/инстанции от изходното хранилище в целевото.

ontology:printKB

[ontology:printKB]

Извежда всички Prolog факти в конзолата.

ontology:reset

[ontology:reset]

Изчиства всички факти.

ontology:retract-rule

[ontology:retract-rule "Name" $schema]

Няма подробна помощ за ontology:retract-rule

ontology:rule

[ontology:rule name body]

Дефинира правило за извод.

ontology:satisfies

[ontology:satisfies instance concept]

Проверява дали инстанция удовлетворява предикатите на концепт.

ontology:save

[ontology:save path?]

Записва активната онтология на диска (пътят по подразбиране = пътят на текущото хранилище).

ontology:saveAs

[ontology:saveAs name path]

Записва именовано хранилище на онтологии по конкретен път.

ontology:select

[ontology:select query]

Избира инстанции, съответстващи на структурна заявка.

ontology:set

[ontology:set instance attr value]

Задава атрибут на инстанция на онтологията.

ontology:storePath

[ontology:storePath name?]

Получава/задава пътя на диска за именовано хранилище на онтологии.

ontology:toVVL

[ontology:toVVL]

Сериализира активната онтология обратно в изходен код VVL.

ontology:world

[ontology:world name]

Превключва към възможен свят (модална логика в стил Zalta).

Вградени тестове

test:assert

[test:assert condition message?]

Проверява дали условие е истинно. Връща JSON {ok, name, detail?}. Добавя и резултата към журнала за тестове на текущия контекст, използван от [test:summary].

test:equals

[test:equals expected actual message?]

Проверява структурно равенство. Числа, низове, списъци и JSON в VVL се сравняват по стойност. Връща JSON {ok, name, detail?} и записва резултата за [test:summary].

test:suite

[test:suite name body...]

Изпълнява тестови изрази и връща резюме. RAW builtin. Тялото на набора се оценява последователно в текущия контекст. Използвайте [test:assert] и [test:equals] в тялото.

test:summary

[test:summary]

Връща JSON резюме за текущия контекст. Полета на резултата: total, passed, failed, ok, results.

Пакетна обработка

BATCH

[BATCH "name" "template"]

Създава партида за данни в RAG формат с {placeholders}.

batch-add

[batch-add $batch record]

Добавя запис към партидата. Алтернатива: [$batch.add record]

batch-data

[batch-data $batch]

Връща списъка с форматирани низове. Алтернатива: $batch.data

batch-erase

[batch-erase $batch]

Изчиства всички записи от партидата. Алтернатива: [$batch.erase]

Типове и математика

BINARY

[BINARY s]

Типизирана двоична стойност, кодирана в base64. Форма mold/load: <BINARY:base64>.

BOOL

[BOOL x]

Преобразува стойност в булева (1/0).

DATE

[DATE s]

Валидира формат YYYY-MM-DD и връща типизирана стойност DATE. Форма mold/load: <DATE:YYYY-MM-DD>.

DATETIME

[DATETIME s]

Валидира ISO 8601 и връща типизирана стойност DATETIME. Форма mold/load: <DATETIME:...>.

DURATION

[DURATION s]

Валидира продължителност по ISO 8601 (PT30M) или секунди. Форма mold/load: <DURATION:PT30M>.

EMAIL

[EMAIL s]

Валидира и връща типизирана стойност EMAIL. Форма mold/load: <EMAIL:value>.

FILE

[FILE s]

Типизиран път до файл. Обратните наклонени черти се нормализират до /. Форма mold/load: <FILE:...>.

FLOAT

[FLOAT x]

Преобразува / извлича число с плаваща запетая от низ или число.

INT

[INT x]

Преобразува / извлича цяло число от низ или число.

MONEY

[MONEY currency amount]

Типизирана парична стойност. Форма mold/load: <MONEY:EUR 1200>.

PATH

[PATH s]

Типизиран преносим път. Обратните наклонени черти се нормализират до /. Форма mold/load: <PATH:...>.

STRING

[STRING x]

Преобразува стойност в низ.

TAG

[TAG s]

Типизиран символен таг. Разрешени символи: букви, цифри, _ . : -. Форма mold/load: <TAG:name>.

TIME

[TIME s]

Валидира HH:MM[:SS] и връща типизирана стойност TIME. Форма mold/load: <TIME:HH:MM:SS>.

URL

[URL s]

Валидира и връща типизирана стойност URL. Форма mold/load: <URL:https://...>.

UUID

[UUID s]

Валидира и връща типизирана стойност UUID. Форма mold/load: <UUID:...>.

abs

[abs x]

Абсолютна стойност на x.

average

[avg list]

Средно аритметично на числовите елементи.

avg

[avg list]

Средно аритметично на числовите елементи.

ceil

[ceil x]

Най-малкото цяло число, по-голямо или равно на x.

convert

[convert type val]

Преобразува към 'string','int','float','bool','date','json','xml','list'.

count

[count list]

Брой елементи (ергономичен псевдоним на [length]).

floor

[floor x]

Най-голямото цяло число, по-малко или равно на x.

max

[max list]

Най-големият елемент по числов ключ.

mean

[avg list]

Средно аритметично на числовите елементи.

min

[min list]

Най-малкият елемент по числов ключ.

pow

[pow base exp]

base на степен exp.

range

[range start stop step]

Списък от цели числа (step != 0).

reverse

[reverse list]

Обръща реда на елементите в списък.

round

[round x [ndigits=0]]

x, закръглено до ndigits десетични знака.

sort

[sort list "desc"?|key_lambda?]

Естествено сортиране, опция desc или ключ.

sqrt

[sqrt x]

Квадратен корен от x.

sum

[sum list]

Сума на числовите елементи. Композира се с [run-all].

UI и диалози

_switch

[_switch x]

Изчислява първия аргумент, ако е наличен, иначе връща празен низ. Вътрешен помощен елемент за управление на потока.

alert

[alert msg]

Показва диалогов прозорец за предупреждение (изчакване 60 секунди).

alertOC

[alertOC msg]

Показва диалогов прозорец ОК / Отказ.

alertYN

[alertYN msg]

Показва диалогов прозорец Да / Не.

cancelableDialog

[cancelableDialog msg fields...]

Диалогов прозорец с опция за отказ.

code

[code lang instruction init]

Иска въвеждане на код от потребителя.

dialog

[dialog msg fields...]

Диалогов прозорец със сложна форма.

input

[input title default?]

Интерактивно поле за въвеждане в терминала REPL. Използвайте [inputs] за форми с множество полета.

inputs

[inputs title1 title2 ...]

Многополева форма в REPL с табличен изглед (гарантиран ред).

markdown

[markdown text]

Визуализира Markdown в клиента.

prompt

[prompt msg]

Иска текстов въвод от потребителя.

question

[question msg type]

Въпрос под формата на балонче на чат.

response

[response value]

Записва стойността като официален отговор на задачата (ctx.task_response).

task-param

[task-param key?]

Получава параметър на задача по ключ или всички параметри (JSON), ако не е посочен ключ.

VDOM

hypervisor

[hypervisor action ...]

Управлява инфраструктурата Docker чрез API на Portainer. Връзка: connect, connect-saved, save, disconnect, list, use Система: status, info, resources Контейнери: containers, container, start, stop, restart, logs, exec Стекове: stacks, stack, stack-file, stack-env, stack-deploy, stack-update, stack-start, stack-stop, stack-remove Образи: images, pull, image-remove Томове: volumes, volume, networks, network Шаблони: templates, template, template-create, template-update, template-remove ProSuite: ps-deploy, ps-update, ps-health, ps-instances, ps-scale

vdomAdmin

[vdomAdmin url login password]

Административен клиент VDOM. Връща извикваем обект за управление на VDOM сървъра. Команди: info, apps, app, types, objects, libs, actions, export, dump, sql, exec, raw, plugins... Plugin Manager (чрез [$admin "plugins" $app $api_obj macros_db_id]): list, plugin, macros, macro, setMacro, createMacro, deleteMacro, reloadMacro, reloadEngine, timers, createTimer, updateTimer, deleteTimer, events, createEvent, deleteEvent, kv, kvGet, kvSet, kvDelete, resources, downloadResource, uploadResource, deleteResource, renameResource, databases, downloadDb, uploadDb, deleteDb, queryDb, call, webhook, dump, push

vdomCall

[vdomCall app funcName params?]

Извикване на API функция на VDOM приложение. Връща JSON или String.

vdomConnect

[vdomConnect url login password]

SOAP връзка към VDOM сървър. Връща обект Connection.

vdomGetApp

[vdomGetApp connection appName]

Извлича VDOM приложение по име. Връща обект App.

ВМ и компилация

compile

[compile expr|file]

Компилира VVL към подмножеството на Rust ВМ. Връща програма с .run, .ir, .bytecode, .coverage.

vm-coverage

[vm-coverage]

JSON обобщение на покритието: нативно/хост/разгъване/неподдържано.

vm-csv-writeback

[vm-csv-writeback $csv table-or-plan]

Прилага CSV таблица/план от ВМ към Python CSV обект и го записва.

vm-inventory

[vm-inventory]

JSON инвентар на средата за планиране на покритието на Rust ВМ.

vm-inventory-export

[vm-inventory-export path?]

Записва JSON инвентара на ВМ и Markdown отчета за покритие.

vm-oo-store-writeback

[vm-oo-store-writeback plan]

Прилага план за запис на ОО хранилището от ВМ към Python хранилището.

Вграден VScript

use

[use $lib1 $lib2 ...]

Маркер за библиотеки за [vscript "code" [use ...]]. Всеки $lib е референция [vscript "..."].

vscript

[vscript "code"]

Компилира VScript код и връща извикваема референция. След това [$ref a b ...] го изпълнява (аргументи с индекс 0 чрез args(0)/UBound(args)/argc; променливата `result` съдържа върнатата стойност). Библиотеки: [vscript "code" [use $lib1 $lib2]] инжектира дефиниции (Function/Sub/Class/Const) от всеки $lib (самият той [vscript ...]).

Глас

voice

[voice support]

Проверява дали гласът се поддържа [voice config "name" "client" [...options]] - Създава конфигурация на глас [voice start "config" "instructions" "project"] - Стартира гласова сесия [voice stop $session] - Спира гласова сесия [voice decode type $event] - Декодира събитие (transcript, tools, audio) [voice list] - Изброява активните сесии [voice get "session_id"] - Получава сесия по ID

WebDriver

attr

[attr el name]

Получаване на атрибут.

click

[click el]

Щракване върху елемент.

find

[find driver ['css'|'xpath' sel]]

Намиране на елемент.

go

[go driver url]

Навигиране.

jsExec

[jsExec driver script args...]

Изпълнение на JavaScript в браузъра.

profile-info

[profile-info name]

Подробна JSON информация за профил: размер, размер на Preferences, заключващи файлове, активност на Chrome.

profile-list

[profile-list]

Списък на всички профили Chrome (name, size_mb, prefs_mb, locked) като JSON низове.

profile-purge

[profile-purge name "force"]

Изтриване на целия директорий на профил. Изисква "force" като 2-ри аргумент.

profile-repair

[profile-repair name ?mode]

Поправяне на раздут (>10 МБ) Default/Preferences. mode="keep" (по подразбиране) преименува в .bak; mode="clean" изтрива повредените Preferences и всички съществуващи Preferences.bak.* файлове. Cookies/SSO се запазват.

profile-unlock

[profile-unlock name]

Премахване на остарели заключващи файлове, ако никой процес Chrome не притежава профила. Връща броя на премахнатите.

scrape

[scrape "url" "mode"?]

Лека HTTP заявка (без браузър). mode = "text" (по подразбиране) или "html".

scrapeLinks

[scrapeLinks url]

Сортиран, дедублиран списък на абсолютни href (изключва самоссылки, котви и разширения на ресурси).

screenshot

[screenshot driver path]

Запазване на екрана.

switchFrame

[switchFrame driver target]

Превключване към iframe (елемент или 'default').

text

[text el]

Получаване на текст на елемент.

type

[type el text clear?]

Въвеждане на текст.

wait

[wait driver 'ready'|['css' sel] ms]

Изчакване на условие.

webQuit

[webQuit driver]

Затваряне на браузъра.

webdriver

[webdriver browser ?profile ?flags ?"auto-correct"]

Стартиране на Chrome (uc) или Edge с режим на стелт и управление на профил.

Екосистема ProSuite

proai

[proai "question" mode?]

Запитва документацията на ProAI Builder чрез RAG. Режим: "hybrid" (по подразбиране) или "naive". Изисква предварително :proai-learn.

procontact

[procontact url user pass]

Клиент ProContact.

promail

[promail url user pass]

Клиент ProMail. Подкоманди: mailboxes, mails, send, fetch, archives.

proplanning

[proplanning url user pass]

Клиент ProPlanning.

prosearch

[prosearch url user pass]

Клиент ProSearch.

proshare

[proshare url user pass] или [proshare url user pass <{client: "pdv"}>] Свързване с ProShare. Връща клиент с команди: ФАЙЛОВЕ: ls, upload, uploadFile, mkdir, delete ХРАНИЛИЩЕ: storages, storage, docs, doc, view, metafields РАБОТЕН ПОТОК: submit, submitMulti, lock, unlock ПЛЪГИНИ: macro АДМИН: users, groups, rules, updateRules, logoff Навигация: [$ps "storage" "X"] -> [$storage "ContainerY"] -> [$container "DocStorageZ"] -> $ds.docs

revolut

[revolut action ...]

API на Revolut Merchant. connect: [revolut connect api_key mode?] — режим: sandbox|live (по подразбиране: live) order: [revolut order client amount currency description? metadata?] get: [revolut get client order_id] list: [revolut list client limit?] capture: [revolut capture client order_id amount?] refund: [revolut refund client order_id amount? reason?] cancel: [revolut cancel client order_id]