extension-oql
Agent skill from caffeinelabs/skills.
What it does
- .controllerOnly() (default) — private app data the agent should answer
- .public() — world-readable data, including logged-out visitors (public
- .controllerOrScoped() — per-user data where each user reads only their own
- .scopedPerUser() — strictly private per-user data: each user reads only
- .ownedBy(field) — the field is the owner; visibility is identity equality.
- .ownedByWith(field, canSee) — custom visibility (teams, admins, sharing).
- .toEntity is sugar for OQL.Entity.new<T>(name, func () = coll.values(), …);
Requirements & configuration
- mo:caffeineai-oql/... import. Auto-derivation requires moc >= 1.11 (the
- // not all collections need to be exposed if there is no need — users backs
- orders). Requires an owner column.
- (DMs, private journals). Requires an owner column — prefer
- Scoped levels (.scopedPerUser(), .controllerOrScoped()) need a way to know
Derived from the skill's own SKILL.md documentation · extracted 2026-07-23
Source
Repository: https://github.com/caffeinelabs/skills
extension-oql FAQ
What does the extension-oql skill do?
Make a canister's data queryable by the Caffeine Data Intelligence agent. Use whenever an app stores structured data (Maps/Lists/arrays of records) that should be answerable in natural language — "top customers", "revenue by region", "active projects". Adds a discoverable `schema()` and a JSON `execute()` query endpoint via the `caffeineai-oql` mops package's `Expose` mixin. .controllerOnly() (default) — private app data the agent should answer .public() — world-readable data, including logged-out visitors (public
What does extension-oql require?
mo:caffeineai-oql/... import. Auto-derivation requires moc >= 1.11 (the // not all collections need to be exposed if there is no need — users backs orders). Requires an owner column. (DMs, private journals). Requires an owner column — prefer Scoped levels (.scopedPerUser(), .controllerOrScoped()) need a way to know
How do I install extension-oql?
Run: npx -y skills add https://github.com/caffeinelabs/skills --skill extension-oql --agent claude-code — the source lives at github.com/caffeinelabs/skills.
Maintain extension-oql?
Let people know it's listed here — add the badge (live metrics, light/dark aware) or a plain link to your README or docs.
[](https://getagentictools.com/skills/caffeinelabs-skills-extension-oql?ref=badge) npx agentictools info skills/caffeinelabs-skills-extension-oql The second line is the CLI lookup for this page — handy in READMEs and docs.