superskill 0.2.0 → 0.2.4

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 (143) hide show
  1. package/.claude-plugin/marketplace.json +23 -0
  2. package/.claude-plugin/plugin.json +12 -0
  3. package/.mcp.json +9 -0
  4. package/CHANGELOG.md +24 -5
  5. package/LICENSE-COMMERCIAL.md +46 -0
  6. package/README.md +114 -151
  7. package/dist/setup/configure.js +21 -1
  8. package/dist/setup/configure.js.map +1 -1
  9. package/dist/setup/teardown.js +13 -5
  10. package/dist/setup/teardown.js.map +1 -1
  11. package/package.json +8 -2
  12. package/dist/commands/brainstorm.test.d.ts +0 -1
  13. package/dist/commands/brainstorm.test.js +0 -110
  14. package/dist/commands/brainstorm.test.js.map +0 -1
  15. package/dist/commands/context.test.d.ts +0 -1
  16. package/dist/commands/context.test.js +0 -230
  17. package/dist/commands/context.test.js.map +0 -1
  18. package/dist/commands/decide.test.d.ts +0 -1
  19. package/dist/commands/decide.test.js +0 -109
  20. package/dist/commands/decide.test.js.map +0 -1
  21. package/dist/commands/graph.test.d.ts +0 -1
  22. package/dist/commands/graph.test.js +0 -215
  23. package/dist/commands/graph.test.js.map +0 -1
  24. package/dist/commands/learn.test.d.ts +0 -1
  25. package/dist/commands/learn.test.js +0 -241
  26. package/dist/commands/learn.test.js.map +0 -1
  27. package/dist/commands/read.test.d.ts +0 -1
  28. package/dist/commands/read.test.js +0 -48
  29. package/dist/commands/read.test.js.map +0 -1
  30. package/dist/commands/resume.test.d.ts +0 -1
  31. package/dist/commands/resume.test.js +0 -243
  32. package/dist/commands/resume.test.js.map +0 -1
  33. package/dist/commands/search.test.d.ts +0 -1
  34. package/dist/commands/search.test.js +0 -61
  35. package/dist/commands/search.test.js.map +0 -1
  36. package/dist/commands/session.test.d.ts +0 -1
  37. package/dist/commands/session.test.js +0 -231
  38. package/dist/commands/session.test.js.map +0 -1
  39. package/dist/commands/skill/index.test.d.ts +0 -1
  40. package/dist/commands/skill/index.test.js +0 -137
  41. package/dist/commands/skill/index.test.js.map +0 -1
  42. package/dist/commands/skill/install.test.d.ts +0 -1
  43. package/dist/commands/skill/install.test.js +0 -225
  44. package/dist/commands/skill/install.test.js.map +0 -1
  45. package/dist/commands/skill/list.test.d.ts +0 -1
  46. package/dist/commands/skill/list.test.js +0 -101
  47. package/dist/commands/skill/list.test.js.map +0 -1
  48. package/dist/commands/skill/schema.test.d.ts +0 -1
  49. package/dist/commands/skill/schema.test.js +0 -142
  50. package/dist/commands/skill/schema.test.js.map +0 -1
  51. package/dist/commands/skill/validate.test.d.ts +0 -1
  52. package/dist/commands/skill/validate.test.js +0 -171
  53. package/dist/commands/skill/validate.test.js.map +0 -1
  54. package/dist/commands/task.test.d.ts +0 -1
  55. package/dist/commands/task.test.js +0 -395
  56. package/dist/commands/task.test.js.map +0 -1
  57. package/dist/commands/todo.test.d.ts +0 -1
  58. package/dist/commands/todo.test.js +0 -324
  59. package/dist/commands/todo.test.js.map +0 -1
  60. package/dist/commands/write.test.d.ts +0 -1
  61. package/dist/commands/write.test.js +0 -79
  62. package/dist/commands/write.test.js.map +0 -1
  63. package/dist/config.test.d.ts +0 -1
  64. package/dist/config.test.js +0 -147
  65. package/dist/config.test.js.map +0 -1
  66. package/dist/core/executor.test.d.ts +0 -1
  67. package/dist/core/executor.test.js +0 -206
  68. package/dist/core/executor.test.js.map +0 -1
  69. package/dist/core/registry.test.d.ts +0 -1
  70. package/dist/core/registry.test.js +0 -213
  71. package/dist/core/registry.test.js.map +0 -1
  72. package/dist/integration/coordination.test.d.ts +0 -1
  73. package/dist/integration/coordination.test.js +0 -286
  74. package/dist/integration/coordination.test.js.map +0 -1
  75. package/dist/integration/project-artifacts.test.d.ts +0 -1
  76. package/dist/integration/project-artifacts.test.js +0 -275
  77. package/dist/integration/project-artifacts.test.js.map +0 -1
  78. package/dist/integration/registry-graph.test.d.ts +0 -1
  79. package/dist/integration/registry-graph.test.js +0 -157
  80. package/dist/integration/registry-graph.test.js.map +0 -1
  81. package/dist/integration/vault-lifecycle.test.d.ts +0 -1
  82. package/dist/integration/vault-lifecycle.test.js +0 -183
  83. package/dist/integration/vault-lifecycle.test.js.map +0 -1
  84. package/dist/lib/auto-number.test.d.ts +0 -1
  85. package/dist/lib/auto-number.test.js +0 -88
  86. package/dist/lib/auto-number.test.js.map +0 -1
  87. package/dist/lib/auto-profile.test.d.ts +0 -1
  88. package/dist/lib/auto-profile.test.js +0 -227
  89. package/dist/lib/auto-profile.test.js.map +0 -1
  90. package/dist/lib/escape-regex.test.d.ts +0 -1
  91. package/dist/lib/escape-regex.test.js +0 -27
  92. package/dist/lib/escape-regex.test.js.map +0 -1
  93. package/dist/lib/frontmatter.test.d.ts +0 -1
  94. package/dist/lib/frontmatter.test.js +0 -192
  95. package/dist/lib/frontmatter.test.js.map +0 -1
  96. package/dist/lib/project-detector.test.d.ts +0 -1
  97. package/dist/lib/project-detector.test.js +0 -117
  98. package/dist/lib/project-detector.test.js.map +0 -1
  99. package/dist/lib/safe-external-path.test.d.ts +0 -1
  100. package/dist/lib/safe-external-path.test.js +0 -99
  101. package/dist/lib/safe-external-path.test.js.map +0 -1
  102. package/dist/lib/search-engine.test.d.ts +0 -1
  103. package/dist/lib/search-engine.test.js +0 -120
  104. package/dist/lib/search-engine.test.js.map +0 -1
  105. package/dist/lib/session-registry.test.d.ts +0 -1
  106. package/dist/lib/session-registry.test.js +0 -199
  107. package/dist/lib/session-registry.test.js.map +0 -1
  108. package/dist/lib/stack-detector.test.d.ts +0 -1
  109. package/dist/lib/stack-detector.test.js +0 -110
  110. package/dist/lib/stack-detector.test.js.map +0 -1
  111. package/dist/lib/token-estimator.test.d.ts +0 -1
  112. package/dist/lib/token-estimator.test.js +0 -65
  113. package/dist/lib/token-estimator.test.js.map +0 -1
  114. package/dist/lib/tool-detector.test.d.ts +0 -1
  115. package/dist/lib/tool-detector.test.js +0 -170
  116. package/dist/lib/tool-detector.test.js.map +0 -1
  117. package/dist/lib/vault-fs.test.d.ts +0 -1
  118. package/dist/lib/vault-fs.test.js +0 -210
  119. package/dist/lib/vault-fs.test.js.map +0 -1
  120. package/dist/setup/configure.test.d.ts +0 -1
  121. package/dist/setup/configure.test.js +0 -112
  122. package/dist/setup/configure.test.js.map +0 -1
  123. package/dist/setup/detect.test.d.ts +0 -1
  124. package/dist/setup/detect.test.js +0 -44
  125. package/dist/setup/detect.test.js.map +0 -1
  126. package/dist/setup/instructions.test.d.ts +0 -1
  127. package/dist/setup/instructions.test.js +0 -84
  128. package/dist/setup/instructions.test.js.map +0 -1
  129. package/dist/setup/json-config.test.d.ts +0 -1
  130. package/dist/setup/json-config.test.js +0 -92
  131. package/dist/setup/json-config.test.js.map +0 -1
  132. package/dist/setup/setup-integration.test.d.ts +0 -1
  133. package/dist/setup/setup-integration.test.js +0 -72
  134. package/dist/setup/setup-integration.test.js.map +0 -1
  135. package/dist/setup/teardown.test.d.ts +0 -1
  136. package/dist/setup/teardown.test.js +0 -105
  137. package/dist/setup/teardown.test.js.map +0 -1
  138. package/dist/setup/toml-config.test.d.ts +0 -1
  139. package/dist/setup/toml-config.test.js +0 -49
  140. package/dist/setup/toml-config.test.js.map +0 -1
  141. package/dist/test-helpers.test.d.ts +0 -1
  142. package/dist/test-helpers.test.js +0 -90
  143. package/dist/test-helpers.test.js.map +0 -1
