Skip to main content

pp-weaviate-collections

Full collection-config control for Weaviate Cloud, plus schema history, drift diffing, and lint that no other Weaviate tool has. Trigger phrases: `manage weaviate collections`, `weaviate schema`, `weaviate cloud collections`, `tune weaviate vectorizer config`, `use weaviate-collections`, `run weaviate-collections`.

설치로 이동

소스 정보

저장소
mvanhorn/printing-press-library
최근 소스 활동
2026년 8월 10일 03:35
감지된 SKILL.md 언어
영어
스타
1,918
포크
572

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
100 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
pp-weaviate-collections
description
Full collection-config control for Weaviate Cloud, plus schema history, drift diffing, and lint that no other Weaviate tool has. Trigger phrases: `manage weaviate collections`, `weaviate schema`, `weaviate cloud collections`, `tune weaviate vectorizer config`, `use weaviate-collections`, `run weaviate-collections`.
author
SomSamantray
license
Apache-2.0
argument-hint
<command> [args] | install cli|mcp
allowed-tools
Read Bash
metadata
{"openclaw":{"requires":{"bins":"[Truncated]"},"install":["[Truncated]"]}}
# Weaviate Collections — Printing Press CLI ## Prerequisites: Install the CLI This skill drives the `weaviate-collections-pp-cli` binary. **You must verify the CLI is installed before invoking any command from this skill.** If it is missing, install it first: 1. Install via the Printing Press installer. It defaults binaries to `$HOME/.local/bin` on macOS/Linux and `%LOCALAPPDATA%\Programs\PrintingPress\bin` on Windows: ```bash npx -y @mvanhorn/printing-press-library install weaviate-collections --cli-only ``` 2. Verify: `weaviate-collections-pp-cli --version` 3. Ensure the reported install directory is on `$PATH` for the agent/runtime that will invoke this skill. If the `npx` install fails (no Node, offline, etc.), fall back to a direct Go install (requires Go 1.26.5 or newer). This installs into `$GOPATH/bin` (default `$HOME/go/bin`), so add that directory to `$PATH` instead: ```bash go install github.com/mvanhorn/printing-press-library/library/developer-tools/weaviate-collections/cmd/weaviate-collections-pp-cli@latest ``` If `--version` reports "command not found" after install, the runtime cannot see the binary directory on `$PATH`. Do not proceed with skill commands until verification succeeds. Manage every aspect of Weaviate collections — vectorizers, replication, sharding, multi-tenancy, and property indexes — from the command line. Unlike the official weaviate-cli or community tools, this CLI keeps a local history of your collection configs so you can diff, lint, and roll back with confidence. ## When to Use This CLI Use this CLI to create, inspect, and tune Weaviate Cloud collections — vectorizer/replication/sharding/multi-tenancy config, property indexes, and shard management — and to track how collection configs change over time. ## Anti-triggers Do not use this CLI for: - Do not use this CLI for inserting, querying, or searching data objects — it only manages collection (schema) config, not object data. - Do not use this CLI for self-hosted Weaviate cluster administration (nodes, backups, RBAC) — it targets the schema surface only. ## Unique Capabilities These capabilities aren't available in any other tool for this API. ### Local state that compounds - **`schema snapshot`** — Save a point-in-time copy of every collection's config to the local store, then browse history over time. _Use before any risky schema change so you have a rollback reference._ ```bash weaviate-collections-pp-cli schema snapshot --label pre-migration ``` - **`schema diff`** — Diff a collection's live config against a saved snapshot or another collection. _Catch unintended config drift between environments or over time._ ```bash weaviate-collections-pp-cli schema diff Article --against pre-migration ``` ### Reachability mitigation - **`collections lint`** — Flag risky collection configs: no vectorizer set, replication factor of 1, unindexed high-cardinality properties. _Catch production-readiness gaps before they bite in an incident._ ```bash weaviate-collections-pp-cli collections lint Article ``` ### Agent-native plumbing - **`tenants audit`** — See tenant counts and activity status across every collection in one view. _Spot inactive or overloaded tenants across a multi-tenant deployment at a glance._ ```bash weaviate-collections-pp-cli tenants audit --json ``` - **`schema export`** — Export every collection's config as one portable JSON bundle for backup or promotion to another environment. _Promote a schema from staging to production, or restore after an incident, without full data backup._ ```bash weaviate-collections-pp-cli schema export --output schema-bundle.json ``` ## Command Reference **indexes** — Manage indexes - `weaviate-collections-pp-cli indexes <className>` — Returns per-property index state including active reindex progress. This powers the UI to show live migration status. **properties** — Manage properties - `weaviate-collections-pp-cli properties <className>` — Adds a new property definition to an existing collection (`className`) definition. **schema** — Manage schema - `weaviate-collections-pp-cli schema dump` — Retrieves the definitions of all collections (classes) currently in the database schema. - `weaviate-collections-pp-cli schema objects-create` — Defines and creates a new collection (class). If [`AutoSchema`](https://docs.weaviate. - `weaviate-collections-pp-cli schema objects-delete` — Removes a collection definition from the schema. - `weaviate-collections-pp-cli schema objects-get` — Retrieve the definition of a specific collection (`className`), including its properties, configuration - `weaviate-collections-pp-cli schema objects-update` — Updates the configuration settings of an existing collection (`className`) based on the provided definition. **shards** — Manage shards - `weaviate-collections-pp-cli shards get` — Retrieves the status of all shards associated with the specified collection (`className`). - `weaviate-collections-pp-cli shards update` — Updates the status of a specific shard within a collection (e.g., sets it to `READY` or `READONLY`). **tenants** — Manage tenants - `weaviate-collections-pp-cli tenants create` — Creates one or more new tenants for a specified collection (`className`). - `weaviate-collections-pp-cli tenants delete` — Deletes one or more specified tenants from a collection (`className`). - `weaviate-collections-pp-cli tenants exists` — Checks for the existence of a specific tenant within the given collection (`className`). - `weaviate-collections-pp-cli tenants get` — Retrieves a list of all tenants currently associated with the specified collection. - `weaviate-collections-pp-cli tenants get-one` — Retrieves details about a specific tenant within the given collection (`className`) - `weaviate-collections-pp-cli tenants update` — Updates the activity status (e.g., `ACTIVE`, `INACTIVE`, etc. **vectors** — Manage vectors ### Finding the right command When you know what you want to do but not which command does it, ask the CLI directly: ```bash weaviate-collections-pp-cli which "<capability in your own words>" ``` `which` resolves a natural-language capability query to the best matching command from this CLI's curated feature index. Exit code `0` means at least one match; exit code `2` means no confident match — fall back to `--help` or use a narrower query. ## Recipes ### Snapshot before a risky change ```bash weaviate-collections-pp-cli schema snapshot --label pre-change && weaviate-collections-pp-cli schema objects-update Article --replication-config-factor 3 ``` Save a rollback reference, then apply the change. ### Diff a select subset of a large collection config ```bash weaviate-collections-pp-cli schema objects-get Article --agent --select class,vectorizer,replicationConfig ``` Pull only the fields that matter instead of the full nested config blob. ## Auth Setup Run `weaviate-collections-pp-cli auth setup` for the URL and steps to obtain a token (add `--launch` to open the URL). Then store it: ```bash echo "$WEAVIATE_API_KEY" | weaviate-collections-pp-cli auth set-token ``` Or set `WEAVIATE_API_KEY` as an environment variable directly (no `auth set-token` needed). You also need `WEAVIATE_COLLECTIONS_BASE_URL` set to your own Weaviate Cloud cluster URL (e.g. `https://your-cluster-id.weaviate.cloud/v1`, found in the Weaviate Cloud console). Every cluster has a unique hostname, so there is no usable default. Run `weaviate-collections-pp-cli doctor` to verify setup. ## Agent Mode Add `--agent` to any command. Expands to: `--json --compact --no-input --no-color --yes`. - **Pipeable** — JSON on stdout, errors on stderr - **Filterable** — `--select` keeps a subset of fields. Dotted paths descend into nested structures; arrays traverse element-wise. Critical for keeping context small on verbose APIs: ```bash weaviate-collections-pp-cli indexes mock-value --agent --select id,name,status ``` - **Previewable** — `--dry-run` shows the request without sending - **Offline-friendly** — sync/search commands can use the local SQLite store when available - **Non-interactive** — never prompts, every input is a flag - **Explicit retries** — use `--idempotent` only when an already-existing create should count as success, and use `--ignore-missing` only when a missing delete target should count as success ### Response envelope Commands that read from the local store or the API wrap output in a provenance envelope: ```json { "meta": {"source": "live" | "local", "synced_at": "...", "reason": "..."}, "results": <data> } ``` Parse `.results` for data and `.meta.source` to know whether it's live or local. A human-readable `N results (live)` summary is printed to stderr only when stdout is a terminal AND no machine-format flag (`--json`, `--csv`, `--compact`, `--quiet`, `--plain`, `--select`) is set — piped/agent consumers and explicit-format runs get pure JSON on stdout. ## Paths and state Agents should treat the CLI's path resolver as part of the runtime contract: - Use `--home <dir>` for one invocation, or set `WEAVIATE_COLLECTIONS_HOME=<dir>` to relocate all four path kinds under one root. - Use per-kind env vars only when a specific kind must diverge: `WEAVIATE_COLLECTIONS_CONFIG_DIR`, `WEAVIATE_COLLECTIONS_DATA_DIR`, `WEAVIATE_COLLECTIONS_STATE_DIR`, `WEAVIATE_COLLECTIONS_CACHE_DIR`. - Resolution order is per-kind env var, `--home`, `WEAVIATE_COLLECTIONS_HOME`, XDG (`XDG_CONFIG_HOME`, `XDG_DATA_HOME`, `XDG_STATE_HOME`, `XDG_CACHE_HOME`), then platform defaults. - `config` contains settings like `config.toml` and profiles. `data` contains `credentials.toml`, `data.db`, cookies, and auth sidecars. `state` contains persisted queries, jobs, and `teach.log`. `cache` contains regenerable HTTP/cache files. - Stored secrets live in `credentials.toml` under the data dir. Existing legacy `config.toml` secrets are read for compatibility and leave `config.toml` on the first auth write. - Run `weaviate-collections-pp-cli doctor --fail-on warn` to surface path and credential-location warnings. `agent-context` exposes a schema v4 `paths` block for agents that need the resolved dirs. - For MCP, pass relocation through the MCP host config. The MCP binary does not inherit CLI flags: ```json { "mcpServers": { "weaviate-collections": { "command": "weaviate-collections-pp-mcp", "env": { "WEAVIATE_COLLECTIONS_HOME": "/srv/weaviate-collections" } } } } ``` Fleet precedence: an inherited per-kind env var overrides an explicit `--home` for that kind. Use `WEAVIATE_COLLECTIONS_HOME` or per-kind vars as durable fleet levers, and use `--home` only for a single invocation. Relocation is not reversible by unsetting env vars; move files manually before clearing `WEAVIATE_COLLECTIONS_HOME`, or `doctor` will not find credentials left under the former root. ## Automatic learning This CLI ships a self-capturing learning loop. The CLI does its own bookkeeping: every invocation is journaled locally, a failed flag followed by a corrected retry auto-derives a `flag_alias` candidate, and a `teach` on a query family without a playbook auto-synthesizes a `playbook_candidate` from the session's journal. Your job is judgment only: `recall` first, act on surfaced candidates, `teach` the final answer, `playbook amend` when you observe a correction. You never record failures by hand. ### Step 1: `recall` before any discovery Before list/search/drill commands on a new user question, run: ```bash weaviate-collections-pp-cli recall "<user's question>" --agent ``` The response envelope: ```json { "query": "...", "normalized": "<normalized form>", "query_entities": ["..."], "found": true | false, "match_score": 0.0, "results": [ { "resource_id": "...", "resource_type": "...", "venue": "...", "confidence": 2, "entity_match": "exact|partial|unknown", "source": "taught|preseed|pattern", "warnings": ["..."] } ], "mismatches": [ /* only when --debug-mismatches */ ], "warnings": [ /* top-level */ ], "candidates": [ { "id": 12, "class": "flag_alias | playbook_candidate", "summary": "...", "sightings": 3, "last_seen": "...", "rationale": "...", "next_action": ["<trial command>", "weaviate-collections-pp-cli learnings confirm 12"] } ], "playbook": { "query_family": "...", "playbook": { "steps": [ { "cmd": "<command with {slot} substitution>", "purpose": "..." } ], "entity_slots": ["$ENTITY"], "expected_tool_calls": 3 }, "slots_resolved": { "$ENTITY": { "token": "<live token>", "canonical": "<canonical>" } }, "notes": "<workarounds + gotchas for this query family>" }, "notes": "<duplicate surface for non-playbook callers>" } ``` Empty-store short-circuit: if the store has no learnings, playbooks, or candidates yet (recall finds nothing and `learnings list` and `learnings candidates` are both empty), skip recall for the rest of this session instead of taxing every query; resume recall-first once something has been taught. ### Step 2: decision tree Read `candidates`, `playbook`, `notes`, `results[0]`, and warnings in that order: ``` if Candidates present (warnings include "candidates_present"): -> candidates are try-then-confirm, never facts. Follow each candidate's two-step next_action verbatim: run the trial command first, then run `learnings confirm <id>` only after the trial verified the behavior. Reject a wrong candidate with `learnings reject <id>`. -> NEVER re-teach something recall surfaced as a candidate; confirm or reject that candidate instead of teaching a duplicate. -> candidates ride alongside playbooks and resource hits, not instead of them; continue with the branches below after acting on them. if Playbook present: -> READ Playbook.notes verbatim FIRST (workarounds + gotchas the CLI surface doesn't expose) -> replay Playbook.steps in order, substituting Playbook.slots_resolved entries for the entity slot tokens. If a step's slot is unresolved, fall back to discovery for that step only. -> the Playbook's expected_tool_calls is a budget; if you find yourself running materially more, record the divergence via `weaviate-collections-pp-cli playbook amend` at end-of-session. elif Notes present (no Playbook): -> read Notes verbatim before any discovery step; they carry known gotchas for this query family even when no structured choreography exists yet. elif Found AND Results[0].EntityMatch == "exact" AND Results[0].Confidence >= 2: -> skip discovery; fetch live data for Results[*].ResourceID in parallel elif Found AND Results[0].EntityMatch == "partial": -> candidate hint, NOT a hit; read the resource title to validate before trusting elif (any row in Mismatches[] when --debug-mismatches was passed): -> treat as cold start; the stored learning is for a different entity (different canonical resolved from query_entities) else: // Found == false, no playbook, no notes -> cold start; run discovery normally; teach the answer afterward (Step 4). If the family has no playbook yet, that teach auto-synthesizes a playbook candidate from this session's journal - you do not need to record one by hand. ``` Playbook and Notes are orthogonal to the per-resource path. A recall response can carry both a Playbook AND a `Results[]` hit - use both: the Playbook tells you which choreography to run; the resource hits short-circuit specific steps. Default to skipping `mismatches`; pass `--debug-mismatches` only when investigating cold-start surprises. Candidate judgment details: `learnings confirm <id>` prints the candidate's full payload before materializing it - check that the printed payload matches the behavior you verified. `learnings reject <id>` tombstones the derivation signature so the same candidate does not resurface. The envelope carries only the few candidates worth acting on now; `weaviate-collections-pp-cli learnings candidates` lists the full open set. Graceful degradation: if `learnings confirm` is an unknown command, you are driving an older binary - ignore the candidates guidance and follow the rest of the protocol.
GitHub에서 보기
이 SKILL.md는 매우 커서 SkillsMP가 여기에는 첫 섹션만 미리 보여줍니다. GitHub에서 보기