MCPcopy
hub / github.com/cft0808/edict / main

Function main

scripts/skill_manager.py:312–375  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

310
311
312def main():
313 parser = argparse.ArgumentParser(description='三省六部 Skill 管理工具',
314 formatter_class=argparse.RawDescriptionHelpFormatter)
315 subparsers = parser.add_subparsers(dest='cmd', help='命令')
316
317 # add-remote
318 add_parser = subparsers.add_parser('add-remote', help='从远程 URL 添加 skill')
319 add_parser.add_argument('--agent', required=True, help='目标 Agent ID')
320 add_parser.add_argument('--name', required=True, help='Skill 内部名称')
321 add_parser.add_argument('--source', required=True, help='远程 URL 或本地路径')
322 add_parser.add_argument('--description', default='', help='Skill 描述')
323
324 # list-remote
325 subparsers.add_parser('list-remote', help='列出所有远程 skills')
326
327 # update-remote
328 update_parser = subparsers.add_parser('update-remote', help='更新远程 skill')
329 update_parser.add_argument('--agent', required=True, help='Agent ID')
330 update_parser.add_argument('--name', required=True, help='Skill 名称')
331
332 # remove-remote
333 remove_parser = subparsers.add_parser('remove-remote', help='移除远程 skill')
334 remove_parser.add_argument('--agent', required=True, help='Agent ID')
335 remove_parser.add_argument('--name', required=True, help='Skill 名称')
336
337 # import-official-hub
338 import_parser = subparsers.add_parser('import-official-hub', help='从默认 Skills 源或自定义 Hub 导入 skills')
339 import_parser.add_argument('--agents', default='', help='逗号分隔的 Agent IDs(可选)')
340
341 # check-updates
342 check_parser = subparsers.add_parser('check-updates', help='检查更新(未来功能)')
343 check_parser.add_argument('--interval', default='weekly',
344 help='检查间隔 (weekly/daily/monthly)')
345
346 args = parser.parse_args()
347
348 if not args.cmd:
349 parser.print_help()
350 return
351
352 if args.cmd == 'add-remote':
353 success = add_remote(args.agent, args.name, args.source, args.description)
354 sys.exit(0 if success else 1)
355
356 elif args.cmd == 'list-remote':
357 success = list_remote()
358 sys.exit(0 if success else 1)
359
360 elif args.cmd == 'update-remote':
361 success = update_remote(args.agent, args.name)
362 sys.exit(0 if success else 1)
363
364 elif args.cmd == 'remove-remote':
365 success = remove_remote(args.agent, args.name)
366 sys.exit(0 if success else 1)
367
368 elif args.cmd == 'import-official-hub':
369 agent_list = [a.strip() for a in args.agents.split(',') if a.strip()] if args.agents else []

Callers 1

skill_manager.pyFile · 0.70

Calls 5

add_remoteFunction · 0.85
list_remoteFunction · 0.85
update_remoteFunction · 0.85
remove_remoteFunction · 0.85
import_official_hubFunction · 0.85

Tested by

no test coverage detected