@@ -0,0 +1,23 @@
1
+ {
2
+ "name": "superskill",
3
+ "owner": {
4
+ "name": "Permanu (Atharva Pandey)",
5
+ "email": "license@permanu.com"
6
+ },
7
+ "metadata": {
8
+ "description": "Universal skill marketplace + knowledge vault for AI coding agents",
9
+ "version": "0.2.1"
10
+ },
11
+ "plugins": [
12
+ {
13
+ "name": "superskill",
14
+ "source": {
15
+ "source": "url",
16
+ "url": "https://github.com/permanu/superskill.git"
17
+ },
18
+ "description": "Universal skill marketplace + knowledge vault. Auto-detects your stack, resolves skill collisions across 9 repos, loads expert methodologies (TDD, brainstorming, code review, debugging, security, etc.) on demand.",
19
+ "version": "0.2.1",
20
+ "strict": true
21
+ }
22
+ ]
23
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "name": "superskill",
3
+ "version": "0.2.0",
4
+ "description": "Universal skill marketplace + knowledge vault for AI coding agents. Auto-detects your stack, loads expert methodologies (TDD, brainstorming, code review, debugging, security, etc.) on demand.",
5
+ "author": {
6
+ "name": "Permanu (Atharva Pandey)",
7
+ "url": "https://permanu.com"
8
+ },
9
+ "repository": "https://github.com/permanu/superskill",
10
+ "license": "AGPL-3.0-or-later",
11
+ "keywords": ["skills", "marketplace", "knowledge-base", "context", "vault", "tdd", "brainstorming", "code-review", "multi-tool"]
12
+ }
package/.mcp.json ADDED
@@ -0,0 +1,9 @@
1
+ {
2
+ "superskill": {
3
+ "command": "npx",
4
+ "args": ["-y", "superskill@latest"],
5
+ "env": {
6
+ "VAULT_PATH": "${VAULT_PATH:-~/Vaults/ai}"
7
+ }
8
+ }
9
+ }
package/CHANGELOG.md CHANGED
@@ -5,12 +5,31 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
- ## [Unreleased]
8
+ ## [0.2.0] - 2026-03-22
9
+
10
+ ### Added
11
+ - **Skill Marketplace** — 87 skills cataloged from 9 repos (ECC, Superpowers, gstack, Anthropic, design repos)
12
+ - **Collision Detection** — 12 domains mapped with 55 competing skills, profile-based resolution
13
+ - **Smart Skill Activation** — `superskill` MCP tool: LLM picks domain based on user intent, loads expert methodology on demand
14
+ - **Per-Project Filtering** — Auto-detects stack (Go, React, Django, etc.) and loads only relevant skills (68% bloat reduction)
15
+ - **Progressive Disclosure** — Lightweight manifest + on-demand `vault_skill_load` for context-efficient skill loading
16
+ - **Auto-Detection** — Stack detector (languages/frameworks), tool detector (Claude Code/Codex/OpenCode/Gemini), auto-profile selection
17
+ - **3 Built-in Profiles** — `ecc-first`, `superpowers-first`, `minimal` for collision resolution
18
+ - **Layered Generation** — Core (~25k tokens), Extended (~50k), Reference (~31k) tiers sized to model context windows
19
+ - **Claude Code Plugin** — `.claude-plugin/plugin.json` + `.mcp.json` for first-class plugin support
20
+ - **Dual Licensing** — AGPL-3.0-or-later + Commercial license for businesses >$1M revenue
21
+ - **SPDX Headers** — All 51 source files tagged with `AGPL-3.0-or-later OR Commercial`
22
+
23
+ ### Changed
24
+ - **Rebranded** from `obsidian-mcp` to `superskill` across all source, tests, configs, and documentation
25
+ - **Skill awareness injection** — `vault_resume` and `inject-project-context` now include skill domain menu
26
+ - **npm package** renamed to `superskill`
27
+ - **GitHub repo** renamed to `permanu/superskill`
9
28
 
