opencode-skills-collection 3.1.9 → 3.1.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/bundled-skills/.antigravity-install-manifest.json +8 -1
  2. package/bundled-skills/browser-testing-with-devtools/SKILL.md +334 -0
  3. package/bundled-skills/docs/integrations/jetski-cortex.md +3 -3
  4. package/bundled-skills/docs/integrations/jetski-gemini-loader/README.md +1 -1
  5. package/bundled-skills/docs/maintainers/repo-growth-seo.md +3 -3
  6. package/bundled-skills/docs/maintainers/skills-update-guide.md +1 -1
  7. package/bundled-skills/docs/sources/sources.md +4 -0
  8. package/bundled-skills/docs/users/bundles.md +1 -1
  9. package/bundled-skills/docs/users/claude-code-skills.md +1 -1
  10. package/bundled-skills/docs/users/gemini-cli-skills.md +1 -1
  11. package/bundled-skills/docs/users/getting-started.md +1 -1
  12. package/bundled-skills/docs/users/kiro-integration.md +1 -1
  13. package/bundled-skills/docs/users/usage.md +4 -4
  14. package/bundled-skills/docs/users/visual-guide.md +4 -4
  15. package/bundled-skills/drizzle-migration-conflict/SKILL.md +179 -0
  16. package/bundled-skills/drizzle-migration-conflict/references/ci-policy.md +87 -0
  17. package/bundled-skills/drizzle-migration-conflict/references/conflict-resolution.md +163 -0
  18. package/bundled-skills/drizzle-migration-conflict/references/report-template.md +69 -0
  19. package/bundled-skills/drizzle-migration-conflict/references/sources.md +51 -0
  20. package/bundled-skills/drizzle-migration-conflict/scripts/check_drizzle_migrations.py +721 -0
  21. package/bundled-skills/frontend-lighthouse/SKILL.md +348 -0
  22. package/bundled-skills/pre-release-review/SKILL.md +198 -0
  23. package/bundled-skills/pre-release-review/references/checklist.md +104 -0
  24. package/bundled-skills/pre-release-review/references/report-template.md +91 -0
  25. package/bundled-skills/re-create/SKILL.md +251 -0
  26. package/bundled-skills/weaviate/SKILL.md +132 -0
  27. package/bundled-skills/weaviate/references/ask.md +36 -0
  28. package/bundled-skills/weaviate/references/create_collection.md +152 -0
  29. package/bundled-skills/weaviate/references/environment_requirements.md +34 -0
  30. package/bundled-skills/weaviate/references/example_data.md +24 -0
  31. package/bundled-skills/weaviate/references/explore_collection.md +50 -0
  32. package/bundled-skills/weaviate/references/fetch_filter.md +88 -0
  33. package/bundled-skills/weaviate/references/get_collection.md +32 -0
  34. package/bundled-skills/weaviate/references/hybrid_search.md +47 -0
  35. package/bundled-skills/weaviate/references/import_data.md +160 -0
  36. package/bundled-skills/weaviate/references/keyword_search.md +38 -0
  37. package/bundled-skills/weaviate/references/list_collections.md +31 -0
  38. package/bundled-skills/weaviate/references/query_search.md +38 -0
  39. package/bundled-skills/weaviate/references/semantic_search.md +46 -0
  40. package/bundled-skills/weaviate/scripts/ask.py +106 -0
  41. package/bundled-skills/weaviate/scripts/create_collection.py +359 -0
  42. package/bundled-skills/weaviate/scripts/example_data.py +945 -0
  43. package/bundled-skills/weaviate/scripts/explore_collection.py +295 -0
  44. package/bundled-skills/weaviate/scripts/fetch_filter.py +261 -0
  45. package/bundled-skills/weaviate/scripts/get_collection.py +122 -0
  46. package/bundled-skills/weaviate/scripts/hybrid_search.py +157 -0
  47. package/bundled-skills/weaviate/scripts/import.py +701 -0
  48. package/bundled-skills/weaviate/scripts/keyword_search.py +142 -0
  49. package/bundled-skills/weaviate/scripts/list_collections.py +77 -0
  50. package/bundled-skills/weaviate/scripts/query_search.py +135 -0
  51. package/bundled-skills/weaviate/scripts/semantic_search.py +139 -0
  52. package/bundled-skills/weaviate/scripts/weaviate_conn.py +231 -0
  53. package/bundled-skills/weaviate-cookbooks/SKILL.md +67 -0
  54. package/bundled-skills/weaviate-cookbooks/references/advanced_rag.md +274 -0
  55. package/bundled-skills/weaviate-cookbooks/references/agentic_rag.md +360 -0
  56. package/bundled-skills/weaviate-cookbooks/references/async_client.md +428 -0
  57. package/bundled-skills/weaviate-cookbooks/references/basic_agent.md +270 -0
  58. package/bundled-skills/weaviate-cookbooks/references/basic_rag.md +219 -0
  59. package/bundled-skills/weaviate-cookbooks/references/data_explorer.md +336 -0
  60. package/bundled-skills/weaviate-cookbooks/references/environment_requirements.md +78 -0
  61. package/bundled-skills/weaviate-cookbooks/references/frontend_interface.md +104 -0
  62. package/bundled-skills/weaviate-cookbooks/references/pdf_multimodal_rag.md +635 -0
  63. package/bundled-skills/weaviate-cookbooks/references/project_setup.md +75 -0
  64. package/bundled-skills/weaviate-cookbooks/references/query_agent_chatbot.md +163 -0
  65. package/package.json +1 -1
  66. package/skills_index.json +156 -0
