@softspark/ai-toolkit 4.3.3 → 4.4.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/CHANGELOG.md +54 -0
- package/README.md +12 -11
- package/app/.claude-plugin/plugin.json +1 -1
- package/app/ARCHITECTURE.md +1 -1
- package/app/hooks/_hook-io.sh +11 -6
- package/app/hooks/stop-search-check.sh +4 -1
- package/app/hooks/track-usage.sh +2 -2
- package/app/hooks/user-prompt-submit.sh +3 -3
- package/app/hooks.json +1 -1
- package/benchmarks/ecosystem-doctor-snapshot.json +35 -14
- package/kb/procedures/maintenance-sop.md +40 -3
- package/kb/reference/architecture-overview.md +2 -2
- package/kb/reference/codex-cli-compatibility.md +25 -6
- package/kb/reference/global-install-model.md +2 -2
- package/kb/reference/hooks-catalog.md +29 -10
- package/kb/reference/supported-tools-registry.md +12 -12
- package/llms-full.txt +75 -32
- package/manifest.json +1 -1
- package/package.json +1 -1
- package/scripts/ecosystem_tools.json +25 -7
- package/scripts/generate_cline_skills.py +26 -0
- package/scripts/generate_codex_hooks.py +0 -1
- package/scripts/generate_cursor_skills.py +25 -0
- package/scripts/generate_windsurf_skills.py +26 -0
- package/scripts/install.py +2 -2
- package/scripts/install_steps/ai_tools.py +30 -8
- package/scripts/skill_pointer.py +49 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"""Shared generator for editor-native ai-toolkit skill catalogue pointers."""
|
|
2
|
+
from __future__ import annotations
|
|
3
|
+
|
|
4
|
+
from pathlib import Path
|
|
5
|
+
|
|
6
|
+
from emission import emit_skills_bullets
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
POINTER_SKILL_NAME = "ai-toolkit-skill-catalogue"
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
def build_pointer_skill(editor_name: str) -> str:
|
|
13
|
+
"""Build a SKILL.md pointer to the canonical ai-toolkit skill catalogue."""
|
|
14
|
+
body = (
|
|
15
|
+
"# AI Toolkit Skill Catalogue\n\n"
|
|
16
|
+
f"This workspace uses ai-toolkit with {editor_name}. Real skills are "
|
|
17
|
+
"installed alongside Claude Code at `.claude/skills/` (project "
|
|
18
|
+
"install) or `~/.claude/skills/` (global install). If those paths are "
|
|
19
|
+
"not present, use the catalogue below to identify the matching "
|
|
20
|
+
"ai-toolkit skill before recreating its workflow manually.\n\n"
|
|
21
|
+
"## When to use this skill\n\n"
|
|
22
|
+
"- The user's request maps to one of the catalogued skills below.\n"
|
|
23
|
+
"- You need to discover which ai-toolkit skill should guide the task.\n\n"
|
|
24
|
+
"## How to use a catalogue entry\n\n"
|
|
25
|
+
"1. Match the user's task to a skill name in the catalogue.\n"
|
|
26
|
+
"2. Read the skill's SKILL.md from `.claude/skills/<name>/SKILL.md` "
|
|
27
|
+
"or `~/.claude/skills/<name>/SKILL.md` when available.\n"
|
|
28
|
+
"3. Follow that skill's workflow, rules, gotchas, and exclusions.\n\n"
|
|
29
|
+
"## Catalogue\n\n"
|
|
30
|
+
f"{emit_skills_bullets()}\n"
|
|
31
|
+
)
|
|
32
|
+
return (
|
|
33
|
+
"---\n"
|
|
34
|
+
f"name: {POINTER_SKILL_NAME}\n"
|
|
35
|
+
"description: Index of ai-toolkit skills installed at .claude/skills/"
|
|
36
|
+
" or ~/.claude/skills/. Read this first when the user's request "
|
|
37
|
+
"matches a named skill.\n"
|
|
38
|
+
"---\n"
|
|
39
|
+
f"{body}"
|
|
40
|
+
)
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
def write_pointer_skill(target_dir: Path, skill_root: str, editor_name: str) -> Path:
|
|
44
|
+
"""Write a pointer skill under ``skill_root/<pointer>/SKILL.md``."""
|
|
45
|
+
skill_dir = target_dir / skill_root / POINTER_SKILL_NAME
|
|
46
|
+
skill_dir.mkdir(parents=True, exist_ok=True)
|
|
47
|
+
skill_file = skill_dir / "SKILL.md"
|
|
48
|
+
skill_file.write_text(build_pointer_skill(editor_name), encoding="utf-8")
|
|
49
|
+
return skill_file
|