10
29
  ## [0.1.2] - 2026-03-21
11
30
 
12
31
  ### Added
13
- - **Auto-setup**: `obsidian-mcp-cli setup` and `teardown` commands for multi-client MCP registration
32
+ - **Auto-setup**: `superskill-cli setup` and `teardown` commands for multi-client MCP registration
14
33
  - Supports 8 AI clients: Claude Code, Claude Desktop, Cursor, OpenCode, Crush CLI, Codex CLI, Gemini CLI, Droid
15
34
  - Auto-detects installed clients and configures MCP server entries + behavioral instructions
16
35
  - Postinstall script prints detected clients after `npm install`
@@ -37,6 +56,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
37
56
  - CLI shorthand commands (`r`, `w`, `s`, `c`, `t`, `l`, `sk`)
38
57
  - MCP tool annotations (`readOnlyHint`, `destructiveHint`, `idempotentHint`)
39
58
 
40
- [Unreleased]: https://github.com/gopherine/obsidian-mcp/compare/v0.1.2...HEAD
41
- [0.1.2]: https://github.com/gopherine/obsidian-mcp/compare/v0.1.1...v0.1.2
42
- [0.1.1]: https://github.com/gopherine/obsidian-mcp/releases/tag/v0.1.1
59
+ [0.2.0]: https://github.com/permanu/superskill/compare/v0.1.2...v0.2.0
60
+ [0.1.2]: https://github.com/permanu/superskill/compare/v0.1.1...v0.1.2
61
+ [0.1.1]: https://github.com/permanu/superskill/releases/tag/v0.1.1
@@ -0,0 +1,46 @@
1
+ # SuperSkill Commercial License
2
+
3
+ ## Overview
4
+
5
+ SuperSkill is dual-licensed:
6
+ - **AGPL-3.0-or-later** for open source and personal use
7
+ - **Commercial License** for businesses exceeding the revenue threshold
8
+
9
+ ## When You Need a Commercial License
10
+
11
+ A Commercial License is required when ALL of the following are true:
12
+ 1. Your organization uses SuperSkill in a commercial product or service
13
+ 2. Your organization's annual gross revenue exceeds **USD $1,000,000**
14
+ 3. You do not wish to comply with AGPL-3.0 obligations (source disclosure)
15
+
16
+ Organizations below the revenue threshold may use SuperSkill under AGPL-3.0 without a commercial license.
17
+
18
+ ## Attribution Requirement (All Users)
19
+
20
+ ALL users of SuperSkill, including AGPL users, must:
21
+ - Include "Powered by SuperSkill" attribution in any product, documentation, or service that uses SuperSkill
22
+ - Maintain the original copyright notices in source code
23
+ - Not remove or alter any license headers
24
+
25
+ ## Commercial License Terms
26
+
27
+ The Commercial License includes:
28
+ - Permission to use SuperSkill without AGPL source disclosure requirements
29
+ - Permission to create proprietary modifications
30
+ - Priority support channel access
31
+ - License to use the SuperSkill name and logo in your product
32
+
33
+ ## Pricing
34
+
35
+ Commercial license fees are based on organization size:
36
+ - **$1M - $10M annual revenue**: $500/year
37
+ - **$10M - $50M annual revenue**: $2,000/year
38
+ - **$50M+ annual revenue**: $5,000/year
39
+
40
+ ## Contact
41
+
42
+ For commercial licensing inquiries: license@permanu.com
43
+
44
+ ## Effective Date
45
+
46
+ These terms are effective as of March 2026.
package/README.md CHANGED
@@ -1,168 +1,161 @@
1
- # obsidian-mcp
1
+ # SuperSkill
2
2
 