@@ -0,0 +1,163 @@
1
+ # Build Weaviate Query Agent Chatbot
2
+
3
+ ## Overview
4
+
5
+ Build a full-stack Query Agent chatbot with minimal back-and-forth.
6
+
7
+ Read first:
8
+ - Weaviate Query Agent usage: https://docs.weaviate.io/agents/query/usage
9
+
10
+ ## Instructions
11
+
12
+ ### Core Rules
13
+
14
+ - Use `uv` for Python project/dependency management.
15
+ - Do not manually author `pyproject.toml` or `uv.lock`; let `uv` generate/update them.
16
+ - Use this backend install set:
17
+ - `uv add fastapi 'uvicorn[standard]' weaviate-client weaviate-agents pydantic-settings sse-starlette python-dotenv`
18
+ - If `uv` not available, create a `requirements.txt` for pip installation
19
+ - Depending on user request: consider combining this app with the Data Explorer.
20
+ - If the user explicitly only wants chatbot, create this app independently
21
+ - If the user wants a fully featured chat and data explorer, combine the apps
22
+ - If no explicit instructions are given, ask the user their preference before continuing
23
+ - See the [Next Steps](#next-steps) section for more details
24
+
25
+ ### Fast Setup Commands
26
+
27
+ Project bootstrap:
28
+
29
+ ```bash
30
+ uv init chatbot
31
+ cd chatbot
32
+ uv venv
33
+ uv add fastapi 'uvicorn[standard]' weaviate-client weaviate-agents pydantic-settings sse-starlette python-dotenv
34
+ ```
35
+
36
+ ### Workflow Contract
37
+
38
+ 1. Build backend in one pass.
39
+ 2. Create `.env` from the canonical template in `environment_requirements.md`, then add app-specific fields (for example, `COLLECTIONS`).
40
+ 3. Before asking user to fill env, do non-secret local sanity checks that do not require real credentials (imports/compile/startup-shape checks).
41
+ 4. Ask user to fill real env values:
42
+ - Mandatory: `WEAVIATE_URL`, `WEAVIATE_API_KEY`, `COLLECTIONS`
43
+ - Optional: only provider keys required by their collection setup
44
+ 5. After the user confirms, verify backend starts without errors and provide exact commands to run it in terminal.
45
+
46
+ Do not ask avoidable questions that you can resolve from context.
47
+
48
+ ### Directory Structure
49
+
50
+ Use a modular layout like:
51
+
52
+ ```text
53
+ chatbot/
54
+ backend/
55
+ app/
56
+ main.py
57
+ config.py
58
+ lifespan.py
59
+ dependencies.py
60
+ routers/
61
+ services/
62
+ models/
63
+ .env # local file, never committed
64
+ ```
65
+
66
+ Keep these boundaries:
67
+
68
+ - routers: HTTP only
69
+ - services: business/query-agent logic
70
+ - models: request/response schemas
71
+ - config/lifespan: wiring and startup/shutdown
72
+
73
+ ### Backend Requirements
74
+
75
+ - FastAPI async app with lifespan.
76
+ - Async Weaviate client initialized in lifespan and closed on shutdown.
77
+ - Query Agent service layer (`ask` + `ask_stream`).
78
+ - For async FastAPI backends, use `AsyncQueryAgent` (not `QueryAgent`) so `await agent.ask(...)` and `async for ... in agent.ask_stream(...)` work correctly.
79
+ - Endpoints:
80
+ - `GET /health`
81
+ - `POST /chat`
82
+ - `POST /chat/stream` (SSE)
83
+ - Pydantic settings should read from process environment; local `.env` loading is optional for local development.
84
+ - Conversation history mapping to Weaviate chat message format.
85
+
86
+ ### Source Handling
87
+
88
+ - For every ask response, normalize output into:
89
+ - `answer`: text from `response.final_answer` (fallback `""`)
90
+ - `sources`: list of `{ "collection": ..., "object_id": ... }` built from `response.sources`
91
+ - `source_count`: `len(sources)`
92
+ - `POST /chat` must return `answer`, `sources`, and `source_count`.
93
+ - `POST /chat/stream` must include the same fields in the final SSE event.
94
+ - If no sources are available, return `sources: []` and `source_count: 0`.
95
+
96
+ ### Env Rules
97
+
98
+ Mandatory:
99
+ - `WEAVIATE_URL`
100
+ - `WEAVIATE_API_KEY`
101
+ - `COLLECTIONS`
102
+
103
+ External provider keys:
104
+ - Include every provider key needed by the target collections.
105
+ - Leave unused provider keys empty/commented.
106
+
107
+ CORS:
108
+
109
+ - Default `CORS_ORIGINS` should include:
110
+ - `http://localhost:3000`
111
+ - `http://127.0.0.1:3000`
112
+ - `http://localhost:5173`
113
+ - `http://127.0.0.1:5173`
114
+
115
+ ### Post-Env Hand-Holding (Required)
116
+
117
+ After user says required env values are set, provide the terminal commands to run the backend:
118
+
119
+ ```bash
120
+ cd chatbot/backend
121
+ uv run uvicorn app.main:app --reload --host 127.0.0.1 --port 8000
122
+ ```
123
+
124
+ Then:
125
+
126
+ - Ask user to start the terminal.
127
+ - Run smoke tests yourself against running services.
128
+ - Report pass/fail in plain language and fix blockers.
129
+
130
+ Do not offload detailed testing steps to the user unless they explicitly ask.
131
+
132
+ ## Troubleshooting
133
+
134
+ - `OPTIONS /chat/stream 400`: fix CORS origin mismatch (`localhost` vs `127.0.0.1`).
135
+ - Weaviate startup host errors: ensure `WEAVIATE_URL` is full `https://...` URL.
136
+ - For any other issues, refer to the official library/package documentation using web search.
137
+
138
+ ## Done Criteria
139
+
140
+ - Backend healthy.
141
+ - `/chat` works.
142
+ - `/chat/stream` streams progress/token/final.
143
+ - `/chat` and `/chat/stream` final include `sources` and `source_count`.
144
+ - User can run the server in the terminal with the provided commands.
145
+
146
+ ## Next Steps
147
+
148
+
149
+ This application is currently a chatbot backend. You may optionally offer to integrate it with the [Data Explorer](./data_explorer.md) based on user preference.
150
+
151
+ If the user chooses to combine these two applications, implement the integration as follows:
152
+
153
+ - Create or use a directory `/routes` which separate functions for query agent chat and data exploration. Import the routers in the `main.py` file
154
+ - If a frontend is requested, the frontend should have multiple pages/tabs depending on design choices so that data exploration and chat is separated
155
+ - Consider crossovers between functionalities, e.g. a chat button from the data viewer/collection viewer which takes the user to chat with that collection selected.
156
+ - Run quick tests to ensure the integration is seamless and the user can use both the chatbot and data explorer without any issues.
157
+
158
+ ### Frontend
159
+
160
+ When the user explicitly asks for a frontend, use this reference as guideline:
161
+
162
+ - [Frontend Interface](frontend_interface.md): Build a Next.js frontend to interact with the Weaviate backend.
163
+ - Render source citations from `sources` and `source_count` in the chat response UI.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opencode-skills-collection",
3
- "version": "3.1.9",
3
+ "version": "3.1.11",
4
4
  "description": "OpenCode CLI plugin that automatically downloads and keeps skills up to date.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/skills_index.json CHANGED
@@ -7070,6 +7070,28 @@
7070
7070
  "reasons": []
7071
7071
  }
