oh-my-customcode 0.14.0 → 0.15.0

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.
package/README.md CHANGED
@@ -21,7 +21,7 @@ Like oh-my-zsh transformed shell customization, oh-my-customcode makes personali
21
21
 
22
22
  | Feature | Description |
23
23
  |---------|-------------|
24
- | **Batteries Included** | 42 agents, 52 skills, 22 guides, 18 rules, 1 hook, 4 contexts, ontology graph - ready to use out of the box |
24
+ | **Batteries Included** | 42 agents, 53 skills, 22 guides, 18 rules, 1 hook, 4 contexts, ontology graph - ready to use out of the box |
25
25
  | **Sub-Agent Model** | Supports hierarchical agent orchestration with specialized roles |
26
26
  | **Dead Simple Customization** | Create a folder + markdown file = new agent or skill |
27
27
  | **Mix and Match** | Use built-in components, create your own, or combine both |
@@ -125,7 +125,7 @@ Claude Code selects the appropriate model and parallelizes independent tasks (up
125
125
  | **QA** | 3 | qa-planner, qa-writer, qa-engineer |
126
126
  | **Total** | **42** | |
127
127
 
128
- ### Skills (52)
128
+ ### Skills (53)
129
129
 
130
130
  | Category | Count | Skills |
131
131
  |----------|-------|--------|
@@ -139,6 +139,7 @@ Claude Code selects the appropriate model and parallelizes independent tasks (up
139
139
  | **Operations** | 7 | update-docs, update-external, audit-agents, fix-refs, sauron-watch, monitoring-setup, claude-code-bible |
140
140
  | **Utilities** | 5 | lists, help, status, result-aggregation, writing-clearly-and-concisely |
141
141
  | **Deploy** | 2 | vercel-deploy, codex-exec |
142
+ | **External** | 1 | skills-sh-search |
142
143
 
143
144
  ### Guides (22)
144
145
 
@@ -224,7 +225,7 @@ your-project/
224
225
  │ ├── be-fastapi-expert.md
225
226
  │ ├── mgr-creator.md
226
227
  │ └── ...
227
- ├── skills/ # Skill modules (52 directories, each with SKILL.md)
228
+ ├── skills/ # Skill modules (53 directories, each with SKILL.md)
228
229
  │ ├── go-best-practices/
229
230
  │ ├── react-best-practices/
230
231
  │ ├── secretary-routing/
package/dist/cli/index.js CHANGED
@@ -14125,7 +14125,7 @@ async function generateMCPConfig(targetDir) {
14125
14125
  }
14126
14126
  try {
14127
14127
  execSync3("uv venv .venv", { cwd: targetDir, stdio: "pipe" });
14128
- execSync3("uv pip install ontology-rag", { cwd: targetDir, stdio: "pipe" });
14128
+ execSync3('uv pip install "ontology-rag @ git+https://github.com/baekenough/oh-my-customcode.git#subdirectory=packages/ontology-rag"', { cwd: targetDir, stdio: "pipe" });
14129
14129
  } catch (error2) {
14130
14130
  const msg = error2 instanceof Error ? error2.message : String(error2);
14131
14131
  throw new Error(`Failed to setup Python environment: ${msg}`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oh-my-customcode",
3
- "version": "0.14.0",
3
+ "version": "0.15.0",
4
4
  "description": "Batteries-included agent harness for Claude Code",
5
5
  "type": "module",
6
6
  "bin": {
@@ -65,6 +65,10 @@ classes:
65
65
  skills: [monitoring-setup]
66
66
  description: "Monitoring configuration"
67
67
 
68
+ ExternalSkillSourceSkill:
69
+ skills: [skills-sh-search]
70
+ description: "External skill marketplace discovery and installation"
71
+
68
72
  # Skill instances
69
73
  skills:
70
74
  airflow-best-practices:
@@ -419,6 +423,15 @@ skills:
419
423
  keywords: [rust, ownership, borrowing, safety, concurrency]
420
424
  rule_references: []
421
425
 
426
+ skills-sh-search:
427
+ class: ExternalSkillSourceSkill
428
+ description: "Search and install skills from skills.sh marketplace when internal skills are insufficient"
429
+ user_invocable: true
430
+ model_invocable: true
431
+ summary: "Search skills.sh marketplace for external skills and install them into the project"
432
+ keywords: [skills-sh, marketplace, external, install, search, discover, npx]
433
+ rule_references: [R003, R006]
434
+
422
435
  sauron-watch:
423
436
  class: VerificationSkill
424
437
  description: "Full R017 verification (5+3 rounds) before commit"
@@ -0,0 +1,160 @@
1
+ ---
2
+ name: skills-sh-search
3
+ description: Search and install skills from skills.sh marketplace when internal skills are insufficient
4
+ argument-hint: "<query> [--install] [--global]"
5
+ ---
6
+
7
+ # Skills.sh Search Skill
8
+
9
+ Search the [skills.sh](https://skills.sh/) marketplace for reusable AI agent skills when no matching internal skill exists. Install discovered skills directly into the project.
10
+
11
+ ## Prerequisites
12
+
13
+ - Node.js and npx available in PATH
14
+ - Network access to skills.sh registry
15
+
16
+ ## Options
17
+
18
+ ```
19
+ <query> Required. Search query describing the capability needed
20
+ --install, -i Install selected skill after search
21
+ --global, -g Install to ~/.claude/skills/ instead of project .claude/skills/
22
+ --list, -l List currently installed skills.sh skills
23
+ --check, -c Check for updates on installed skills.sh skills
24
+ ```
25
+
26
+ ## Workflow
27
+
28
+ ```
29
+ 1. Search skills.sh marketplace
30
+ ├── Run: npx --yes skills find "<query>"
31
+ ├── Review results (name, description, install count)
32
+ └── Present top candidates to user
33
+
34
+ 2. User selects skill
35
+ ├── Confirm selection with user
36
+ └── Check for namespace conflicts with existing skills
37
+
38
+ 3. Install skill
39
+ ├── Run: npx --yes skills add <source> [-g]
40
+ ├── Verify installation in .claude/skills/
41
+ └── Check installed SKILL.md frontmatter
42
+
43
+ 4. Post-install adaptation
44
+ ├── Review installed SKILL.md frontmatter
45
+ ├── Add oh-my-customcode fields if missing:
46
+ │ ├── user-invocable: true|false
47
+ │ ├── model-invocable (if not present)
48
+ │ └── argument-hint (if applicable)
49
+ └── Add source metadata:
50
+ ├── source-type: skills-sh
51
+ └── source-origin: <owner/repo>
52
+
53
+ 5. Ontology sync
54
+ ├── Notify: run "omcustom ontology build" to register new skill
55
+ └── Or manually add to skills.yaml if ontology CLI unavailable
56
+ ```
57
+
58
+ ## Namespace Conflict Check
59
+
60
+ Before installing, verify no existing skill shares the same name:
61
+
62
+ ```bash
63
+ # Check for conflict
64
+ ls .claude/skills/ | grep -w "<skill-name>"
65
+ ```
66
+
67
+ If conflict exists:
68
+ - Warn user about the conflict
69
+ - Suggest renaming or skipping
70
+ - Never overwrite existing skills without explicit approval
71
+
72
+ ## Output Format
73
+
74
+ ### Search Results
75
+ ```
76
+ [skills-sh-search] Searching marketplace...
77
+
78
+ Query: "<query>"
79
+ Results: 5 found
80
+
81
+ 1. owner/skill-name (12.3K installs)
82
+ Description of the skill
83
+
84
+ 2. owner/another-skill (8.1K installs)
85
+ Description of the skill
86
+
87
+ 3. owner/third-skill (3.5K installs)
88
+ Description of the skill
89
+
90
+ Select [1-3] or "skip" to cancel:
91
+ ```
92
+
93
+ ### Install Success
94
+ ```
95
+ [skills-sh-search] Installed
96
+
97
+ Skill: <skill-name>
98
+ Source: <owner/repo>
99
+ Location: .claude/skills/<skill-name>/SKILL.md
100
+ Adapted: ✓ (added user-invocable, source metadata)
101
+
102
+ Next: Run "omcustom ontology build" to register in ontology.
103
+ ```
104
+
105
+ ### Install Failure
106
+ ```
107
+ [skills-sh-search] Failed
108
+
109
+ Error: <error_message>
110
+ Suggested Fix: <suggestion>
111
+ ```
112
+
113
+ ### No Results
114
+ ```
115
+ [skills-sh-search] No Results
116
+
117
+ Query: "<query>"
118
+ Suggestions:
119
+ - Try broader search terms
120
+ - Check https://skills.sh/ directly
121
+ - Consider creating a custom skill with /create-agent
122
+ ```
123
+
124
+ ## Examples
125
+
126
+ ```bash
127
+ # Search for Terraform skills
128
+ /skills-sh-search terraform infrastructure
129
+
130
+ # Search and install
131
+ /skills-sh-search "react testing patterns" --install
132
+
133
+ # Install globally
134
+ /skills-sh-search "git workflow" --install --global
135
+
136
+ # List installed skills.sh skills
137
+ /skills-sh-search --list
138
+
139
+ # Check for updates
140
+ /skills-sh-search --check
141
+ ```
142
+
143
+ ## Integration
144
+
145
+ ### With intent-detection
146
+ When intent-detection finds no matching agent and the domain is identifiable, this skill can be suggested as a fallback to find relevant external skills.
147
+
148
+ ### With update-external
149
+ Installed skills.sh skills are tracked with `source-type: skills-sh` metadata, enabling `update-external` to check for updates via `npx skills check`.
150
+
151
+ ### With create-agent
152
+ If a skills.sh skill provides domain knowledge, `create-agent` can reference it when building a new agent for that domain.
153
+
154
+ ## Safety
155
+
156
+ - **Read-only by default**: Search does not modify anything
157
+ - **Explicit install**: Installation requires `--install` flag or user confirmation
158
+ - **No auto-execution**: Installed skills are not auto-invoked without ontology registration
159
+ - **Conflict protection**: Never overwrites existing skills
160
+ - **Telemetry opt-out**: Set `DISABLE_TELEMETRY=1` to disable skills CLI telemetry
@@ -37,6 +37,15 @@ web-design-guidelines:
37
37
  type: github
38
38
  ```
39
39
 
40
+ ### Skills (from skills.sh marketplace)
41
+ ```yaml
42
+ <skill-name>:
43
+ source: <owner/repo>
44
+ type: skills-sh
45
+ ```
46
+
47
+ Skills installed via `skills-sh-search` are tracked with `source-type: skills-sh` in their frontmatter. Update checks use `npx skills check`.
48
+
40
49
  ### Guides (reference documentation)
41
50
  ```yaml
42
51
  golang:
@@ -58,6 +67,7 @@ python:
58
67
 
59
68
  2. Check for updates
60
69
  ├── GitHub: Check releases/commits
70
+ ├── skills-sh: Run "npx skills check"
61
71
  ├── Documentation: Check last-modified
62
72
  └── Compare with current version
63
73
 
@@ -89,6 +99,14 @@ source:
89
99
  date: "2026-01-20"
90
100
  - version: "1.2.0"
91
101
  date: "2026-01-22"
102
+
103
+ # skills.sh source
104
+ source:
105
+ type: external
106
+ origin: skills-sh
107
+ registry: https://skills.sh
108
+ installed_via: "npx skills add <owner/repo>"
109
+ last_checked: "2026-02-20"
92
110
  ```
93
111
 
94
112
  ## Output Format
@@ -18,7 +18,7 @@
18
18
  "name": "skills",
19
19
  "path": ".claude/skills",
20
20
  "description": "Reusable skill modules (includes slash commands)",
21
- "files": 52
21
+ "files": 53
22
22
  },
23
23
  {
24
24
  "name": "guides",