3
- **Universal Agentic Knowledge Base** A CLI tool and MCP server backed by an Obsidian vault that serves as shared memory for AI coding tools.
3
+ **Universal skill marketplace + knowledge vault for AI coding agents.** Auto-detects your stack, resolves skill collisions across repos, and loads expert methodologies on demand.
4
4
 
5
5
  [![License: AGPL-3.0](https://img.shields.io/badge/License-AGPL%203.0-blue.svg)](https://www.gnu.org/licenses/agpl-3.0)
6
+ [![npm](https://img.shields.io/npm/v/superskill)](https://www.npmjs.com/package/superskill)
6
7
  [![Node.js](https://img.shields.io/badge/Node.js-%3E%3D20.0.0-green.svg)](https://nodejs.org/)
7
8
  [![TypeScript](https://img.shields.io/badge/TypeScript-5.7-blue.svg)](https://www.typescriptlang.org/)
8
- [![Release](https://img.shields.io/github/v/release/gopherine/obsidian-mcp)](https://github.com/gopherine/obsidian-mcp/releases)
9
9
 
10
- ## Features
10
+ ## What It Does
11
11
 
12
- - **MCP Server** — Works as an MCP server for Claude Desktop, Cursor, OpenCode, and any MCP-compatible client
13
- - **CLI Tool** — Full CLI interface for manual vault operations
14
- - **Project Auto-Discovery** — Detects projects from CWD via git root and project-map.json
15
- - **Knowledge Management** — Tasks, decisions (ADRs), learnings, sessions, brainstorms
16
- - **Full-Text Search** — Powered by ripgrep
17
- - **Skill Installer** — Install and manage AI skills from git repos, local files, or URLs
18
- - **Multi-Agent Coordination** — Session registry for agent swarms
12
+ - **Skill Marketplace** — 87 skills from 9 repos (ECC, Superpowers, gstack, Anthropic, design repos). Catalog, search, filter by domain.
13
+ - **Collision Detection** — 12 domains where skills from different repos compete (TDD, planning, code review, etc.). Profile-based resolution picks the best skill per domain.
14
+ - **Per-Project Filtering** — Auto-detects your stack (Go+Echo, React+Next, Django, etc.) and loads only relevant skills. Go project? No Django/Spring/frontend skills loaded.
15
+ - **Progressive Disclosure** — Lightweight manifest (~100 tokens/skill) + on-demand loading. Small context models get essentials only.
16
+ - **Knowledge Vault** — Persistent project memory: tasks, decisions (ADRs), learnings, sessions, brainstorms. Cross-tool, cross-session continuity.
17
+ - **Multi-Agent Coordination** — Session registry for agent swarms. No file conflicts.
19
18
 
20
- ## Installation
19
+ ## Install
20
+
21
+ ### Claude Code Plugin (recommended)
21
22
 
22
23
  ```bash
23
- npm install -g @gopherine/obsidian-mcp
24
+ /plugin marketplace add permanu/superskill
25
+ /plugin install superskill
24
26
  ```
25
27
 
26
- Or use directly with npx (no install needed):
28
+ ### npm (any MCP-compatible tool)
29
+
27
30
  ```bash
28
- npx @gopherine/obsidian-mcp
31
+ npm install -g superskill
29
32
  ```
30
33
 
31
- Or clone and build:
34
+ Or use directly:
32
35
  ```bash
33
- git clone https://github.com/gopherine/obsidian-mcp.git
34
- cd obsidian-mcp
35
- npm install && npm run build
36
+ npx superskill
36
37
  ```
37
38
 
38
- > **Note:** The default binary runs the MCP server. The CLI is available as `obsidian-mcp-cli`.
39
-
40
- ## Quick Start
39
+ ### From source
41
40
 
42
41
  ```bash
43
- # MCP server (add to your MCP client config — see below)
44
- npx @gopherine/obsidian-mcp
45
-
46
- # CLI tool
47
- npx @gopherine/obsidian-mcp-cli --help
42
+ git clone https://github.com/permanu/superskill.git
43
+ cd superskill
44
+ npm install && npm run build
48
45
  ```
49
46
 
50
- ## CLI Commands
51
-
52
- | Shorthand | Full Command | Description |
53
- |-----------|--------------|-------------|
54
- | `r` | `read <path>` | Read a vault note |
55
- | `w` | `write <path>` | Write/create a vault note |
56
- | `s` | `search <query>` | Search the vault |
57
- | `c` | `context` | Get project context |
58
- | `i` | `init <path>` | Initialize project context |
59
- | `d` | `decide` | Log an architecture decision |
60
- | `t` | `task` | Manage tasks |
61
- | `t add` | `task add` | Add a task |
62
- | `t ls` | `task list` | List tasks |
63
- | `t b` | `task board` | Show kanban board |
64
- | `l` | `learn` | Manage learnings |
65
- | `l add` | `learn add` | Capture a learning |
66
- | `l ls` | `learn list` | List learnings |
67
- | `sk i` | `skill install` | Install a skill |
68
- | `sk ls` | `skill list` | List installed skills |
69
- | `sk rm` | `skill delete` | Remove a skill |
70
-
71
- ## MCP Setup
47
+ ## Quick Start
72
48
 
73
- ### Claude Code
49
+ Once installed, SuperSkill auto-detects your project and loads skills on demand. The main MCP tool is `superskill` — the LLM calls it automatically when it recognizes a task that matches a skill domain.
74
50
 
75
- Add to your project's `CLAUDE.md` or run:
76
- ```bash
77
- claude mcp add obsidian-mcp -- npx -y @gopherine/obsidian-mcp
78
- ```
51
+ ### How It Works
79
52
 
80
- Or add to `~/.claude.json`:
81
- ```json
82
- {
83
- "mcpServers": {
84
- "obsidian-mcp": {
85
- "command": "npx",
86
- "args": ["-y", "@gopherine/obsidian-mcp"]
87
- }
88
- }
89
- }
90
- ```
53
+ 1. Agent starts session → SuperSkill injects skill awareness via `vault_resume`
54
+ 2. User says "let's think about this problem"
55
+ 3. Agent recognizes brainstorming intent → calls `superskill({domain: "brainstorming"})`
56
+ 4. SuperSkill returns expert methodology → agent follows it
91
57
 
92
- Set your vault path:
93
- ```bash
94
- claude mcp add obsidian-mcp -e VAULT_PATH=~/Vaults/ai -- npx -y @gopherine/obsidian-mcp
95
- ```
58
+ No manual commands needed. The LLM decides when to use skills based on your intent.
96
59
 
97
- ### Claude Desktop
60
+ ### Skill Domains
98
61
 
99
- Add to your Claude config (`~/Library/Application Support/Claude/claude_desktop_config.json` on macOS, or `%APPDATA%\Claude\claude_desktop_config.json` on Windows):
62
+ | Domain | What It Covers |
63
+ |--------|---------------|
64
+ | `brainstorming` | Thinking through problems, exploring ideas, ideating |
65
+ | `planning` | Architecture, implementation strategy, scoping |
66
+ | `code-review` | PR review, code quality, feedback |
67
+ | `tdd` | Writing tests, coverage, test-driven development |
68
+ | `debugging` | Investigating errors, troubleshooting, root cause |
69
+ | `security` | Vulnerability review, auth, OWASP, hardening |
70
+ | `verification` | Build checks, lint, type validation |
71
+ | `shipping` | Deployment, CI/CD, releases, rollbacks |
72
+ | `frontend-design` | UI/UX, components, visual design |
73
+ | `agent-orchestration` | Multi-agent, parallel tasks, subagents |
74
+ | `database` | SQL, schemas, migrations, query optimization |
100
75
 
101
- ```json
102
- {
103
- "mcpServers": {
104
- "obsidian-mcp": {
105
- "command": "npx",
106
- "args": ["-y", "@gopherine/obsidian-mcp"],
107
- "env": {
108
- "VAULT_PATH": "~/Vaults/ai"
109
- }
110
- }
111
- }
112
- }
76
+ ### CLI
77
+
78
+ ```bash
79
+ # Marketplace
80
+ superskill-cli skill catalog # 87 skills, 9 repos
81
+ superskill-cli skill catalog --search "tdd" # search
82
+ superskill-cli skill collisions # 12 collision domains
83
+ superskill-cli skill resolve --profile ecc-first # see winners
84
+
85
+ # Generate super-skill (auto-detects stack)
86
+ superskill-cli skill generate # Go project → 14 skills, React → different set
87
+
88
+ # Smart activate (describe task, get skill)
89
+ superskill-cli skill activate "brainstorm this" # → loads brainstorming skill
90
+ superskill-cli skill activate "write tests" # → loads TDD skill
91
+ superskill-cli skill activate "review PR" --domain code-review # direct domain
92
+
93
+ # Progressive disclosure
94
+ superskill-cli skill manifest # lightweight index
95
+ superskill-cli skill load ecc/tdd-workflow # load one skill
96
+
97
+ # Knowledge vault
98
+ superskill-cli context # project context
99
+ superskill-cli task add "Fix auth bug" --priority p0
100
+ superskill-cli task board # kanban view
101
+ superskill-cli learn add --title "Redis pattern" # capture learning
102
+ superskill-cli decide --title "Use PostgreSQL" # log ADR
103
+ superskill-cli resume # what happened last session
113
104
  ```
114
105
 
115
- ### Cursor
106
+ ## MCP Setup (non-plugin)
116
107
 
117
- Add to your `.cursor/mcp.json`:
108
+ For tools that don't support Claude Code plugins, configure as a standard MCP server:
118
109
 
119
- ```json
120
- {
121
- "mcpServers": {
122
- "obsidian-mcp": {
123
- "command": "npx",
124
- "args": ["-y", "@gopherine/obsidian-mcp"]
125
- }
126
- }
127
- }
110
+ ### Claude Code
111
+
112
+ ```bash
113
+ claude mcp add superskill -e VAULT_PATH=~/Vaults/ai -- npx -y superskill
128
114
  ```
129
115
 
130
- ### OpenCode
116
+ ### Claude Desktop / Cursor / Codex / OpenCode
131
117
 
132
- Add to your MCP configuration:
118
+ Add to your MCP config:
133
119
 
134
120
  ```json
135
121
  {
136
122
  "mcpServers": {
137
- "obsidian-mcp": {
138
- "type": "stdio",
123
+ "superskill": {
139
124
  "command": "npx",
140
- "args": ["-y", "@gopherine/obsidian-mcp"]
125
+ "args": ["-y", "superskill"],
126
+ "env": {
127
+ "VAULT_PATH": "~/Vaults/ai"
128
+ }
141
129
  }
142
130
  }
143
131
  }
144
132
  ```
145
133
 
146
- ### OpenAI Codex
147
-
148
- Add to your MCP configuration:
134
+ ## MCP Tools
149
135
 
150
- ```json
151
- {
152
- "mcpServers": {
153
- "obsidian-mcp": {
154
- "command": "npx",
155
- "args": ["-y", "@gopherine/obsidian-mcp"]
156
- }
157
- }
158
- }
159
- ```
136
+ | Tool | Description |
137
+ |------|-------------|
138
+ | `superskill` | **Main tool** — load expert methodology by domain, task description, or skill ID |
139
+ | `vault_read` | Read file or directory from vault |
140
+ | `vault_write` | Write/append/prepend content |
141
+ | `vault_search` | Full-text search across vault |
142
+ | `vault_project_context` | Get project context (auto-detects from CWD) |
143
+ | `vault_init` | Generate draft context.md from a git repo |
144
+ | `vault_decide` | Log architecture decision |
145
+ | `vault_task` | Manage tasks (add/list/update/board) |
146
+ | `vault_learn` | Capture/list learnings |
147
+ | `vault_session` | Multi-agent session coordination |
148
+ | `vault_skill` | Skill marketplace operations (catalog/collisions/resolve/generate) |
149
+ | `vault_resume` | Resume context — recent sessions, interrupted work, next steps |
150
+ | `vault_prune` | Archive/delete stale content |
151
+ | `vault_stats` | Content statistics |
152
+ | `vault_deprecate` | Mark items as deprecated |
160
153
 
161
154
  ## Configuration
162
155
 
163
156
  | Environment Variable | Default | Description |
164
157
  |---------------------|---------|-------------|
165
- | `VAULT_PATH` | `~/Vaults/ai` | Path to Obsidian vault |
158
+ | `VAULT_PATH` | `~/Vaults/ai` | Path to knowledge vault |
166
159
  | `MAX_INJECT_TOKENS` | `1500` | Max tokens for context injection |
167
160
  | `SESSION_TTL_HOURS` | `2` | Session heartbeat TTL |
168
161
 
@@ -176,6 +169,7 @@ Add to your MCP configuration:
176
169
  │ └── locks/ # PID lockfiles
177
170
  ├── skills/
178
171
  │ ├── installed/ # Installed skills
172
+ │ ├── super-skill/ # Generated super-skill files
179
173
  │ └── registry.json # Skill metadata
180
174
  └── projects/<slug>/
181
175
  ├── context.md # Project overview
@@ -187,49 +181,18 @@ Add to your MCP configuration:
187
181
  └── _archive/ # Pruned content
188
182
  ```
189
183
 
190
- ## MCP Tools
191
-
192
- | Tool | Description |
193
- |------|-------------|
194
- | `vault_read` | Read file or directory |
195
- | `vault_write` | Write/append/prepend content |
196
- | `vault_search` | Full-text search |
197
- | `vault_project_context` | Get project context |
198
- | `vault_init` | Generate draft context.md |
199
- | `vault_decide` | Log architecture decision |
200
- | `vault_task` | Manage tasks (add/list/update/board) |
201
- | `vault_learn` | Capture/list learnings |
202
- | `vault_session` | Register/heartbeat/complete sessions |
203
- | `vault_skill_*` | Skill installer operations |
204
- | `vault_prune` | Archive/delete stale content |
205
- | `vault_stats` | Content statistics |
206
- | `vault_resume` | Resume context for continuing work |
207
- | `vault_deprecate` | Mark items as deprecated |
208
-
209
184
  ## Testing
210
185
 
211
186
  ```bash
212
- # Run all tests with Vitest
213
- npm test
214
-
215
- # Run with coverage (target: 90%+)
216
- npm run test:coverage
217
-
218
- # Run specific test file
219
- npm test src/commands/task.test.ts
220
-
221
- # Watch mode
222
- npm run test:watch
187
+ npm test # Run all tests (Vitest)
188
+ npm run test:coverage # With coverage
189
+ npm test src/lib/auto-profile.test.ts # Specific file
223
190
  ```
224
191
 
225
- Tests use **table-driven pattern** for comprehensive coverage. All test files are `*.test.ts` alongside source files.
226
-
227
- ## Documentation
192
+ ## License
228
193
 
229
- - [Contributing](./CONTRIBUTING.md)
230
- - [Code of Conduct](./CODE_OF_CONDUCT.md)
231
- - [Changelog](./CHANGELOG.md)
194
+ AGPL-3.0-or-later — See [LICENSE](./LICENSE)
232
195
 
233
- ## License
196
+ Commercial license available for organizations with >$1M annual revenue. See [LICENSE-COMMERCIAL.md](./LICENSE-COMMERCIAL.md).
234
197
 
235
- AGPL-3.0 See [LICENSE](./LICENSE)
198
+ Copyright 2026 Permanu (Atharva Pandey)
@@ -2,7 +2,7 @@
2
2
  import { readFileSync, writeFileSync, existsSync, mkdirSync } from "fs";
3
3
  import { dirname } from "path";
4
4
  import { INSTRUCTION_TEXT } from "./types.js";
5
- import { readJsonConfig, writeJsonConfig, addMcpEntry } from "./json-config.js";
5
+ import { readJsonConfig, writeJsonConfig, addMcpEntry, removeMcpEntry } from "./json-config.js";
6
6
  import { insertTomlBlock } from "./toml-config.js";
7
7
  import { writeMarkdownInstruction, writeMdcInstruction, } from "./instructions.js";
8
8
  export function buildMcpEntry(commandType, envKey, vaultPath, extraFields) {
@@ -33,6 +33,26 @@ export function configureClient(detected, vaultPath, options = {}) {
33
33
  instructionConfigured: false,
34
34
  };
35
35
  try {
36
+ // 0. Migrate: remove old obsidian-mcp / obsidian-kb entries
37
+ const LEGACY_NAMES = ["obsidian-mcp", "obsidian-kb"];
38
+ if (!options.dryRun && config.configFormat === "json" && existsSync(mcpConfigPath)) {
39
+ try {
40
+ let migrated = readJsonConfig(mcpConfigPath);
41
+ if (migrated) {
42
+ let anyLegacyRemoved = false;
43
+ for (const oldName of LEGACY_NAMES) {
44
+ const result = removeMcpEntry(migrated, config.rootKey, oldName);
45
+ if (result?.removed) {
46
+ migrated = result.config;
47
+ anyLegacyRemoved = true;
48
+ }
49
+ }
50
+ if (anyLegacyRemoved)
51
+ writeJsonConfig(mcpConfigPath, migrated);
52
+ }
53
+ }
54
+ catch { /* migration is best-effort */ }
55
+ }
36
56
  // 1. Configure MCP entry
37
57
  if (config.configFormat === "json") {
38
58
  if (options.dryRun) {
@@ -1 +1 @@
1
- {"version":3,"file":"configure.js","sourceRoot":"","sources":["../../src/setup/configure.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configure.js","sourceRoot":"","sources":["../../src/setup/configure.ts"],"names":[],"mappings":"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"}
@@ -13,17 +13,25 @@ export function teardownClient(detected, options = {}) {
13
13
  instructionRemoved: false,
14
14
  };
15
15
  try {
16
- // 1. Remove MCP entry
16
+ // 1. Remove MCP entry (current name + legacy names)
17
+ const MCP_NAMES = ["superskill", "obsidian-mcp", "obsidian-kb"];
17
18
  if (config.configFormat === "json") {
18
19
  if (options.dryRun) {
19
20
  result.mcpRemoved = true;
20
21
  }
21
22
  else if (existsSync(mcpConfigPath)) {
22
- const existing = readJsonConfig(mcpConfigPath);
23
+ let existing = readJsonConfig(mcpConfigPath);
23
24
  if (existing) {
24
- const { config: updated, removed } = removeMcpEntry(existing, config.rootKey, "superskill");
25
- if (removed) {
26
- writeJsonConfig(mcpConfigPath, updated);
25
+ let anyRemoved = false;
26
+ for (const name of MCP_NAMES) {
27
+ const { config: updated, removed } = removeMcpEntry(existing, config.rootKey, name);
28
+ if (removed) {
29
+ existing = updated;
30
+ anyRemoved = true;
31
+ }
32
+ }
33
+ if (anyRemoved) {
34
+ writeJsonConfig(mcpConfigPath, existing);
27
35
  result.mcpRemoved = true;
28
36
  }
29
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"teardown.js","sourceRoot":"","sources":["../../src/setup/teardown.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"teardown.js","sourceRoot":"","sources":["../../src/setup/teardown.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "superskill",
3
- "version": "0.2.0",
3
+ "version": "0.2.4",
4
4
  "description": "Universal agentic knowledge base + context optimizer + skill marketplace for AI tools",
5
5
  "type": "module",
6
6
  "main": "dist/mcp-server.js",
@@ -20,8 +20,14 @@
20
20
  },
21
21
  "files": [
22
22
  "dist/",
23
+ "!dist/**/*.test.js",
24
+ "!dist/**/*.test.d.ts",
25
+ "!dist/**/*.test.js.map",
26
+ ".claude-plugin/",
27
+ ".mcp.json",
23
28
  "README.md",
24
29
  "LICENSE",
30
+ "LICENSE-COMMERCIAL.md",
25
31
  "CHANGELOG.md"
26
32
  ],
27
33
  "scripts": {
@@ -52,7 +58,7 @@
52
58
  "author": "Permanu (Atharva Pandey)",
53
59
  "repository": {
54
60
  "type": "git",
55
- "url": "https://github.com/gopherine/superskill.git"
61
+ "url": "https://github.com/permanu/superskill.git"
56
62
  },
57
63
  "keywords": [
58
64
  "mcp",
@@ -1 +0,0 @@
1
- export {};