loonger and J
9a19c90f8e
feat(skills): add Import from local to the New skill dialog (MUL-6703) ( #7570 )
...
Adds an "Import from local" route to the New skill dialog, so a member can pick
a folder containing SKILL.md or a .skill / .zip archive and import it straight
into the workspace. Shows name, description and file count before importing,
and fails clearly on a missing SKILL.md, oversized input or a name conflict
instead of creating a partial skill. Reuses the existing POST /api/skills/import
endpoint; web and desktop share the entry point. Docs and locales updated for
all four languages.
Directory selection is decided from path + size before any file is read, so a
large project folder cannot be pulled into memory. Concurrent selections are
guarded by a generation counter, and the import response is parsed through a
zod schema before its status is branched on.
Co-authored-by: J <[email protected] >
2026-08-27 11:19:51 +08:00
..
2026-08-23 16:43:58 +08:00
2026-08-26 15:34:01 +08:00
2026-08-26 15:34:01 +08:00
2026-08-26 15:34:01 +08:00
2026-08-26 15:34:01 +08:00
2026-08-26 15:34:01 +08:00
2026-08-26 15:34:01 +08:00
2026-08-26 15:34:01 +08:00
2026-08-26 15:34:01 +08:00
2026-08-20 16:03:51 +08:00
2026-08-20 16:03:51 +08:00
2026-08-20 16:09:32 +08:00
2026-08-20 16:09:32 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-08-21 12:39:43 +08:00
2026-08-21 12:39:43 +08:00
2026-08-21 12:39:43 +08:00
2026-08-21 12:39:43 +08:00
2026-08-25 18:28:01 +08:00
2026-08-25 18:28:01 +08:00
2026-08-25 18:28:01 +08:00
2026-08-25 18:28:01 +08:00
2026-08-25 22:43:16 +08:00
2026-08-25 22:43:16 +08:00
2026-08-25 22:43:16 +08:00
2026-08-25 22:43:16 +08:00
2026-08-26 14:40:44 +08:00
2026-08-26 14:40:44 +08:00
2026-08-26 14:40:44 +08:00
2026-08-26 14:40:44 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-08-20 00:22:04 +08:00
2026-08-20 00:22:04 +08:00
2026-08-20 00:22:04 +08:00
2026-08-20 00:22:04 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-23 12:56:06 +08:00
2026-08-23 12:56:06 +08:00
2026-08-23 12:56:06 +08:00
2026-08-23 12:56:06 +08:00
2026-08-05 13:42:05 +08:00
2026-08-05 13:42:05 +08:00
2026-08-05 13:42:05 +08:00
2026-08-05 13:42:05 +08:00
2026-08-25 18:28:01 +08:00
2026-08-25 18:28:01 +08:00
2026-08-25 18:28:01 +08:00
2026-08-25 18:28:01 +08:00
2026-08-26 18:05:17 +08:00
2026-08-26 18:05:17 +08:00
2026-08-26 18:05:17 +08:00
2026-08-26 18:05:17 +08:00
2026-08-21 13:21:07 +08:00
2026-08-21 13:21:07 +08:00
2026-08-21 13:21:07 +08:00
2026-08-21 13:21:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-20 14:32:12 +08:00
2026-08-20 14:32:12 +08:00
2026-08-20 14:32:12 +08:00
2026-08-20 14:32:12 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-20 15:22:15 +08:00
2026-08-20 15:22:15 +08:00
2026-08-20 15:22:15 +08:00
2026-08-20 15:22:15 +08:00
2026-08-20 14:32:12 +08:00
2026-08-20 14:32:12 +08:00
2026-08-20 16:09:32 +08:00
2026-08-20 16:09:32 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-08-10 12:05:58 +08:00
2026-08-10 12:05:58 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-20 00:22:04 +08:00
2026-08-20 00:22:04 +08:00
2026-08-20 00:22:04 +08:00
2026-08-20 00:22:04 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-08-13 17:55:36 +08:00
2026-08-13 17:55:36 +08:00
2026-08-13 17:55:36 +08:00
2026-08-13 17:55:36 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-20 12:54:46 +08:00
2026-08-20 12:54:46 +08:00
2026-08-20 12:54:46 +08:00
2026-08-20 12:54:46 +08:00
2026-07-31 15:42:06 +08:00
2026-07-31 15:42:06 +08:00
2026-07-31 15:42:06 +08:00
2026-07-31 15:42:06 +08:00
2026-08-25 13:07:20 +08:00
2026-08-25 13:07:20 +08:00
2026-08-25 13:07:20 +08:00
2026-08-25 13:07:20 +08:00
2026-08-27 11:19:51 +08:00
2026-08-27 11:19:51 +08:00
2026-08-27 11:19:51 +08:00
2026-08-27 11:19:51 +08:00
2026-08-25 18:28:01 +08:00
2026-08-25 18:28:01 +08:00
2026-08-25 18:28:01 +08:00
2026-08-25 18:28:01 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-08-20 14:17:18 +08:00
2026-08-20 14:17:18 +08:00
2026-08-23 12:56:06 +08:00
2026-08-23 12:56:06 +08:00
2026-08-23 12:56:06 +08:00
2026-08-23 12:56:06 +08:00
2026-08-25 18:28:01 +08:00
2026-08-25 18:28:01 +08:00
2026-08-25 18:28:01 +08:00
2026-08-25 18:28:01 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-08-25 13:07:20 +08:00
2026-08-25 13:07:20 +08:00
2026-08-25 13:07:20 +08:00
2026-08-25 13:07:20 +08:00
2026-08-27 11:19:51 +08:00
2026-08-27 11:19:51 +08:00
2026-08-27 11:19:51 +08:00
2026-08-27 11:19:51 +08:00
2026-07-30 14:09:41 +08:00
2026-07-30 14:09:41 +08:00
2026-07-24 16:39:22 +08:00
2026-07-24 16:39:22 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00
2026-08-19 21:27:07 +08:00