7072
7072
  },
7073
+ {
7074
+ "id": "browser-testing-with-devtools",
7075
+ "path": "skills/browser-testing-with-devtools",
7076
+ "category": "testing",
7077
+ "name": "browser-testing-with-devtools",
7078
+ "description": "Test browser apps with Chrome DevTools MCP by inspecting live DOM, console logs, network traffic, screenshots, accessibility, and performance traces.",
7079
+ "risk": "critical",
7080
+ "source": "community",
7081
+ "date_added": "2026-06-29",
7082
+ "plugin": {
7083
+ "targets": {
7084
+ "codex": "supported",
7085
+ "claude": "supported"
7086
+ },
7087
+ "setup": {
7088
+ "type": "none",
7089
+ "summary": "",
7090
+ "docs": null
7091
+ },
7092
+ "reasons": []
7093
+ }
7094
+ },
7073
7095
  {
7074
7096
  "id": "brutalism",
7075
7097
  "path": "skills/design-it/brutalism",
@@ -12676,6 +12698,30 @@
12676
12698
  "reasons": []
12677
12699
  }
12678
12700
  },
12701
+ {
12702
+ "id": "drizzle-migration-conflict",
12703
+ "path": "skills/drizzle-migration-conflict",
12704
+ "category": "databases",
12705
+ "name": "drizzle-migration-conflict",
12706
+ "description": "Diagnose, repair, and prevent Drizzle Kit migration conflicts involving generated SQL, snapshots, journals, merge queues, and team workflows.",
12707
+ "risk": "critical",
12708
+ "source": "community",
12709
+ "date_added": "2026-06-29",
12710
+ "plugin": {
12711
+ "targets": {
12712
+ "codex": "blocked",
12713
+ "claude": "supported"
12714
+ },
12715
+ "setup": {
12716
+ "type": "none",
12717
+ "summary": "",
12718
+ "docs": null
12719
+ },
12720
+ "reasons": [
12721
+ "target_specific_home_path"
12722
+ ]
12723
+ }
12724
+ },
12679
12725
  {
12680
12726
  "id": "drizzle-orm-expert",
12681
12727
  "path": "skills/drizzle-orm-expert",
@@ -15252,6 +15298,28 @@
15252
15298
  "reasons": []
15253
15299
  }
