The vaelii.host.* vars this repo reads, and the one namespace in vaelii.agents.*
that reaches for them. vaelii.host.* is the engine's tooling tier, private and free
to change, so a breaking change upstream is an edit here. Each var is the engine's
own under the name the callers use.
The daemon's op tables (vaelii.host.serve): ops, kbless-ops, feed-ops and
write-ops.
vaelii.agents.tools generates the model's tool schemas from the read subset of
ops and dispatches tool calls back through it, so a model's reads are the daemon's
reads with no second copy.
vaelii.agents.mcp.* (the MCP server) reaches further than vaelii.agents.tools does:
its write verbs (assert, unassert) have to reconstruct, ahead of a write, every
predicate a sentence's assert would actually store — rule surfaces, ist nesting,
except/exceptWhen peeling, forall desugaring, storage-context resolution — work
vaelii.core does not expose a single call for. The vars below are that reach, one
per engine fn the server calls outside vaelii.core:
require-token!, api-token and public-bind? (vaelii.host.guard);
register-cache (vaelii.impl.caches); read-forms and load-entries!
(vaelii.impl.io.text); context? and literals (vaelii.impl.naming);
ist-parts and storage-context (vaelii.impl.assert-entry);
soft-priority-surface?, cardinality-surface?, minimize-surface?,
split-exceptWhen, inner-rule and expand-rule (vaelii.impl.rules);
free-vars, conjunction?, peel-exception-strength, forall?,
desugar-forall-literal, defn-sentence?, rule-functor and
sentex-handle (vaelii.impl.sentex); substitute and unify
(vaelii.impl.resolution). None of this is vaelii.host.* or vaelii.impl.*
surface this repo would propose keeping stable on its own account — every var here
is a candidate for a vaelii.core read a write-verb author would otherwise have to
duplicate (see this repo's README, "Reaching into the engine", and docs/mcp.md,
"Engine reach", which proposes the vaelii.core entry point).
The `vaelii.host.*` vars this repo reads, and the one namespace in `vaelii.agents.*` that reaches for them. `vaelii.host.*` is the engine's tooling tier, private and free to change, so a breaking change upstream is an edit here. Each var is the engine's own under the name the callers use. The daemon's op tables (`vaelii.host.serve`): [[ops]], [[kbless-ops]], [[feed-ops]] and [[write-ops]]. `vaelii.agents.tools` generates the model's tool schemas from the read subset of [[ops]] and dispatches tool calls back through it, so a model's reads are the daemon's reads with no second copy. `vaelii.agents.mcp.*` (the MCP server) reaches further than `vaelii.agents.tools` does: its write verbs (`assert`, `unassert`) have to reconstruct, ahead of a write, every predicate a sentence's assert would actually store — rule surfaces, `ist` nesting, `except`/`exceptWhen` peeling, `forall` desugaring, storage-context resolution — work `vaelii.core` does not expose a single call for. The vars below are that reach, one per engine fn the server calls outside `vaelii.core`: [[require-token!]], [[api-token]] and [[public-bind?]] (`vaelii.host.guard`); [[register-cache]] (`vaelii.impl.caches`); [[read-forms]] and [[load-entries!]] (`vaelii.impl.io.text`); [[context?]] and [[literals]] (`vaelii.impl.naming`); [[ist-parts]] and [[storage-context]] (`vaelii.impl.assert-entry`); [[soft-priority-surface?]], [[cardinality-surface?]], [[minimize-surface?]], [[split-exceptWhen]], [[inner-rule]] and [[expand-rule]] (`vaelii.impl.rules`); [[free-vars]], [[conjunction?]], [[peel-exception-strength]], [[forall?]], [[desugar-forall-literal]], [[defn-sentence?]], [[rule-functor]] and [[sentex-handle]] (`vaelii.impl.sentex`); [[substitute]] and [[unify]] (`vaelii.impl.resolution`). None of this is `vaelii.host.*` or `vaelii.impl.*` surface this repo would propose keeping stable on its own account — every var here is a candidate for a `vaelii.core` read a write-verb author would otherwise have to duplicate (see this repo's README, "Reaching into the engine", and docs/mcp.md, "Engine reach", which proposes the `vaelii.core` entry point).
vaelii.host.guard/api-token — the bearer token VAELII_API_TOKEN names, or nil.
`vaelii.host.guard/api-token` — the bearer token `VAELII_API_TOKEN` names, or nil.
vaelii.impl.rules/cardinality-surface? — true when a sentence is a cardinality
wrapper, whose fourth element is the sentence it actually governs.
`vaelii.impl.rules/cardinality-surface?` — true when a sentence is a cardinality wrapper, whose fourth element is the sentence it actually governs.
vaelii.impl.sentex/conjunction? — true when a sentence is an (and …) form.
`vaelii.impl.sentex/conjunction?` — true when a sentence is an `(and …)` form.
vaelii.impl.naming/context? — true when a symbol names a context by vaelii's
convention: a Cx… CapitalCamelCase symbol, or a reified context constant in the
cx/ namespace.
`vaelii.impl.naming/context?` — true when a symbol names a context by vaelii's convention: a `Cx…` CapitalCamelCase symbol, or a reified context constant in the `cx/` namespace.
vaelii.impl.sentex/defn-sentence? — true when a literal is a reifiable-function
definition, whose condition is executable rather than ordinary metadata.
`vaelii.impl.sentex/defn-sentence?` — true when a literal is a reifiable-function definition, whose condition is executable rather than ordinary metadata.
vaelii.impl.sentex/desugar-forall-literal — a (forall …) literal rewritten
to the plain sentence it quantifies over.
`vaelii.impl.sentex/desugar-forall-literal` — a `(forall …)` literal rewritten to the plain sentence it quantifies over.
vaelii.impl.rules/expand-rule — every rule a sentence's exceptWhen-stripped
form expands to, before inner-rule peels each one's wrapping.
`vaelii.impl.rules/expand-rule` — every rule a sentence's `exceptWhen`-stripped form expands to, before `inner-rule` peels each one's wrapping.
The daemon's change-feed operations, keyed by op keyword. None of them is in ops,
so none of them is a model tool: a subscription holds daemon heap.
The daemon's change-feed operations, keyed by op keyword. None of them is in [[ops]], so none of them is a model tool: a subscription holds daemon heap.
vaelii.impl.sentex/forall? — true when a literal is a (forall …) form.
`vaelii.impl.sentex/forall?` — true when a literal is a `(forall …)` form.
vaelii.impl.sentex/free-vars — the free (unbound) variables in a sentence or
goal.
`vaelii.impl.sentex/free-vars` — the free (unbound) variables in a sentence or goal.
vaelii.impl.rules/inner-rule — an expanded rule with its wrapping (priority,
cardinality, minimize) peeled back to the plain (implies …) or fact it governs.
`vaelii.impl.rules/inner-rule` — an expanded rule with its wrapping (priority, cardinality, minimize) peeled back to the plain `(implies …)` or fact it governs.
vaelii.impl.assert-entry/ist-parts — [inner-context inner-sentence] when a
sentence is wrapped in (ist context …), else nil.
`vaelii.impl.assert-entry/ist-parts` — `[inner-context inner-sentence]` when a sentence is wrapped in `(ist context …)`, else nil.
The op keywords in ops whose vaelii.core fn takes no KB, so the first parameter
of the var is an argument the caller sends rather than the KB the daemon supplies.
The op keywords in [[ops]] whose `vaelii.core` fn takes no KB, so the first parameter of the var is an argument the caller sends rather than the KB the daemon supplies.
vaelii.impl.naming/literals — the literal positions a rule-shaped sentence
reads from, in the order a rule evaluates them. vaelii.agents.mcp.verbs walks
these to find every predicate an assert would store, ahead of the write.
`vaelii.impl.naming/literals` — the literal positions a rule-shaped sentence reads from, in the order a rule evaluates them. `vaelii.agents.mcp.verbs` walks these to find every predicate an `assert` would store, ahead of the write.
vaelii.impl.io.text/load-entries! — asserts [form context] entries in one
order-insensitive pass, retrying a form refused because what it rests on is
further down; the same loader vaelii.core/load-text! and the starter use.
vaelii.agents.mcp.overlay loads every overlay file's forms through it.
`vaelii.impl.io.text/load-entries!` — asserts `[form context]` entries in one order-insensitive pass, retrying a form refused because what it rests on is further down; the same loader `vaelii.core/load-text!` and the starter use. `vaelii.agents.mcp.overlay` loads every overlay file's forms through it.
vaelii.impl.rules/minimize-surface? — true when a sentence is a minimize
wrapper, whose fourth element is the sentence it actually governs.
`vaelii.impl.rules/minimize-surface?` — true when a sentence is a minimize wrapper, whose fourth element is the sentence it actually governs.
The daemon's reachable operations, {op-keyword (fn [kb args])}: the allowlisted,
EDN-typed map of vaelii.core calls the browser and the daemon reach a KB through.
The daemon's reachable operations, `{op-keyword (fn [kb args])}`: the allowlisted,
EDN-typed map of `vaelii.core` calls the browser and the daemon reach a KB through.vaelii.impl.sentex/peel-exception-strength — [sentence strength]: a
sentence with its leading exception-strength marker, if any, removed.
`vaelii.impl.sentex/peel-exception-strength` — `[sentence strength]`: a sentence with its leading exception-strength marker, if any, removed.
vaelii.host.guard/public-bind? — true when host is not loopback, so a bind
there is reachable off-box and needs a token.
`vaelii.host.guard/public-bind?` — true when `host` is not loopback, so a bind there is reachable off-box and needs a token.
vaelii.impl.io.text/read-forms — every top-level EDN form in a .clj knowledge
file, or throws :unreadable with the line it opens on. The reader
vaelii.agents.mcp.overlay uses for each overlay file, same as a starter's own.
`vaelii.impl.io.text/read-forms` — every top-level EDN form in a `.clj` knowledge file, or throws `:unreadable` with the line it opens on. The reader `vaelii.agents.mcp.overlay` uses for each overlay file, same as a starter's own.
vaelii.impl.caches/register-cache — registers one bounded-state entry with the
daemon's cache census. vaelii.agents.mcp.server registers the MCP request
body-limit as a configuration entry, not a cache, so the census accounts for it.
`vaelii.impl.caches/register-cache` — registers one bounded-state entry with the daemon's cache census. `vaelii.agents.mcp.server` registers the MCP request body-limit as a configuration entry, not a cache, so the census accounts for it.
vaelii.host.guard/require-token! — throws :unauthorized when host is not
loopback and token is nil. vaelii.agents.mcp.server calls this on the browser
bind before any fork store opens, so a public host with no token refuses at
startup rather than after.
`vaelii.host.guard/require-token!` — throws `:unauthorized` when `host` is not loopback and `token` is nil. `vaelii.agents.mcp.server` calls this on the browser bind before any fork store opens, so a public host with no token refuses at startup rather than after.
vaelii.impl.sentex/rule-functor — the symbol (implies) a rule's normalized
form is headed by.
`vaelii.impl.sentex/rule-functor` — the symbol (`implies`) a rule's normalized form is headed by.
vaelii.impl.sentex/sentex-handle — the (sentexHandle h) term naming a stored
sentex by its integer handle, the argument an except takes to withdraw it.
`vaelii.impl.sentex/sentex-handle` — the `(sentexHandle h)` term naming a stored sentex by its integer handle, the argument an `except` takes to withdraw it.
vaelii.impl.rules/soft-priority-surface? — true when a sentence is a
soft-priority wrapper, whose third element is the sentence it actually governs.
`vaelii.impl.rules/soft-priority-surface?` — true when a sentence is a soft-priority wrapper, whose third element is the sentence it actually governs.
vaelii.impl.rules/split-exceptWhen — [exceptions inner]: a sentence's
exceptWhen clauses peeled from the sentence they qualify.
`vaelii.impl.rules/split-exceptWhen` — `[exceptions inner]`: a sentence's `exceptWhen` clauses peeled from the sentence they qualify.
vaelii.impl.assert-entry/storage-context — the context a rule's consequent
(named by its functor) actually stores to, which the request's own context may
not be: a decontextualized predicate's rule can store elsewhere.
`vaelii.impl.assert-entry/storage-context` — the context a rule's consequent (named by its functor) actually stores to, which the request's own context may not be: a decontextualized predicate's rule can store elsewhere.
vaelii.impl.resolution/substitute — a sentence with a binding map's values
substituted for its variables.
`vaelii.impl.resolution/substitute` — a sentence with a binding map's values substituted for its variables.
vaelii.impl.resolution/unify — bindings that unify two sentences, extending a
given binding map, or nil when they cannot unify under it.
`vaelii.impl.resolution/unify` — bindings that unify two sentences, extending a given binding map, or nil when they cannot unify under it.
The op keywords in ops the daemon files as writes: every op that stores, removes or
annotates a sentex a request names, and :export.
The op keywords in [[ops]] the daemon files as writes: every op that stores, removes or annotates a sentex a request names, and `:export`.
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |