SOC 職業分類に基づく
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
直接コマンドでは確認用 Prompt が省略されます。実行前にソースを確認してください。
npx skills add https://github.com/tomevault-io/tomes --skill qdrantコマンドは1行のまま表示されます。コピー前に横へスクロールして全体を確認してください。
ローカルで確認しますか?SkillsMP が現在取得できるファイルをダウンロードできます。
SKILL.md を表示中
> Use when this capability is needed.
Use when writing kernel, account, or note MASM code that reads from or writes to the advice provider (advice stack / advice map) — validate advice data.
Use when writing a Rust test that exercises a failure path or a MASM test that expects a `panic` / `assert` — assert on the specific expected error variant or error code.
| name | qdrant |
| description | > Use when this capability is needed. |
Base URL: http://localhost:6333 (default). Override with QDRANT_URL env var.
All examples use curl. Replace localhost:6333 with the actual Qdrant endpoint.
| Task | Endpoint |
|---|---|
| List collections | GET /collections |
| Create collection | PUT /collections/{name} |
| Delete collection | DELETE /collections/{name} |
| Collection info | GET /collections/{name} |
| Upsert points | PUT /collections/{name}/points |
| Search | POST /collections/{name}/points/search |
| Scroll (paginate) | POST /collections/{name}/points/scroll |
| Get point | GET /collections/{name}/points/{id} |
| Delete points | POST /collections/{name}/points/delete |
| Count points | POST /collections/{name}/points/count |
| Health check | GET /healthz |
curl -s http://localhost:6333/collections | jq
curl -s -X PUT http://localhost:6333/collections/my_collection \
-H "Content-Type: application/json" \
-d '{
"vectors": {
"size": 384,
"distance": "Cosine"
}
}' | jq
Distance metrics: Cosine, Euclid, Dot, Manhattan.
curl -s -X PUT http://localhost:6333/collections/my_collection \
-H "Content-Type: application/json" \
-d '{
"vectors": {
"content": {"size": 384, "distance": "Cosine"},
"title": {"size": 128, "distance": "Cosine"}
}
}' | jq
curl -s http://localhost:6333/collections/my_collection | jq
Key fields: vectors_count, points_count, segments_count, status (green/yellow/red).
curl -s -X DELETE http://localhost:6333/collections/my_collection | jq
curl -sI http://localhost:6333/collections/my_collection -o /dev/null -w "%{http_code}"
# 200 = exists, 404 = not found
curl -s -X PUT http://localhost:6333/collections/my_collection/points \
-H "Content-Type: application/json" \
-d '{
"points": [
{
"id": 1,
"vector": [0.1, 0.2, 0.3, ...],
"payload": {"title": "Example", "category": "test", "score": 0.95}
},
{
"id": 2,
"vector": [0.4, 0.5, 0.6, ...],
"payload": {"title": "Another", "category": "prod", "score": 0.87}
}
]
}' | jq
Point IDs can be integers or UUIDs.
curl -s -X PUT http://localhost:6333/collections/my_collection/points \
-H "Content-Type: application/json" \
-d '{
"points": [
{
"id": 1,
"vector": {
"content": [0.1, 0.2, ...],
"title": [0.3, 0.4, ...]
},
"payload": {"title": "Example"}
}
]
}' | jq
curl -s http://localhost:6333/collections/my_collection/points/1 | jq
curl -s -X POST http://localhost:6333/collections/my_collection/points \
-H "Content-Type: application/json" \
-d '{"ids": [1, 2, 3]}' | jq
curl -s -X POST http://localhost:6333/collections/my_collection/points/delete \
-H "Content-Type: application/json" \
-d '{"points": [1, 2, 3]}' | jq
curl -s -X POST http://localhost:6333/collections/my_collection/points/delete \
-H "Content-Type: application/json" \
-d '{
"filter": {
"must": [
{"key": "category", "match": {"value": "obsolete"}}
]
}
}' | jq
# Total count
curl -s -X POST http://localhost:6333/collections/my_collection/points/count \
-H "Content-Type: application/json" \
-d '{}' | jq '.result.count'
# Count with filter
curl -s -X POST http://localhost:6333/collections/my_collection/points/count \
-H "Content-Type: application/json" \
-d '{
"filter": {
"must": [{"key": "category", "match": {"value": "test"}}]
},
"exact": true
}' | jq '.result.count'
curl -s -X POST http://localhost:6333/collections/my_collection/points/search \
-H "Content-Type: application/json" \
-d '{
"vector": [0.1, 0.2, 0.3, ...],
"limit": 10,
"with_payload": true,
"with_vector": false
}' | jq
curl -s -X POST http://localhost:6333/collections/my_collection/points/search \
-H "Content-Type: application/json" \
-d '{
"vector": [0.1, 0.2, 0.3, ...],
"limit": 5,
"with_payload": true,
"filter": {
"must": [
{"key": "category", "match": {"value": "prod"}}
],
"must_not": [
{"key": "archived", "match": {"value": true}}
]
}
}' | jq
curl -s -X POST http://localhost:6333/collections/my_collection/points/search \
-H "Content-Type: application/json" \
-d '{
"vector": [0.1, 0.2, 0.3, ...],
"limit": 10,
"score_threshold": 0.7,
"with_payload": true
}' | jq
curl -s -X POST http://localhost:6333/collections/my_collection/points/search \
-H "Content-Type: application/json" \
-d '{
"vector": {
"name": "content",
"vector": [0.1, 0.2, 0.3, ...]
},
"limit": 10,
"with_payload": true
}' | jq
# First page
curl -s -X POST http://localhost:6333/collections/my_collection/points/scroll \
-H "Content-Type: application/json" \
-d '{
"limit": 100,
"with_payload": true,
"with_vector": false
}' | jq
# Next page (use next_page_offset from previous response)
curl -s -X POST http://localhost:6333/collections/my_collection/points/scroll \
-H "Content-Type: application/json" \
-d '{
"limit": 100,
"offset": NEXT_PAGE_OFFSET,
"with_payload": true
}' | jq
curl -s -X POST http://localhost:6333/collections/my_collection/points/recommend \
-H "Content-Type: application/json" \
-d '{
"positive": [1, 2],
"negative": [3],
"limit": 10,
"with_payload": true
}' | jq
Filters use must (AND), should (OR), must_not (NOT) clauses.
// Exact match
{"key": "city", "match": {"value": "Berlin"}}
// Match any
{"key": "color", "match": {"any": ["red", "blue", "green"]}}
// Match except
{"key": "status", "match": {"except": ["deleted", "archived"]}}
// Range (numeric)
{"key": "price", "range":
curl -s -X POST http://localhost:6333/collections/my_collection/points/search \
-H "Content-Type: application/json" \
-d '{
"vector": [0.1, 0.2, ...],
"limit": 10,
"filter": {
"must": [
{"key": "status", "match": {"value": "active"}},
{"key": "score", "range": {"gte": 0.5}}
],
"should": [
{"key": "category", "match": {"value": "A"}},
{"key": "category", "match": {"value": "B"}}
],
"must_not": [
{"is_empty": {"key": "embedding"}}
]
}
}' | jq
Create indexes on payload fields for faster filtering.
# Create keyword index
curl -s -X PUT http://localhost:6333/collections/my_collection/index \
-H "Content-Type: application/json" \
-d '{"field_name": "category", "field_schema": "keyword"}' | jq
# Create integer index
curl -s -X PUT http://localhost:6333/collections/my_collection/index \
-H "Content-Type: application/json" \
-d '{"field_name": "score", "field_schema": "integer"}' | jq
# Create float index
curl -s -X PUT http://localhost:6333/collections/my_collection/index \
-H "Content-Type: application/json" \
-d '{"field_name": "price", "field_schema": "float"}' | jq
# Delete index
curl -s -X DELETE http://localhost:6333/collections/my_collection/index/category | jq
Index types: keyword, integer, float, bool, geo, datetime, text, uuid.
curl -s -X POST http://localhost:6333/collections/my_collection/points/payload \
-H "Content-Type: application/json" \
-d '{
"payload": {"new_field": "value", "score": 0.99},
"points": [1, 2, 3]
}' | jq
curl -s -X POST http://localhost:6333/collections/my_collection/points/payload/delete \
-H "Content-Type: application/json" \
-d '{
"keys": ["old_field", "deprecated"],
"points": [1, 2, 3]
}' | jq
curl -s http://localhost:6333/collections/my_collection/snapshots | jq # list
curl -s -X POST http://localhost:6333/collections/my_collection/snapshots | jq # create
curl -s -o snap.tar http://localhost:6333/collections/my_collection/snapshots/NAME # download
curl -s -X DELETE http://localhost:6333/collections/my_collection/snapshots/NAME | jq # delete
# Create/swap alias (atomic)
curl -s -X POST http://localhost:6333/aliases \
-H "Content-Type: application/json" \
-d '{"actions": [{"create_alias": {"alias_name": "prod", "collection_name": "v2"}}]}' | jq
# List aliases
curl -s http://localhost:6333/aliases | jq
# Health check
curl -s http://localhost:6333/healthz
# Instance info
curl -s http://localhost:6333/ | jq
# Cluster info
curl -s http://localhost:6333/cluster | jq
# Telemetry
curl -s http://localhost:6333/telemetry | jq
# Prometheus metrics
curl -s http://localhost:6333/metrics
# 1. Check collection status
curl -s http://localhost:6333/collections/my_collection | jq '.result.status, .result.points_count, .result.vectors_count'
# 2. Check optimizer status
curl -s http://localhost:6333/collections/my_collection | jq '.result.optimizer_status'
# 3. Check segment count (high count = needs optimization)
curl -s http://localhost:6333/collections/my_collection | jq '.result.segments_count'
# Search with vectors returned for inspection
curl -s -X POST http://localhost:6333/collections/my_collection/points/search \
-H "Content-Type: application/json" \
-d '{
"vector": [0.1, 0.2, ...],
"limit": 5,
"with_payload": true,
"with_vector": true
}' | jq '.result[] | {id, score, payload}'
with_payload: true returns all payload; use with_payload: ["field1", "field2"] for specific fieldsgreen = fully optimized, yellow = optimizing, red = erroroffset: null starts from the beginningSource: bug-ops/zeph — distributed by TomeVault.