@kmiyh/pi-skills-menu 1.0.1

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/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,188 @@
1
+ # @kmiyh/pi-skills-menu
2
+
3
+ `@kmiyh/pi-skills-menu` is a Pi Agent extension that moves all skills out of Pi's main menu into a separate menu opened with:
4
+
5
+ ```bash
6
+ /skills
7
+ ```
8
+
9
+ The idea behind the extension is simple: **keep the main menu from getting cluttered** and make it at least a bit easier to navigate when many skills are installed.
10
+
11
+ When the extension is installed, it automatically writes the following to `settings.json`:
12
+
13
+ ```json
14
+ {
15
+ "enableSkillCommands": false
16
+ }
17
+ ```
18
+
19
+ This disables the default `/skill:<name>` command registration in the main menu and moves skill usage into one dedicated menu.
20
+
21
+ ## Installation
22
+
23
+ It can be installed with:
24
+
25
+ ```bash
26
+ pi install npm:@kmiyh/pi-skills-menu
27
+ ```
28
+
29
+ ## What the `/skills` menu contains
30
+
31
+ The menu shows **all installed available skills**:
32
+
33
+ - global skills
34
+ - project skills
35
+ - skills coming from other installed libraries/packages
36
+
37
+ The list is split into two sections:
38
+
39
+ - **Your Skills** — the user's own skills
40
+ - **Library Skills** — skills coming from other installed libraries
41
+
42
+ ![skills-menu.jpg](src/images/skills-menu.jpg)
43
+
44
+ ## What the menu can do
45
+
46
+ ### Search
47
+
48
+ The menu includes a search field for filtering skills by name.
49
+
50
+ ### Skill preview
51
+
52
+ Press:
53
+
54
+ - `Tab` — open the selected skill in preview mode
55
+
56
+ ![skill-preview.jpg](src/images/skill-preview.jpg)
57
+
58
+ ### Insert a skill into the editor
59
+
60
+ Press:
61
+
62
+ - `Enter` — select a skill and insert it into the editor
63
+
64
+ After that, the skill is inserted into the editor so it will be used by Pi when the message is sent.
65
+
66
+ ### Create a new skill
67
+
68
+ The list also contains a dedicated entry for creating a new skill.
69
+
70
+ Skill creation is done by entering:
71
+
72
+ 1. **skill name**
73
+
74
+ ![skill-create-name.jpg](src/images/skill-create-name.jpg)
75
+
76
+ 2. **skill description**
77
+
78
+ ![skill-create-description.jpg](src/images/skill-create-description.jpg)
79
+
80
+ After that, the extension generates a `SKILL.md`.
81
+
82
+ Generation uses:
83
+
84
+ - the **currently selected model in the TUI**
85
+ - the **currently selected thinking level** in the TUI
86
+
87
+ So skill generation always follows the exact model configuration already active in the current Pi session.
88
+
89
+ ![skill-create-generating.jpg](src/images/skill-create-generating.jpg)
90
+
91
+ ## Skill preview
92
+
93
+ The preview opened with `Tab` contains:
94
+
95
+ - the full skill text
96
+ - scrolling support for reading the content
97
+
98
+ From preview mode, you can also use quick actions:
99
+
100
+ - `r` — edit the skill name
101
+
102
+ ![skill-edit.jpg](src/images/skill-edit.jpg)
103
+
104
+ - `e` — edit the skill content itself
105
+
106
+ ![skill-rename.jpg](src/images/skill-rename.jpg)
107
+
108
+ ## Where new skills are saved
109
+
110
+ New skills are saved into Pi's standard skill directories depending on the selected scope.
111
+
112
+ ### Project scope
113
+
114
+ If project scope is selected, the skill is saved here:
115
+
116
+ ```text
117
+ .pi/skills/<skill-name>/SKILL.md
118
+ ```
119
+
120
+ Example:
121
+
122
+ ```text
123
+ .pi/skills/react-review/SKILL.md
124
+ ```
125
+
126
+ ### Global scope
127
+
128
+ If global scope is selected, the skill is saved here:
129
+
130
+ ```text
131
+ ~/.pi/agent/skills/<skill-name>/SKILL.md
132
+ ```
133
+
134
+ ## Local development
135
+
136
+ Install dependencies:
137
+
138
+ ```bash
139
+ npm install
140
+ ```
141
+
142
+ Run typecheck:
143
+
144
+ ```bash
145
+ npm run typecheck
146
+ ```
147
+
148
+ Run the extension directly from a local checkout:
149
+
150
+ ```bash
151
+ pi -e ./src/index.ts
152
+ ```
153
+
154
+ ## How to help improve the extension
155
+
156
+ If you want to help improve the extension, you can:
157
+
158
+ - report bugs and UX issues
159
+ - suggest improvements to the `/skills` menu
160
+ - improve skill generation quality
161
+ - improve search and list navigation
162
+ - improve editing and preview flows
163
+ - suggest improvements to project structure and Pi package support
164
+ - etc
165
+
166
+ A typical contribution workflow:
167
+
168
+ 1. fork the repository
169
+ 2. create a separate branch
170
+ 3. make your changes
171
+ 4. verify everything with:
172
+
173
+ ```bash
174
+ npm install
175
+ npm run typecheck
176
+ ```
177
+
178
+ 5. test locally
179
+
180
+ ```bash
181
+ pi -e ./src/index.ts
182
+ ```
183
+
184
+ 6. open a pull request
185
+
186
+ ## License
187
+
188
+ MIT
package/package.json ADDED
@@ -0,0 +1,50 @@
1
+ {
2
+ "name": "@kmiyh/pi-skills-menu",
3
+ "version": "1.0.1",
4
+ "description": "Pi extension that moves skills into a dedicated /skills menu with browsing, preview, editing, and AI-assisted creation.",
5
+ "type": "module",
6
+ "keywords": [
7
+ "pi-package",
8
+ "pi-agent",
9
+ "pi-extension",
10
+ "skills",
11
+ "menu"
12
+ ],
13
+ "files": [
14
+ "src",
15
+ "README.md",
16
+ "LICENSE"
17
+ ],
18
+ "scripts": {
19
+ "typecheck": "tsc --noEmit"
20
+ },
21
+ "peerDependencies": {
22
+ "@mariozechner/pi-ai": "*",
23
+ "@mariozechner/pi-coding-agent": "*",
24
+ "@mariozechner/pi-tui": "*"
25
+ },
26
+ "devDependencies": {
27
+ "@mariozechner/pi-ai": "*",
28
+ "@mariozechner/pi-coding-agent": "*",
29
+ "@mariozechner/pi-tui": "*",
30
+ "@types/node": "^24.5.2",
31
+ "typescript": "^5.9.2"
32
+ },
33
+ "pi": {
34
+ "extensions": [
35
+ "./src/index.ts"
36
+ ]
37
+ },
38
+ "repository": {
39
+ "type": "git",
40
+ "url": "git+https://github.com/Kmiyh/pi-skills-menu.git"
41
+ },
42
+ "homepage": "https://github.com/Kmiyh/pi-skills-menu#readme",
43
+ "bugs": {
44
+ "url": "https://github.com/Kmiyh/pi-skills-menu/issues"
45
+ },
46
+ "license": "MIT",
47
+ "publishConfig": {
48
+ "access": "public"
49
+ }
50
+ }