opcrew 0.1.6 → 0.1.8

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.
@@ -0,0 +1,531 @@
1
+ ---
2
+ name: find-skills
3
+ description: Dual-mode skill discovery system. Reactive mode helps users discover and install agent skills when they ask questions like "how do I do X". Proactive mode enables Captain to analyze projects and tasks to automatically identify and install needed skills. This skill supports both user-driven queries and Captain's autonomous skill selection.
4
+ ---
5
+
6
+ # Find Skills
7
+
8
+ This skill provides a dual-mode system for discovering and installing skills from the open agent skills ecosystem.
9
+
10
+ ## Dual-Mode Architecture
11
+
12
+ ### Reactive Mode
13
+ Respond to user queries when they explicitly ask for skill recommendations or express interest in extending capabilities. The user initiates the process.
14
+
15
+ ### Proactive Mode
16
+ Captain autonomously analyzes projects and tasks to identify skill gaps and install needed capabilities without explicit user requests. This is crew-driven and automatic.
17
+
18
+ ---
19
+
20
+ ## When to Use This Skill
21
+
22
+ ### Reactive Mode Triggers
23
+ Use reactive mode when the user:
24
+
25
+ - Asks "how do I do X" where X might be a common task with an existing skill
26
+ - Says "find a skill for X" or "is there a skill for X"
27
+ - Asks "can you do X" where X is a specialized capability
28
+ - Expresses interest in extending agent capabilities
29
+ - Wants to search for tools, templates, or workflows
30
+ - Mentions they wish they had help with a specific domain (design, testing, deployment, etc.)
31
+
32
+ ### Proactive Mode Triggers
33
+ Captain should use proactive mode when:
34
+
35
+ - **Project initialization**: Starting work on a new project or major feature
36
+ - **Task complexity detected**: A task requires specialized knowledge not in current skill set
37
+ - **Repeated failures**: Multiple attempts at a task indicate a capability gap
38
+ - **Technology mismatch**: Project uses tech stack that differs from crew's default capabilities
39
+ - **Quality requirements**: Task demands best practices or domain-specific patterns
40
+
41
+ ---
42
+
43
+ ## What is the Skills CLI?
44
+
45
+ The Skills CLI (`npx skills`) is the package manager for the open agent skills ecosystem. Skills are modular packages that extend agent capabilities with specialized knowledge, workflows, and tools.
46
+
47
+ **Key commands:**
48
+
49
+ - `npx skills find [query]` - Search for skills interactively or by keyword
50
+ - `npx skills add <package>` - Install a skill from GitHub or other sources
51
+ - `npx skills check` - Check for skill updates
52
+ - `npx skills update` - Update all installed skills
53
+
54
+ **Browse skills at:** https://skills.sh/
55
+
56
+ ---
57
+
58
+ ## Reactive Mode: Help Users Find Skills
59
+
60
+ ### Step 1: Understand What They Need
61
+
62
+ When a user asks for help with something, identify:
63
+
64
+ 1. The domain (e.g., React, testing, design, deployment)
65
+ 2. The specific task (e.g., writing tests, creating animations, reviewing PRs)
66
+ 3. Whether this is a common enough task that a skill likely exists
67
+
68
+ ### Step 2: Check the Leaderboard First
69
+
70
+ Before running a CLI search, check the [skills.sh leaderboard](https://skills.sh/) to see if a well-known skill already exists for the domain. The leaderboard ranks skills by total installs, surfacing the most popular and battle-tested options.
71
+
72
+ For example, top skills for web development include:
73
+ - `vercel-labs/agent-skills` — React, Next.js, web design (100K+ installs each)
74
+ - `anthropics/skills` — Frontend design, document processing (100K+ installs)
75
+
76
+ ### Step 3: Search for Skills
77
+
78
+ If the leaderboard doesn't cover the user's need, run the find command:
79
+
80
+ ```bash
81
+ npx skills find [query]
82
+ ```
83
+
84
+ For example:
85
+
86
+ - User asks "how do I make my React app faster?" → `npx skills find react performance`
87
+ - User asks "can you help me with PR reviews?" → `npx skills find pr review`
88
+ - User asks "I need to create a changelog" → `npx skills find changelog`
89
+
90
+ ### Step 4: Verify Quality Before Recommending
91
+
92
+ **Do not recommend a skill based solely on search results.** Always verify:
93
+
94
+ 1. **Install count** — Prefer skills with 1K+ installs. Be cautious with anything under 100.
95
+ 2. **Source reputation** — Official sources (`vercel-labs`, `anthropics`, `microsoft`) are more trustworthy than unknown authors.
96
+ 3. **GitHub stars** — Check the source repository. A skill from a repo with <100 stars should be treated with skepticism.
97
+
98
+ ### Step 5: Present Options to the User
99
+
100
+ When you find relevant skills, present them to the user with:
101
+
102
+ 1. The skill name and what it does
103
+ 2. The install count and source
104
+ 3. The install command they can run
105
+ 4. A link to learn more at skills.sh
106
+
107
+ Example response:
108
+
109
+ ```
110
+ I found a skill that might help! The "react-best-practices" skill provides
111
+ React and Next.js performance optimization guidelines from Vercel Engineering.
112
+ (185K installs)
113
+
114
+ To install it:
115
+ npx skills add vercel-labs/agent-skills@react-best-practices
116
+
117
+ Learn more: https://skills.sh/vercel-labs/agent-skills/react-best-practices
118
+ ```
119
+
120
+ ### Step 6: Offer to Install
121
+
122
+ If the user wants to proceed, you can install the skill for them:
123
+
124
+ ```bash
125
+ npx skills add <owner/repo@skill> -g -y
126
+ ```
127
+
128
+ The `-g` flag installs globally (user-level) and `-y` skips confirmation prompts.
129
+
130
+ ---
131
+
132
+ ## Captain's Proactive Workflow
133
+
134
+ When operating in proactive mode, Captain follows this 6-step process:
135
+
136
+ ### Step 1: Analyze Context
137
+ - Review project structure, dependencies, and configuration files
138
+ - Identify primary technologies: frameworks, languages, build tools
139
+ - Note existing patterns: testing frameworks, CI/CD setup, documentation style
140
+
141
+ ### Step 2: Identify Capability Gaps
142
+ - Compare project requirements against current crew skill set
143
+ - Ask: "Does the crew have domain knowledge for this tech stack?"
144
+ - Flag areas where specialized knowledge would improve quality or speed
145
+
146
+ ### Step 3: Search for Relevant Skills
147
+ - Use targeted queries based on identified gaps
148
+ - Prioritize skills matching the project's exact tech stack
149
+ - Consider cross-cutting concerns (security, performance, accessibility)
150
+
151
+ ### Step 4: Evaluate Skill Quality
152
+ - Verify install count (prefer 1K+)
153
+ - Check source reputation
154
+ - Review skill documentation for relevance
155
+ - Assess maintenance status (recent updates, issue activity)
156
+
157
+ ### Step 5: Delegate Installation
158
+ - Create installation task for Boatswain
159
+ - Specify exact package names and flags
160
+ - Include verification requirements
161
+
162
+ ### Step 6: Verify and Document
163
+ - Confirm skill is loaded and functional
164
+ - Update project documentation with installed skills
165
+ - Note skill usage in crew knowledge base
166
+
167
+ ---
168
+
169
+ ## Project-Level Skill Assessment
170
+
171
+ When Captain analyzes a new project, follow this assessment protocol:
172
+
173
+ ### Technology Stack Analysis
174
+
175
+ 1. **Read package.json / requirements.txt / Cargo.toml**
176
+ - Identify frameworks (Next.js, Django, Rocket)
177
+ - Note testing libraries (Jest, pytest, cargo test)
178
+ - Find build tools (Webpack, setuptools, cargo)
179
+
180
+ 2. **Check configuration files**
181
+ - CI/CD configs (.github/workflows, GitLab CI)
182
+ - Linting/formatting (ESLint, Black, rustfmt)
183
+ - Environment files (.env.example, docker-compose)
184
+
185
+ 3. **Identify skill domains**
186
+
187
+ | Technology Detected | Skill Domain to Search | Example Query |
188
+ |---------------------|------------------------|---------------|
189
+ | Next.js / React | Frontend framework patterns | `nextjs react` |
190
+ | PostgreSQL / MongoDB | Database patterns | `database postgres` |
191
+ | Stripe / Payment APIs | Payment integration | `stripe payment` |
192
+ | Jest / Vitest | Testing best practices | `jest testing` |
193
+ | Docker / Kubernetes | DevOps deployment | `docker kubernetes` |
194
+ | Tailwind / CSS frameworks | Styling patterns | `tailwind css` |
195
+
196
+ ### Example: Next.js E-commerce Project
197
+
198
+ **Analysis:**
199
+ ```
200
+ Project: E-commerce platform
201
+ Stack: Next.js 14, TypeScript, Stripe, PostgreSQL, Tailwind, Jest
202
+ Current Skills: General coding, git workflow
203
+
204
+ Gaps Identified:
205
+ 1. Next.js App Router patterns (new paradigm)
206
+ 2. Stripe payment integration (specialized domain)
207
+ 3. PostgreSQL schema design (database expertise)
208
+ 4. E-commerce security best practices
209
+ ```
210
+
211
+ **Skill Search Queries:**
212
+ ```bash
213
+ npx skills find nextjs app-router
214
+ npx skills find stripe payment
215
+ npx skills find postgresql database
216
+ npx skills find ecommerce security
217
+ ```
218
+
219
+ **Prioritization:**
220
+ 1. **Critical**: `stripe payment` (core functionality, high risk)
221
+ 2. **High**: `nextjs app-router` (architectural decisions)
222
+ 3. **Medium**: `postgresql database` (optimization)
223
+ 4. **Low**: `ecommerce security` (can be addressed incrementally)
224
+
225
+ ---
226
+
227
+ ## Task-Level Skill Selection
228
+
229
+ For specific tasks, Captain uses this decision tree:
230
+
231
+ ### Task Analysis Protocol
232
+
233
+ 1. **Is this a domain-specific task?**
234
+ - NO → Proceed with general capabilities
235
+ - YES → Continue to step 2
236
+
237
+ 2. **Does crew have relevant skill installed?**
238
+ - YES → Use existing skill
239
+ - NO → Continue to step 3
240
+
241
+ 3. **Is there a high-quality skill available?**
242
+ - Search with specific query
243
+ - Verify quality (1K+ installs, reputable source)
244
+ - YES → Install and use
245
+ - NO → Proceed with general capabilities, document gap
246
+
247
+ ### Example: Testing Payment Module
248
+
249
+ **Task:** "Add tests for Stripe payment webhook handler"
250
+
251
+ **Analysis:**
252
+ ```
253
+ Domain: Testing, Stripe, Webhooks
254
+ Current Skills: Jest basics
255
+ Gap: Stripe-specific testing patterns, webhook simulation
256
+
257
+ Skill Search:
258
+ npx skills find stripe testing webhook
259
+ ```
260
+
261
+ **Decision:**
262
+ - Found: `vercel-labs/agent-skills@stripe-testing` (12K installs)
263
+ - Quality: High (Vercel source, good docs)
264
+ - Action: Install before proceeding
265
+
266
+ **Delegation:**
267
+ ```
268
+ Task for Boatswain:
269
+ - Install: npx skills add vercel-labs/agent-skills@stripe-testing -g -y
270
+ - Verify: Check skill loads in environment
271
+ - Report: Confirm installation success
272
+ ```
273
+
274
+ ### Decision Tree Diagram
275
+
276
+ ```
277
+ Task Requires Specialized Knowledge?
278
+
279
+ ├─ NO ──> Proceed with general capabilities
280
+
281
+ └─ YES
282
+
283
+ ├─ Skill Already Installed?
284
+ │ ├─ YES ──> Use existing skill
285
+ │ └─ NO
286
+ │ │
287
+ │ ├─ Search for Skills
288
+ │ │ │
289
+ │ │ ├─ High-Quality Skill Found? (1K+ installs, good source)
290
+ │ │ │ ├─ YES ──> Install & Use
291
+ │ │ │ └─ NO ──> Proceed with general capabilities
292
+ │ │ │ └─ Log gap in knowledge base
293
+ │ │ │
294
+ │ │ └─ No Skills Found
295
+ │ │ └─ Proceed with general capabilities
296
+ │ │ └─ Log gap in knowledge base
297
+ ```
298
+
299
+ ---
300
+
301
+ ## Integration with Crew Workflow
302
+
303
+ ### Captain Responsibilities
304
+
305
+ 1. **Identify skill needs** during project analysis and task planning
306
+ 2. **Delegate installation** to Boatswain with clear specifications
307
+ 3. **Verify installation** before proceeding with dependent tasks
308
+ 4. **Document skill usage** in project knowledge base
309
+ 5. **Monitor skill effectiveness** during task execution
310
+
311
+ ### Boatswain Responsibilities
312
+
313
+ 1. **Execute installation commands** as delegated by Captain
314
+ 2. **Verify installation success** by checking skill loads
315
+ 3. **Report results** back to Captain
316
+ 4. **Handle installation errors** following escalation protocol
317
+
318
+ ### Navigator Responsibilities
319
+
320
+ 1. **Suggest skills** during planning phase when identifying requirements
321
+ 2. **Include skill requirements** in mission specifications
322
+ 3. **Consider skill dependencies** when sequencing tasks
323
+
324
+ ### Quartermaster Responsibilities
325
+
326
+ 1. **Verify skill quality** independently if requested
327
+ 2. **Test skill functionality** before crew-wide adoption
328
+ 3. **Maintain skill inventory** for the project
329
+
330
+ ### Example Workflow: Project Initialization
331
+
332
+ ```
333
+ 1. Captain analyzes project → Identifies Next.js + Stripe stack
334
+ 2. Captain searches for skills → Finds relevant options
335
+ 3. Captain evaluates quality → Selects 2 high-quality skills
336
+ 4. Captain creates tasks in logbook:
337
+ - Task 1: Boatswain install nextjs-patterns skill
338
+ - Task 2: Boatswain install stripe-integration skill
339
+ 5. Boatswain executes installations
340
+ 6. Quartermaster verifies skills load correctly
341
+ 7. Captain updates knowledge base with installed skills
342
+ 8. Navigator proceeds with detailed planning using skill capabilities
343
+ ```
344
+
345
+ ---
346
+
347
+ ## Edge Cases and Error Handling
348
+
349
+ ### Case 1: No Skills Found
350
+
351
+ **Scenario:** Search returns no results for identified gap.
352
+
353
+ **Response:**
354
+ 1. Try alternative search terms
355
+ 2. Check leaderboard for similar domains
356
+ 3. Proceed with general capabilities
357
+ 4. Document gap in project knowledge base
358
+ 5. Consider creating custom skill if task is repeated frequently
359
+
360
+ **Example:**
361
+ ```
362
+ Search: npx skills find obscure-framework
363
+ Result: No skills found
364
+
365
+ Alternative queries:
366
+ - npx skills find similar-framework
367
+ - npx skills find framework category
368
+
369
+ Fallback: Use general coding capabilities, document that
370
+ "obscure-framework" expertise would improve quality.
371
+ ```
372
+
373
+ ### Case 2: Low-Quality Skills Only
374
+
375
+ **Scenario:** Skills found but all have <100 installs or unknown sources.
376
+
377
+ **Response:**
378
+ 1. Do not automatically install low-quality skills
379
+ 2. Assess if skill is truly necessary or "nice to have"
380
+ 3. For critical tasks: install with caution, verify thoroughly
381
+ 4. For non-critical tasks: proceed without skill
382
+ 5. Document the trade-off decision
383
+
384
+ **Decision Tree:**
385
+ ```
386
+ Skill Quality Low (<100 installs or unknown source)
387
+
388
+ ├─ Task is Critical?
389
+ │ ├─ YES ──> Install with extra verification
390
+ │ │ └─ Test extensively before use
391
+ │ └─ NO ──> Skip installation
392
+ │ └─ Document limitation
393
+ ```
394
+
395
+ ### Case 3: Installation Failure
396
+
397
+ **Scenario:** `npx skills add` command fails.
398
+
399
+ **Response:**
400
+ 1. Check error message for specific issue
401
+ 2. Common fixes:
402
+ - Network issues → Retry with timeout
403
+ - Package not found → Verify package name
404
+ - Permission denied → Check file permissions
405
+ 3. Escalate to user if unresolvable
406
+ 4. Proceed with alternative approach if possible
407
+
408
+ **Escalation Protocol:**
409
+ ```
410
+ Level 1: Retry with verbose logging (npx skills add <pkg> --verbose)
411
+ Level 2: Check skills.sh status page for outages
412
+ Level 3: Report to user with error details and suggested alternatives
413
+ ```
414
+
415
+ ### Case 4: Skill Conflicts
416
+
417
+ **Scenario:** New skill conflicts with existing skill or project setup.
418
+
419
+ **Response:**
420
+ 1. Check skill documentation for known conflicts
421
+ 2. Test in isolation before project-wide use
422
+ 3. Consider using skill in specific contexts only
423
+ 4. Document conflict and resolution in knowledge base
424
+
425
+ **Example:**
426
+ ```
427
+ Conflict: new-testing-skill overrides Jest configuration
428
+
429
+ Resolution:
430
+ - Install skill but note conflict
431
+ - Use skill for new test files only
432
+ - Keep existing Jest config for legacy tests
433
+ - Document: "new-testing-skill incompatible with current Jest setup"
434
+ ```
435
+
436
+ ### Case 5: Skill Becomes Outdated
437
+
438
+ **Scenario:** Installed skill hasn't been updated in months.
439
+
440
+ **Response:**
441
+ 1. Check for updates: `npx skills check`
442
+ 2. If update available: `npx skills update <skill-name>`
443
+ 3. If no updates and skill is critical:
444
+ - Search for alternative, maintained skills
445
+ - Consider forking and updating if open-source
446
+ 4. Document maintenance status in knowledge base
447
+
448
+ ---
449
+
450
+ ## Common Skill Categories
451
+
452
+ When searching, consider these common categories:
453
+
454
+ | Category | Example Queries |
455
+ | --------------- | ---------------------------------------- |
456
+ | Web Development | react, nextjs, typescript, css, tailwind |
457
+ | Testing | testing, jest, playwright, e2e |
458
+ | DevOps | deploy, docker, kubernetes, ci-cd |
459
+ | Documentation | docs, readme, changelog, api-docs |
460
+ | Code Quality | review, lint, refactor, best-practices |
461
+ | Design | ui, ux, design-system, accessibility |
462
+ | Productivity | workflow, automation, git |
463
+ | Security | security, auth, encryption, owasp |
464
+ | Database | database, postgresql, mongodb, redis |
465
+ | API Integration | api, rest, graphql, webhook |
466
+
467
+ ---
468
+
469
+ ## Tips for Effective Searches
470
+
471
+ 1. **Use specific keywords**: "react testing" is better than just "testing"
472
+ 2. **Try alternative terms**: If "deploy" doesn't work, try "deployment" or "ci-cd"
473
+ 3. **Check popular sources**: Many skills come from `vercel-labs/agent-skills` or `ComposioHQ/awesome-claude-skills`
474
+ 4. **Combine domain + task**: "stripe webhook" is better than "webhook" alone
475
+ 5. **Include version for breaking changes**: "nextjs-14" vs "nextjs" for version-specific patterns
476
+
477
+ ---
478
+
479
+ ## Proactive Mode Best Practices
480
+
481
+ ### When to Auto-Install vs Ask
482
+
483
+ **Auto-install (no user confirmation needed):**
484
+ - Skills with 10K+ installs from reputable sources
485
+ - Skills directly addressing critical capability gaps
486
+ - Skills that are well-documented and maintained
487
+
488
+ **Ask user first:**
489
+ - Skills with <1K installs
490
+ - Skills from unknown sources
491
+ - Skills for non-critical enhancements
492
+ - Skills that might conflict with existing setup
493
+
494
+ ### Documentation Requirements
495
+
496
+ After proactive skill installation, always update:
497
+
498
+ 1. **Project knowledge base**: List installed skills with purpose
499
+ 2. **Logbook**: Record skill installation as completed task
500
+ 3. **Crew notes**: Document any special usage instructions
501
+
502
+ ### Example Logbook Entry
503
+
504
+ ```json
505
+ {
506
+ "type": "task",
507
+ "id": "skill-install-001",
508
+ "description": "Install Stripe integration skill for payment module",
509
+ "assigned_to": "Boatswain",
510
+ "status": "completed",
511
+ "outcome": "Successfully installed vercel-labs/agent-skills@stripe-integration (12K installs). Verified skill loads and provides webhook testing patterns."
512
+ }
513
+ ```
514
+
515
+ ---
516
+
517
+ ## Summary
518
+
519
+ This dual-mode skill system enables:
520
+
521
+ - **Reactive**: User-driven skill discovery for specific needs
522
+ - **Proactive**: Captain-driven skill assessment for project optimization
523
+
524
+ By combining both modes, the crew can efficiently extend capabilities based on both explicit user requests and autonomous analysis of project requirements.
525
+
526
+ **Key Principles:**
527
+ 1. Always verify skill quality before installing
528
+ 2. Prioritize user experience (ask for non-critical installations)
529
+ 3. Document all skill installations and usage
530
+ 4. Handle errors gracefully with fallback plans
531
+ 5. Maintain skill inventory for project continuity