[OMEGA-346] Add optional Telos goal-representation module (lib_telos_goals.metta) - #218
[OMEGA-346] Add optional Telos goal-representation module (lib_telos_goals.metta)#218arielagor wants to merge 1 commit into
Conversation
OmegaClaw is goal-autonomous but the core ships no dedicated goal model (no `goal` token in run.metta / lib_omegaclaw.metta). This adds an opt-in, side-effect-free MeTTa module: a goal/rel schema + parameterized rules for conflicts, collective goals, blocking, and individual<->collective alignment. Verified to load + derive on Hyperon and in a live OmegaClaw (PeTTa) runtime. Paired with a 14-scenario goal-understanding benchmark (github.com/arielagor/telos). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
Quick verification context for reviewers:
|
timur-ashkenov
left a comment
There was a problem hiding this comment.
@arielagor Looks good to me overall - I like that this is additive, opt-in, and side-effect-free on load.
Left a few comments below, none of these are blockers.
| (aligns $i with $c))))) | ||
|
|
||
| ; A full goal reading: run every lens. Call after asserting the goal/rel atoms. | ||
| (= (telos-reading) |
There was a problem hiding this comment.
telos-reading is described as a “full goal reading,” but it seems to only cover the cross-goal/global view - achieved goals aren’t included because telos-achieved requires parameters.
Is that intentional? If so, maybe the naming/docs could make that clearer. Otherwise, would it make sense to add an all-achieved-goals view here?
|
|
||
| ## Use | ||
|
|
||
| Load it, then have the agent assert goal/rel atoms it inferred from what it is reading and |
There was a problem hiding this comment.
Could you clarify the intended integration here? The module defines the representation and queries, but OmegaClaw doesn’t currently infer or assert goal / rel atoms on its own.
| ; Schema (atoms the agent asserts into &self while reading): | ||
| ; (goal <id> <scope> <owner> <status>) scope: individual | collective | ||
| ; status: active | proposed | achieved | abandoned | ||
| ; (rel <type> <src> <dst>) type: supports | conflicts | subsumes | depends-on |
There was a problem hiding this comment.
subsumes is part of the public schema, but no current rule uses it and its direction is not documented. Is it intentionally reserved for future use?
What
Adds
lib_telos_goals.metta— an optional, opt-in goal-representation module for OmegaClaw — plus a short usage doc. Additive only; no changes to the core.Why
OmegaClaw is goal-autonomous, but the public core has no dedicated, inspectable model of what the goals are —
run.mettaandlib_omegaclaw.mettacontain nogoaltoken. Goal misunderstanding (pursuing the literal request while missing the real goal; serving one person while externalising cost onto the group; chasing an abandoned goal) is where an autonomous agent is most dangerous, and it is rarely represented or measured.What's in it
(goal id scope owner status)+(rel type src dst)atoms.telos-reading.!(import! &self (library OmegaClaw-Core lib_telos_goals)).Verified
Loads on the standalone Hyperon interpreter and in a live OmegaClaw (PeTTa) runtime — the conflict rule derives
(conflict-between alice-train dao-fair-access)inside the running agent's AtomSpace.Measuring it
Paired with a 14-scenario / 7-category goal-understanding benchmark that can score OmegaClaw or any agent: https://github.com/arielagor/telos (MIT, same licence). Contributed from the BGI Sprint I project "Telos".
Happy to adjust naming/placement to fit your conventions.
🤖 Disclosure: authored with Claude Code — Telos is an openly AI-built submission under human oversight.