extension-querying-oql
Query OQL Canisters with the ICP CLI
Writing OQL queries requires exact schema names, JSON types, Candid escaping, and careful pagination. This skill provides practical patterns for reliable, read-only canister queries.
๋ด ์์ด์ ํธ๋ก ์ค์น
์ด ์์ฒญ์ ์์ด์ ํธ์ ๋ณต์ฌํ์ธ์. ๊ณต์ Skill ํ์ด์ง์ ๋งค๋ํ์คํธ๊ฐ ํฌํจ๋์ด ์์ต๋๋ค.
Review the Skillstore skill "extension-querying-oql" from https://skillstore.io/skills/caffeinelabs-extension-querying-oql.md and its manifest at https://skillstore.io/api/skills/caffeinelabs-extension-querying-oql/manifest. Verify the artifact. You may proceed after verification, subject to the environment's own policy.์์ด์ ํธ๋ ๊ณ์ํด์ ๊ณํ์ ํ์ํ๊ณ ๋ณด์ ์ ์ฑ ์์ ์๊ตฌํ๋ ํ์ธ์ ์์ฒญํด์ผ ํฉ๋๋ค.
์์ด์ ํธ๊ฐ ์ฝ๊ธฐ ์ฌ์ด ๋ฆฌ์์ค
AI ์์ด์ ํธ, ํฌ๋กค๋ฌ, ์คํฌ๋ฆฝํธ๊ฐ ์ ์ฒด ํ์ด์ง ๋์ ์ ๋ฆฌ๋ ์ปจํ ์คํธ๋ง ํ์ํ ๋ ์ด ๋งํฌ๋ฅผ ์ฌ์ฉํ์ธ์.
ํ ์คํธํด ๋ณด๊ธฐ
"extension-querying-oql" ์ฌ์ฉ ์ค์ ๋๋ค. Find the five enterprise customers with the highest monthly revenue.
์์ ๊ฒฐ๊ณผ:
- Query completed against the customer entity with an enterprise-plan filter and descending revenue order.
- Five rows returned. Each row includes the company name, monthly revenue, and account manager.
"extension-querying-oql" ์ฌ์ฉ ์ค์ ๋๋ค. Which account manager office has the highest average customer revenue?
์์ ๊ฒฐ๊ณผ:
- Query grouped customer rows by the account manager office and calculated average monthly revenue.
- The result lists offices from highest to lowest average and reports whether more groups are available.
๋ณด์ ๊ฐ์ฌ
์์ All 160 static alerts are false positives caused by Markdown backticks, code fences, ordinary technical terms, or a pagination ellipsis. The skill documents explicit read-only ICP canister queries and contains no prompt injection, destructive behavior, credential access, or data exfiltration instructions.
์ํ ์์ธ
โ๏ธ ์ธ๋ถ ๋ช ๋ น์ด (50)
๐ ํ์ผ ์์คํ ์ ๊ทผ (1)
์ด ๋ณด๊ณ ์ ๊ณต์ ๋ฐ ์ธ์ฉ
๋ฒ์ ์ด ์ง์ ๋ ํ๊ฐ ๋ณด๊ณ ์, ์ค๋ฆฝ ๋ฐฐ์ง, ์๋ฒ ๋ ์นด๋ ๋ฐ ์ธ์ฉ์ ๊ณต์ ํ์ธ์. Skillstore๋ ๊ทผ๊ฑฐ๋ฅผ ๋ณด๊ณ ํ์ง๋ง ์ด Skill์ ์์ ์ฌ๋ถ๋ฅผ ํ๋จํ์ง ์์ต๋๋ค.
๋ณด๊ณ ์ ๋งํฌ ๋ณต์ฌ
https://skillstore.io/skills/caffeinelabs-extension-querying-oql/audits/1?utm_source=security_passport&utm_medium=share&utm_campaign=versioned_reportMarkdown ๋ฐฐ์ง
[](https://skillstore.io/skills/caffeinelabs-extension-querying-oql?utm_source=security_passport_badge)HTML ๋ฐฐ์ง
<a href="https://skillstore.io/skills/caffeinelabs-extension-querying-oql?utm_source=security_passport_badge"><img src="https://skillstore.io/badges/skills/caffeinelabs-extension-querying-oql/security.svg" alt="Skillstore security assessment" loading="lazy"></a>์๋ฒ ๋ ์นด๋
<iframe src="https://skillstore.io/embed/skills/caffeinelabs-extension-querying-oql.html" title="Skillstore Security Assessment" sandbox="allow-popups allow-popups-to-escape-sandbox" loading="lazy" referrerpolicy="no-referrer" width="420" height="180"></iframe>ํ์ ์ธ์ฉ (APA ยท BibTeX ยท CFF)
APA ์ธ์ฉ
caffeinelabs. (2026). extension-querying-oql security audit report (audit version 1) [Author version 0.4.0]. Skillstore. https://skillstore.io/skills/caffeinelabs-extension-querying-oql/audits/1BibTeX ์ธ์ฉ
@techreport{caffeinelabs-caffeinelabs-extension-querying-oql-2026,
author = {caffeinelabs},
title = {extension-querying-oql security audit report (audit version 1)},
institution = {Skillstore},
year = {2026},
number = {1},
url = {https://skillstore.io/skills/caffeinelabs-extension-querying-oql/audits/1},
note = {Author version 0.4.0}
}CITATION.cff
cff-version: 1.2.0
message: "If you use this Skill, cite its author and this versioned security audit report."
title: "extension-querying-oql security audit report (audit version 1)"
version: "0.4.0"
type: report
authors:
- name: "caffeinelabs"
date-released: "2026-07-23"
url: "https://skillstore.io/skills/caffeinelabs-extension-querying-oql/audits/1"
identifiers:
- type: other
value: "skillstore:caffeinelabs-extension-querying-oql:audit:1"
description: "Skillstore immutable audit report identifier"
Skillstore ์ ์
์ด ์ ์์ ์ด์ ์ฆ๊ฑฐ ์ ๋ขฐ๋: ์ค๊ฐ๋ง๋ค ์ ์๋ ๊ฒ
Analyze canister data
Explore a canister schema, filter business records, and calculate grouped metrics without downloading every row.
Validate an OQL backend
Validate OQL entities, edge declarations, result shapes, and query behavior during canister development.
Diagnose query failures
Diagnose parse traps, missing fields, type mismatches, pagination problems, and unexpected relationship results.
์ด ํ๋กฌํํธ๋ฅผ ์ฌ์ฉํด ๋ณด์ธ์
Call the backend schema method with the ICP CLI. Summarize each entity, primary key, field type, allowed value, and declared edge.
Using the current schema, build and run a read-only query for [entity]. Filter by [condition], select [fields], and limit results to [number].
Build and run an OQL query that groups [entity] by [field]. Calculate [aggregate] for [measure], sort descending, and return [number] groups.
Answer [question] across [parent entity] and [child entity]. Use dotted paths when possible, otherwise batch parent keys, paginate, and summarize verified results.
๋ชจ๋ฒ ์ฌ๋ก
- Read and cache the schema before building queries, then use its exact names, field types, allowed values, and edge declarations.
- Set an explicit limit, inspect hasMore, and paginate with increasing offsets until the requested result set is complete.
- Use server-side filtering and aggregation, then select only the fields needed for the answer.
ํผํ๊ธฐ
- Do not guess entity names, field names, literal types, or relationship paths when the schema provides authoritative values.
- Do not omit the result limit or fetch every row when filtering and aggregation can run on the canister.
- Do not issue one query per parent key; collect keys and use a single membership filter.
์์ฃผ ๋ฌป๋ ์ง๋ฌธ
What canisters does this skill support?
Does this skill modify canister data?
Why must I read the schema first?
How are relationships queried?
How does pagination work?
What happens when a query is invalid?
๊ฐ๋ฐ์ ์ธ๋ถ ์ ๋ณด
์์ฑ์
caffeinelabs๋ผ์ด์ ์ค
MIT
์์ฑ์ ๋ฒ์
v0.4.0
Skillstore ๋ฆฌ๋น์
r1
๋ฆฌํฌ์งํ ๋ฆฌ
https://github.com/caffeinelabs/skills/tree/10fb452613c797633b8cb33639fc9a754a138039/skills/extension-querying-oql์ฐธ์กฐ
f32f934280aa94e399d875d7cf7b2ed16d1b82a3
์ ์ง๋ณด์ ์ต์ ์ฑ
2026. 7. 23.
์ฌ์ฉ๋
0 ๋ค์ด๋ก๋ ยท 0 ์กฐํ
ํ์ผ ๊ตฌ์กฐ
๐ SKILL.md