Skip to content

A profile names a capability class rather than a vendor model

Profiles say fast, standard, strong or strongest, never a model identifier. The generated instructions tell the worker to pick the closest model its environment offers. The canonical layer stays provider-neutral; mapping a class to a concrete model is left to whoever runs the worker, or to a future adapter.

advisory Projected into the worker's instructions. Whether a worker honours it is not observable from outside. Documentation, not enforcement.

Mapping a class to a concrete model is left to whoever runs the worker. Majordomus never selects or invokes a model.

What it means

Profiles say fast, standard, strong or strongest, never a model identifier. The generated instructions tell the worker to pick the closest model its environment offers. The canonical layer stays provider-neutral; mapping a class to a concrete model is left to whoever runs the worker, or to a future adapter.

How it works

capability is a validated field in the profile schema; the projection body carries the sentence "Capability classes are not vendor model names; pick the closest your environment offers". No file under share/skeleton/ contains a model identifier.

How to see it

grep -h '^capability:' .ai/repo/profiles/*.yaml
grep -rnE 'claude-|gpt-|gemini-' .ai/repo/   # nothing

What it does not cover

Advisory. Majordomus does not choose or invoke a model. The class is guidance the worker reads.

Why it exists

Dated model identifiers pinned in the source environment's configuration caused their own end-of-life migration; the routing doctrine that replaced them said "aliases only, never a dated ID". A class is one step more neutral than an alias.

Detail rendered from docs/claims/capability-class.md.

Provenance

defined in
read it on this site · share/skeleton/profiles/deep-work.yaml
implemented in
lib/update.sh · majordomus update
proved by
test/cases/03_update.sh
claim id
capability-class

Verify it yourself

The test runs in a disposable temporary repository and asserts the behaviour, not a string in the source.

from a clone of the repository
bash test/run.sh 03_update

Where this claim is used

Related claims same implementation

The moments this answers