ask-agent 0.9.1 → 0.10.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +14 -0
- data/lib/ask/agent/cli.rb +119 -2
- data/lib/ask/agent/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 80bddb94871d90233cf471e4a0667e6c2bb109edda83e772403000e6c86234bc
|
|
4
|
+
data.tar.gz: 9095268cfba594c639620991a60f490414b2834b7cd0d627732a7e17c1a4ba65
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: b792c3dcc1323e1c491c815d3ce8a58e7b253731f7cc5ed7189a4287b5acac5c2e5a5f9909d2b71705d805c8536057ad189e7d72482ef9cef06c27a48aa04b32
|
|
7
|
+
data.tar.gz: 4ca8a713e64926e58c97408ccaba3dc12e5b2f0f2ae9d4cd6f128ba2bebab4610ecaca559f9ff79e8d13706a6548b85f51e4be7ca176160239b8c38a17415984
|
data/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
## [0.10.0] — 2026-07-21
|
|
2
|
+
|
|
3
|
+
### Added
|
|
4
|
+
|
|
5
|
+
- **`askr skills` CLI commands** — new subcommands for discovering and inspecting skills:
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
askr skills list # All discovered skills with descriptions and tags
|
|
9
|
+
askr skills show rails_debug # Full details + instructions + sibling files
|
|
10
|
+
askr skills search deploy # Search by name, description, or tags
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Skills commands integrate with ask-skills 0.4.0, supporting enhanced frontmatter (tags, version, metadata) and sibling file discovery.
|
|
14
|
+
|
|
1
15
|
## [0.9.1] — 2026-07-21
|
|
2
16
|
|
|
3
17
|
### Changed
|
data/lib/ask/agent/cli.rb
CHANGED
|
@@ -15,6 +15,8 @@ module Ask
|
|
|
15
15
|
cmd_schedule
|
|
16
16
|
when "new"
|
|
17
17
|
cmd_new(argv[1..])
|
|
18
|
+
when "skills"
|
|
19
|
+
cmd_skills(argv[1..])
|
|
18
20
|
when "help", "--help", "-h", nil
|
|
19
21
|
cmd_help
|
|
20
22
|
else
|
|
@@ -150,6 +152,113 @@ module Ask
|
|
|
150
152
|
puts "Run it: askr run #{name}"
|
|
151
153
|
end
|
|
152
154
|
|
|
155
|
+
def cmd_skills(args)
|
|
156
|
+
sub = args.first
|
|
157
|
+
|
|
158
|
+
case sub
|
|
159
|
+
when "list"
|
|
160
|
+
cmd_skills_list
|
|
161
|
+
when "show"
|
|
162
|
+
cmd_skills_show(args[1])
|
|
163
|
+
when "search"
|
|
164
|
+
cmd_skills_search(args[1])
|
|
165
|
+
else
|
|
166
|
+
puts "Usage: askr skills <list|show|search>"
|
|
167
|
+
puts ""
|
|
168
|
+
puts "Commands:"
|
|
169
|
+
puts " list List all discovered skills"
|
|
170
|
+
puts " show <name> Show skill details and sibling files"
|
|
171
|
+
puts " search <query> Search skills by name, description, or tags"
|
|
172
|
+
end
|
|
173
|
+
end
|
|
174
|
+
|
|
175
|
+
def cmd_skills_list
|
|
176
|
+
require "ask/skills"
|
|
177
|
+
registry = Ask::Skills.discover
|
|
178
|
+
|
|
179
|
+
if registry.names.empty?
|
|
180
|
+
puts "No skills found."
|
|
181
|
+
return
|
|
182
|
+
end
|
|
183
|
+
|
|
184
|
+
puts "Discovered skills:"
|
|
185
|
+
puts ""
|
|
186
|
+
registry.names.sort.each do |name|
|
|
187
|
+
skill = registry[name]
|
|
188
|
+
puts " #{skill.name}"
|
|
189
|
+
puts " description: #{skill.description}"
|
|
190
|
+
puts " tags: #{skill.tags.join(", ")}" if skill.tags.any?
|
|
191
|
+
siblings = skill.siblings
|
|
192
|
+
if siblings.any?
|
|
193
|
+
summaries = siblings.map { |cat, files| "#{files.length} #{cat}" }.join(", ")
|
|
194
|
+
puts " files: #{summaries}"
|
|
195
|
+
end
|
|
196
|
+
end
|
|
197
|
+
end
|
|
198
|
+
|
|
199
|
+
def cmd_skills_show(name)
|
|
200
|
+
unless name
|
|
201
|
+
puts "Usage: askr skills show <name>"
|
|
202
|
+
exit 1
|
|
203
|
+
end
|
|
204
|
+
|
|
205
|
+
require "ask/skills"
|
|
206
|
+
registry = Ask::Skills.discover
|
|
207
|
+
skill = registry[name]
|
|
208
|
+
|
|
209
|
+
unless skill
|
|
210
|
+
puts "Skill not found: #{name}"
|
|
211
|
+
exit 1
|
|
212
|
+
end
|
|
213
|
+
|
|
214
|
+
puts "Name: #{skill.name}"
|
|
215
|
+
puts "Description: #{skill.description}"
|
|
216
|
+
puts "Source: #{skill.source}"
|
|
217
|
+
puts "Tags: #{skill.tags.join(", ")}" if skill.tags.any?
|
|
218
|
+
|
|
219
|
+
if skill.siblings.any?
|
|
220
|
+
puts ""
|
|
221
|
+
puts "Sibling files:"
|
|
222
|
+
skill.siblings.each do |category, files|
|
|
223
|
+
puts " #{category}/"
|
|
224
|
+
files.each { |f| puts " #{f}" }
|
|
225
|
+
end
|
|
226
|
+
end
|
|
227
|
+
|
|
228
|
+
puts ""
|
|
229
|
+
puts "--- Instructions ---"
|
|
230
|
+
puts skill.instructions
|
|
231
|
+
end
|
|
232
|
+
|
|
233
|
+
def cmd_skills_search(query)
|
|
234
|
+
unless query
|
|
235
|
+
puts "Usage: askr skills search <query>"
|
|
236
|
+
exit 1
|
|
237
|
+
end
|
|
238
|
+
|
|
239
|
+
require "ask/skills"
|
|
240
|
+
registry = Ask::Skills.discover
|
|
241
|
+
query_down = query.downcase
|
|
242
|
+
|
|
243
|
+
matches = registry.names.select do |name|
|
|
244
|
+
skill = registry[name]
|
|
245
|
+
name.downcase.include?(query_down) ||
|
|
246
|
+
skill.description.downcase.include?(query_down) ||
|
|
247
|
+
skill.tags.any? { |t| t.downcase.include?(query_down) }
|
|
248
|
+
end
|
|
249
|
+
|
|
250
|
+
if matches.empty?
|
|
251
|
+
puts "No skills matching \"#{query}\"."
|
|
252
|
+
return
|
|
253
|
+
end
|
|
254
|
+
|
|
255
|
+
puts "Skills matching \"#{query}\":"
|
|
256
|
+
matches.sort.each do |name|
|
|
257
|
+
skill = registry[name]
|
|
258
|
+
puts " #{skill.name} — #{skill.description}"
|
|
259
|
+
end
|
|
260
|
+
end
|
|
261
|
+
|
|
153
262
|
def cmd_help
|
|
154
263
|
puts <<~HELP
|
|
155
264
|
Usage: askr <command> [options]
|
|
@@ -159,18 +268,26 @@ module Ask
|
|
|
159
268
|
list List all discovered agents
|
|
160
269
|
schedule Start the scheduler for all scheduled agents
|
|
161
270
|
new <name> Scaffold a new agent directory
|
|
271
|
+
skills list List all discovered skills
|
|
272
|
+
skills show <name> Show skill details and instructions
|
|
273
|
+
skills search <query> Search skills by name, description, or tags
|
|
162
274
|
help Show this help
|
|
163
275
|
|
|
164
276
|
Examples:
|
|
165
277
|
askr list
|
|
166
278
|
askr run health_check
|
|
167
|
-
askr run health_check "Check the server status"
|
|
168
|
-
askr new deploy_bot
|
|
169
279
|
askr schedule
|
|
280
|
+
askr skills list
|
|
281
|
+
askr skills show rails_debug
|
|
282
|
+
askr skills search deploy
|
|
170
283
|
|
|
171
284
|
Agent directories are discovered from:
|
|
172
285
|
./agents/<name>/agent.rb
|
|
173
286
|
./app/agents/<name>/agent.rb
|
|
287
|
+
|
|
288
|
+
Skills are discovered from:
|
|
289
|
+
./agents/shared/skills/<name>/SKILL.md
|
|
290
|
+
./app/agents/shared/skills/<name>/SKILL.md
|
|
174
291
|
HELP
|
|
175
292
|
end
|
|
176
293
|
|
data/lib/ask/agent/version.rb
CHANGED