15254
15300
  },
15301
+ {
15302
+ "id": "frontend-lighthouse",
15303
+ "path": "skills/frontend-lighthouse",
15304
+ "category": "frontend",
15305
+ "name": "frontend-lighthouse",
15306
+ "description": "Add a portable Lighthouse CI gate for production frontend builds with Core Web Vitals budgets, category floors, median runs, and CI artifacts.",
15307
+ "risk": "safe",
15308
+ "source": "community",
15309
+ "date_added": "2026-06-29",
15310
+ "plugin": {
15311
+ "targets": {
15312
+ "codex": "supported",
15313
+ "claude": "supported"
15314
+ },
15315
+ "setup": {
15316
+ "type": "none",
15317
+ "summary": "",
15318
+ "docs": null
15319
+ },
15320
+ "reasons": []
15321
+ }
15322
+ },
15255
15323
  {
15256
15324
  "id": "frontend-mobile-development-component-scaffold",
15257
15325
  "path": "skills/frontend-mobile-development-component-scaffold",
@@ -25799,6 +25867,28 @@
25799
25867
  "reasons": []
25800
25868
  }
25801
25869
  },
25870
+ {
25871
+ "id": "pre-release-review",
25872
+ "path": "skills/pre-release-review",
25873
+ "category": "operations",
25874
+ "name": "pre-release-review",
25875
+ "description": "Run a read-only pre-release review for deploy readiness, migrations, config, secrets, rollout order, rollback risk, and launch blockers.",
25876
+ "risk": "safe",
25877
+ "source": "community",
25878
+ "date_added": "2026-06-29",
25879
+ "plugin": {
25880
+ "targets": {
25881
+ "codex": "supported",
25882
+ "claude": "supported"
25883
+ },
25884
+ "setup": {
25885
+ "type": "none",
25886
+ "summary": "",
25887
+ "docs": null
25888
+ },
25889
+ "reasons": []
25890
+ }
25891
+ },
25802
25892
  {
25803
25893
  "id": "premium-3d-website",
25804
25894
  "path": "skills/premium-3d-website",
@@ -26989,6 +27079,28 @@
26989
27079
  "reasons": []
26990
27080
  }
26991
27081
  },
27082
+ {
27083
+ "id": "re-create",
27084
+ "path": "skills/re-create",
27085
+ "category": "uncategorized",
27086
+ "name": "re-create",
27087
+ "description": "Completely delete and rewrite a file or module from scratch when structural rot makes patching impossible.",
27088
+ "risk": "critical",
27089
+ "source": "community",
27090
+ "date_added": "2026-06-27",
27091
+ "plugin": {
27092
+ "targets": {
27093
+ "codex": "supported",
27094
+ "claude": "supported"
27095
+ },
27096
+ "setup": {
27097
+ "type": "none",
27098
+ "summary": "",
27099
+ "docs": null
27100
+ },
27101
+ "reasons": []
27102
+ }
27103
+ },
26992
27104
  {
26993
27105
  "id": "react-best-practices",
26994
27106
  "path": "skills/react-best-practices",
@@ -35647,6 +35759,50 @@
35647
35759
  "reasons": []
35648
35760
  }
35649
35761
  },
35762
+ {
35763
+ "id": "weaviate",
35764
+ "path": "skills/weaviate",
35765
+ "category": "databases",
35766
+ "name": "weaviate",
35767
+ "description": "Search, query, inspect, create, and import data into Weaviate vector database collections using official scripts and references.",
35768
+ "risk": "critical",
35769
+ "source": "community",
35770
+ "date_added": "2026-06-29",
35771
+ "plugin": {
35772
+ "targets": {
35773
+ "codex": "supported",
35774
+ "claude": "supported"
35775
+ },
35776
+ "setup": {
35777
+ "type": "none",
35778
+ "summary": "",
35779
+ "docs": null
35780
+ },
35781
+ "reasons": []
35782
+ }
35783
+ },
35784
+ {
35785
+ "id": "weaviate-cookbooks",
35786
+ "path": "skills/weaviate-cookbooks",
35787
+ "category": "ai",
35788
+ "name": "weaviate-cookbooks",
35789
+ "description": "Build Weaviate AI apps from official cookbook blueprints for RAG, agentic RAG, data exploration, multimodal PDF search, async clients, and frontends.",
35790
+ "risk": "safe",
35791
+ "source": "community",
35792
+ "date_added": "2026-06-29",
35793
+ "plugin": {
35794
+ "targets": {
35795
+ "codex": "supported",
35796
+ "claude": "supported"
35797
+ },
35798
+ "setup": {
35799
+ "type": "none",
35800
+ "summary": "",
35801
+ "docs": null
35802
+ },
35803
+ "reasons": []
35804
+ }
35805
+ },
35650
35806
  {
35651
35807
  "id": "web-artifacts-builder",
35652
35808
  "path": "skills/web-artifacts-builder",