@rfxlamia/skillkit 1.0.0 → 1.2.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.
- package/agents/agents/creative-copywriter.md +212 -0
- package/agents/agents/dario-amodei.md +135 -0
- package/agents/agents/doc-simplifier.md +63 -0
- package/agents/agents/kotlin-pro.md +433 -0
- package/agents/agents/red-team.md +136 -0
- package/agents/agents/sam-altman.md +121 -0
- package/agents/agents/seo-manager.md +184 -0
- package/package.json +7 -2
- package/skills/quick-spec/tests/__pycache__/test_skill.cpython-314-pytest-9.0.2.pyc +0 -0
- package/skills/skillkit/.claude/settings.local.json +7 -0
- package/skills/skillkit/scripts/__pycache__/decision_helper.cpython-314.pyc +0 -0
- package/skills/skillkit/scripts/__pycache__/quick_validate.cpython-312.pyc +0 -0
- package/skills/skillkit/scripts/__pycache__/quick_validate.cpython-314.pyc +0 -0
- package/skills/skillkit/scripts/__pycache__/test_generator.cpython-314-pytest-9.0.2.pyc +0 -0
- package/skills/skillkit/scripts/utils/__pycache__/__init__.cpython-312.pyc +0 -0
- package/skills/skillkit/scripts/utils/__pycache__/__init__.cpython-314.pyc +0 -0
- package/skills/skillkit/scripts/utils/__pycache__/budget_tracker.cpython-312.pyc +0 -0
- package/skills/skillkit/scripts/utils/__pycache__/budget_tracker.cpython-314.pyc +0 -0
- package/skills/skillkit/scripts/utils/__pycache__/output_formatter.cpython-312.pyc +0 -0
- package/skills/skillkit/scripts/utils/__pycache__/output_formatter.cpython-314.pyc +0 -0
- package/skills/skillkit/scripts/utils/__pycache__/reference_validator.cpython-312.pyc +0 -0
- package/skills/skillkit/scripts/utils/__pycache__/reference_validator.cpython-314.pyc +0 -0
- package/skills/skillkit-help/SKILL.md +81 -0
- package/skills/skillkit-help/knowledge/application/09-case-studies.md +257 -0
- package/skills/skillkit-help/knowledge/application/12-testing-and-validation.md +276 -0
- package/skills/skillkit-help/knowledge/foundation/01-why-skills-exist.md +246 -0
- package/skills/skillkit-help/knowledge/foundation/02-skills-vs-subagents-comparison.md +312 -0
- package/skills/skillkit-help/knowledge/foundation/03-skills-vs-subagents-decision-tree.md +346 -0
- package/skills/skillkit-help/knowledge/foundation/06-platform-constraints.md +237 -0
- package/skills/skillkit-help/knowledge/foundation/08-when-not-to-use-skills.md +270 -0
- package/skills/skillkit-help/template/SKILL.md +52 -0
- package/skills/skills/adversarial-review/SKILL.md +219 -0
- package/skills/skills/baby-education/SKILL.md +260 -0
- package/skills/skills/baby-education/references/advanced-techniques.md +323 -0
- package/skills/skills/baby-education/references/transformations.md +345 -0
- package/skills/skills/been-there-done-that/SKILL.md +455 -0
- package/skills/skills/been-there-done-that/references/analysis-patterns.md +162 -0
- package/skills/skills/been-there-done-that/references/git-commands.md +132 -0
- package/skills/skills/been-there-done-that/references/tree-insertion-logic.md +145 -0
- package/skills/skills/coolhunter/SKILL.md +270 -0
- package/skills/skills/coolhunter/assets/elicitation-methods.csv +51 -0
- package/skills/skills/coolhunter/knowledge/elicitation-methods.md +312 -0
- package/skills/skills/coolhunter/references/workflow-execution.md +238 -0
- package/skills/skills/coolhunter/workflow-plan-coolhunter.md +232 -0
- package/skills/skills/creative-copywriting/SKILL.md +324 -0
- package/skills/skills/creative-copywriting/databases/README.md +60 -0
- package/skills/skills/creative-copywriting/databases/carousel-structures.csv +16 -0
- package/skills/skills/creative-copywriting/databases/emotional-arcs.csv +11 -0
- package/skills/skills/creative-copywriting/databases/hook-formulas.csv +51 -0
- package/skills/skills/creative-copywriting/databases/power-words.csv +201 -0
- package/skills/skills/creative-copywriting/databases/psychological-triggers.csv +21 -0
- package/skills/skills/creative-copywriting/databases/read-more-patterns.csv +26 -0
- package/skills/skills/creative-copywriting/databases/swipe-triggers.csv +31 -0
- package/skills/skills/creative-copywriting/references/carousel-psychology.md +223 -0
- package/skills/skills/creative-copywriting/references/hook-anatomy.md +169 -0
- package/skills/skills/creative-copywriting/references/power-word-science.md +134 -0
- package/skills/skills/creative-copywriting/references/storytelling-frameworks.md +157 -0
- package/skills/skills/diverse-content-gen/SKILL.md +201 -0
- package/skills/skills/diverse-content-gen/references/advanced-techniques.md +320 -0
- package/skills/skills/diverse-content-gen/references/research-findings.md +379 -0
- package/skills/skills/diverse-content-gen/references/task-workflows.md +241 -0
- package/skills/skills/diverse-content-gen/references/tool-integration.md +419 -0
- package/skills/skills/diverse-content-gen/references/troubleshooting.md +426 -0
- package/skills/skills/diverse-content-gen/references/vs-core-technique.md +240 -0
- package/skills/skills/framework-critical-thinking/SKILL.md +220 -0
- package/skills/skills/framework-critical-thinking/references/bias_detector.md +375 -0
- package/skills/skills/framework-critical-thinking/references/fallback_handler.md +239 -0
- package/skills/skills/framework-critical-thinking/references/memory_curator.md +161 -0
- package/skills/skills/framework-critical-thinking/references/metacognitive_monitor.md +297 -0
- package/skills/skills/framework-critical-thinking/references/producer_critic_orchestrator.md +333 -0
- package/skills/skills/framework-critical-thinking/references/reasoning_router.md +235 -0
- package/skills/skills/framework-critical-thinking/references/reasoning_validator.md +97 -0
- package/skills/skills/framework-critical-thinking/references/reflection_trigger.md +78 -0
- package/skills/skills/framework-critical-thinking/references/self_verification.md +388 -0
- package/skills/skills/framework-critical-thinking/references/uncertainty_quantifier.md +207 -0
- package/skills/skills/framework-initiative/SKILL.md +231 -0
- package/skills/skills/framework-initiative/references/examples.md +150 -0
- package/skills/skills/framework-initiative/references/impact-analysis.md +157 -0
- package/skills/skills/framework-initiative/references/intent-patterns.md +145 -0
- package/skills/skills/framework-initiative/references/star-framework.md +165 -0
- package/skills/skills/humanize-docs/SKILL.md +203 -0
- package/skills/skills/humanize-docs/references/advanced-techniques.md +13 -0
- package/skills/skills/humanize-docs/references/core-transformations.md +368 -0
- package/skills/skills/humanize-docs/references/detection-patterns.md +400 -0
- package/skills/skills/humanize-docs/references/examples-gallery.md +374 -0
- package/skills/skills/imagine/SKILL.md +190 -0
- package/skills/skills/imagine/references/artstyle-corporate-memphis.md +625 -0
- package/skills/skills/imagine/references/artstyle-crewdson-hyperrealism.md +295 -0
- package/skills/skills/imagine/references/artstyle-iphone-social-media.md +426 -0
- package/skills/skills/imagine/references/artstyle-sciencesaru.md +276 -0
- package/skills/skills/pre-deploy-checklist/README.md +26 -0
- package/skills/skills/pre-deploy-checklist/SKILL.md +153 -0
- package/skills/skills/pre-deploy-checklist/references/checklist-categories.md +174 -0
- package/skills/skills/pre-deploy-checklist/references/domain-prompts.md +216 -0
- package/skills/skills/prompt-engineering/SKILL.md +209 -0
- package/skills/skills/prompt-engineering/references/advanced-combinations.md +444 -0
- package/skills/skills/prompt-engineering/references/chain-of-thought.md +140 -0
- package/skills/skills/prompt-engineering/references/decision_matrix.md +220 -0
- package/skills/skills/prompt-engineering/references/few-shot.md +346 -0
- package/skills/skills/prompt-engineering/references/json-format.md +270 -0
- package/skills/skills/prompt-engineering/references/natural-language.md +420 -0
- package/skills/skills/prompt-engineering/references/pitfalls.md +365 -0
- package/skills/skills/prompt-engineering/references/prompt-chaining.md +498 -0
- package/skills/skills/prompt-engineering/references/react.md +108 -0
- package/skills/skills/prompt-engineering/references/self-consistency.md +322 -0
- package/skills/skills/prompt-engineering/references/tree-of-thoughts.md +386 -0
- package/skills/skills/prompt-engineering/references/xml-format.md +220 -0
- package/skills/skills/prompt-engineering/references/yaml-format.md +488 -0
- package/skills/skills/prompt-engineering/references/zero-shot.md +74 -0
- package/skills/skills/quick-spec/SKILL.md +280 -0
- package/skills/skills/quick-spec/assets/tech-spec-template.md +74 -0
- package/skills/skills/quick-spec/references/step-01-understand.md +189 -0
- package/skills/skills/quick-spec/references/step-02-investigate.md +144 -0
- package/skills/skills/quick-spec/references/step-03-generate.md +128 -0
- package/skills/skills/quick-spec/references/step-04-review.md +173 -0
- package/skills/skills/quick-spec/tests/__pycache__/test_skill.cpython-314-pytest-9.0.2.pyc +0 -0
- package/skills/skills/quick-spec/tests/test_scenarios.md +83 -0
- package/skills/skills/quick-spec/tests/test_skill.py +136 -0
- package/skills/skills/readme-expert/SKILL.md +538 -0
- package/skills/skills/readme-expert/knowledge/INDEX.md +192 -0
- package/skills/skills/readme-expert/knowledge/application/quality-standards.md +470 -0
- package/skills/skills/readme-expert/knowledge/application/script-executor.md +604 -0
- package/skills/skills/readme-expert/knowledge/application/template-library.md +822 -0
- package/skills/skills/readme-expert/knowledge/foundation/codebase-scanner.md +361 -0
- package/skills/skills/readme-expert/knowledge/foundation/validation-checklist.md +481 -0
- package/skills/skills/red-teaming/SKILL.md +321 -0
- package/skills/skills/red-teaming/references/ai-llm-redteam.md +517 -0
- package/skills/skills/red-teaming/references/attack-techniques.md +410 -0
- package/skills/skills/red-teaming/references/cybersecurity-redteam.md +383 -0
- package/skills/skills/red-teaming/references/tools-frameworks.md +446 -0
- package/skills/skills/releasing/.skillkit-mode +1 -0
- package/skills/skills/releasing/SKILL.md +225 -0
- package/skills/skills/releasing/references/version-detection.md +108 -0
- package/skills/skills/screenwriter/SKILL.md +273 -0
- package/skills/skills/screenwriter/references/advanced-techniques.md +216 -0
- package/skills/skills/screenwriter/references/pipeline-integration.md +266 -0
- package/skills/skills/skillkit/.claude/settings.local.json +7 -0
- package/skills/skills/skillkit/.claude-plugin/plugin.json +27 -0
- package/skills/skills/skillkit/CHANGELOG.md +484 -0
- package/skills/skills/skillkit/SKILL.md +511 -0
- package/skills/skills/skillkit/commands/skillkit.md +6 -0
- package/skills/skills/skillkit/commands/validate-plan.md +6 -0
- package/skills/skills/skillkit/commands/verify.md +6 -0
- package/skills/skills/skillkit/knowledge/INDEX.md +352 -0
- package/skills/skills/skillkit/knowledge/application/09-case-studies.md +257 -0
- package/skills/skills/skillkit/knowledge/application/10-technical-architecture.md +324 -0
- package/skills/skills/skillkit/knowledge/application/11-adoption-strategy.md +267 -0
- package/skills/skills/skillkit/knowledge/application/12-testing-and-validation.md +276 -0
- package/skills/skills/skillkit/knowledge/application/13-competitive-landscape.md +198 -0
- package/skills/skills/skillkit/knowledge/foundation/01-why-skills-exist.md +246 -0
- package/skills/skills/skillkit/knowledge/foundation/02-skills-vs-subagents-comparison.md +312 -0
- package/skills/skills/skillkit/knowledge/foundation/03-skills-vs-subagents-decision-tree.md +346 -0
- package/skills/skills/skillkit/knowledge/foundation/04-hybrid-patterns.md +308 -0
- package/skills/skills/skillkit/knowledge/foundation/05-token-economics.md +275 -0
- package/skills/skills/skillkit/knowledge/foundation/06-platform-constraints.md +237 -0
- package/skills/skills/skillkit/knowledge/foundation/07-security-concerns.md +322 -0
- package/skills/skills/skillkit/knowledge/foundation/08-when-not-to-use-skills.md +270 -0
- package/skills/skills/skillkit/knowledge/plugin-guide.md +614 -0
- package/skills/skills/skillkit/knowledge/tools/14-validation-tools-guide.md +150 -0
- package/skills/skills/skillkit/knowledge/tools/15-cost-tools-guide.md +157 -0
- package/skills/skills/skillkit/knowledge/tools/16-security-tools-guide.md +122 -0
- package/skills/skills/skillkit/knowledge/tools/17-pattern-tools-guide.md +161 -0
- package/skills/skills/skillkit/knowledge/tools/18-decision-helper-guide.md +243 -0
- package/skills/skills/skillkit/knowledge/tools/19-test-generator-guide.md +275 -0
- package/skills/skills/skillkit/knowledge/tools/20-split-skill-guide.md +149 -0
- package/skills/skills/skillkit/knowledge/tools/21-quality-scorer-guide.md +226 -0
- package/skills/skills/skillkit/knowledge/tools/22-migration-helper-guide.md +356 -0
- package/skills/skills/skillkit/knowledge/tools/23-subagent-creation-guide.md +448 -0
- package/skills/skills/skillkit/knowledge/tools/24-behavioral-testing-guide.md +122 -0
- package/skills/skills/skillkit/references/proposal-generation.md +982 -0
- package/skills/skills/skillkit/references/rationalization-catalog.md +75 -0
- package/skills/skills/skillkit/references/research-methodology.md +661 -0
- package/skills/skills/skillkit/references/section-2-full-creation-workflow.md +452 -0
- package/skills/skills/skillkit/references/section-3-validation-workflow-existing-skill.md +63 -0
- package/skills/skills/skillkit/references/section-4-decision-workflow-skills-vs-subagents.md +64 -0
- package/skills/skills/skillkit/references/section-5-migration-workflow-doc-to-skill.md +58 -0
- package/skills/skills/skillkit/references/section-6-subagent-creation-workflow.md +499 -0
- package/skills/skills/skillkit/references/section-7-knowledge-reference-map.md +72 -0
- package/skills/skills/skillkit/scripts/__pycache__/decision_helper.cpython-314.pyc +0 -0
- package/skills/skills/skillkit/scripts/__pycache__/quick_validate.cpython-312.pyc +0 -0
- package/skills/skills/skillkit/scripts/__pycache__/quick_validate.cpython-314.pyc +0 -0
- package/skills/skills/skillkit/scripts/__pycache__/test_generator.cpython-314-pytest-9.0.2.pyc +0 -0
- package/skills/skills/skillkit/scripts/decision_helper.py +799 -0
- package/skills/skills/skillkit/scripts/init_skill.py +400 -0
- package/skills/skills/skillkit/scripts/init_subagent.py +231 -0
- package/skills/skills/skillkit/scripts/migration_helper.py +669 -0
- package/skills/skills/skillkit/scripts/package_skill.py +211 -0
- package/skills/skills/skillkit/scripts/pattern_detector.py +381 -0
- package/skills/skills/skillkit/scripts/pattern_detector_new.py +382 -0
- package/skills/skills/skillkit/scripts/pressure_tester.py +157 -0
- package/skills/skills/skillkit/scripts/quality_scorer.py +999 -0
- package/skills/skills/skillkit/scripts/quick_validate.py +100 -0
- package/skills/skills/skillkit/scripts/security_scanner.py +474 -0
- package/skills/skills/skillkit/scripts/split_skill.py +540 -0
- package/skills/skills/skillkit/scripts/test_generator.py +695 -0
- package/skills/skills/skillkit/scripts/token_estimator.py +493 -0
- package/skills/skills/skillkit/scripts/utils/__init__.py +49 -0
- package/skills/skills/skillkit/scripts/utils/__pycache__/__init__.cpython-312.pyc +0 -0
- package/skills/skills/skillkit/scripts/utils/__pycache__/__init__.cpython-314.pyc +0 -0
- package/skills/skills/skillkit/scripts/utils/__pycache__/budget_tracker.cpython-312.pyc +0 -0
- package/skills/skills/skillkit/scripts/utils/__pycache__/budget_tracker.cpython-314.pyc +0 -0
- package/skills/skills/skillkit/scripts/utils/__pycache__/output_formatter.cpython-312.pyc +0 -0
- package/skills/skills/skillkit/scripts/utils/__pycache__/output_formatter.cpython-314.pyc +0 -0
- package/skills/skills/skillkit/scripts/utils/__pycache__/reference_validator.cpython-312.pyc +0 -0
- package/skills/skills/skillkit/scripts/utils/__pycache__/reference_validator.cpython-314.pyc +0 -0
- package/skills/skills/skillkit/scripts/utils/budget_tracker.py +388 -0
- package/skills/skills/skillkit/scripts/utils/output_formatter.py +263 -0
- package/skills/skills/skillkit/scripts/utils/reference_validator.py +401 -0
- package/skills/skills/skillkit/scripts/validate_skill.py +594 -0
- package/skills/skills/skillkit/tests/test_behavioral.py +39 -0
- package/skills/skills/skillkit/tests/test_scenarios.md +83 -0
- package/skills/skills/skillkit/tests/test_skill.py +136 -0
- package/skills/skills/skillkit-help/SKILL.md +81 -0
- package/skills/skills/skillkit-help/knowledge/application/09-case-studies.md +257 -0
- package/skills/skills/skillkit-help/knowledge/application/12-testing-and-validation.md +276 -0
- package/skills/skills/skillkit-help/knowledge/foundation/01-why-skills-exist.md +246 -0
- package/skills/skills/skillkit-help/knowledge/foundation/02-skills-vs-subagents-comparison.md +312 -0
- package/skills/skills/skillkit-help/knowledge/foundation/03-skills-vs-subagents-decision-tree.md +346 -0
- package/skills/skills/skillkit-help/knowledge/foundation/06-platform-constraints.md +237 -0
- package/skills/skills/skillkit-help/knowledge/foundation/08-when-not-to-use-skills.md +270 -0
- package/skills/skills/skillkit-help/template/SKILL.md +52 -0
- package/skills/skills/social-media-seo/SKILL.md +278 -0
- package/skills/skills/social-media-seo/databases/caption-styles.csv +31 -0
- package/skills/skills/social-media-seo/databases/engagement-tactics.csv +16 -0
- package/skills/skills/social-media-seo/databases/hashtag-strategies.csv +21 -0
- package/skills/skills/social-media-seo/databases/hook-formulas.csv +26 -0
- package/skills/skills/social-media-seo/databases/keyword-clusters.csv +11 -0
- package/skills/skills/social-media-seo/databases/thread-structures.csv +26 -0
- package/skills/skills/social-media-seo/databases/viral-patterns.csv +21 -0
- package/skills/skills/social-media-seo/references/analytics-guide.md +321 -0
- package/skills/skills/social-media-seo/references/instagram-seo.md +235 -0
- package/skills/skills/social-media-seo/references/threads-seo.md +305 -0
- package/skills/skills/social-media-seo/references/x-twitter-seo.md +337 -0
- package/skills/skills/social-media-seo/scripts/query_database.py +191 -0
- package/skills/skills/storyteller/SKILL.md +241 -0
- package/skills/skills/storyteller/references/transformation-methodology.md +293 -0
- package/skills/skills/storyteller/references/visual-vocabulary.md +177 -0
- package/skills/skills/thread-pro/SKILL.md +162 -0
- package/skills/skills/thread-pro/anti-ai-patterns.md +120 -0
- package/skills/skills/thread-pro/hook-formulas.md +138 -0
- package/skills/skills/thread-pro/references/anti-ai-patterns.md +120 -0
- package/skills/skills/thread-pro/references/hook-formulas.md +138 -0
- package/skills/skills/thread-pro/references/thread-structures.md +240 -0
- package/skills/skills/thread-pro/references/voice-injection.md +130 -0
- package/skills/skills/thread-pro/thread-structures.md +240 -0
- package/skills/skills/thread-pro/voice-injection.md +130 -0
- package/skills/skills/tinkering/SKILL.md +251 -0
- package/skills/skills/tinkering/references/graduation-checklist.md +100 -0
- package/skills/skills/validate-plan/.skillkit-mode +1 -0
- package/skills/skills/validate-plan/SKILL.md +406 -0
- package/skills/skills/validate-plan/references/dry-principles.md +251 -0
- package/skills/skills/validate-plan/references/gap-analysis-guide.md +320 -0
- package/skills/skills/validate-plan/references/tdd-patterns.md +413 -0
- package/skills/skills/validate-plan/references/yagni-checklist.md +330 -0
- package/skills/skills/verify-before-ship/.skillkit-mode +1 -0
- package/skills/skills/verify-before-ship/SKILL.md +116 -0
- package/skills/skills/verify-before-ship/references/anti-rationalization.md +212 -0
- package/skills/skills/verify-before-ship/references/verification-gates.md +305 -0
- package/skills-manifest.json +8 -2
- package/src/banner.js +1 -1
- package/src/cli.js +15 -4
- package/src/install.js +45 -29
- package/src/install.test.js +75 -7
- package/src/picker.js +15 -4
- package/src/picker.test.js +36 -1
- package/src/scope.js +8 -39
- package/src/scope.test.js +9 -13
- package/src/tools.js +76 -0
- package/src/tools.test.js +80 -0
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "Decision Helper Tool: Skills vs Subagents"
|
|
3
|
+
purpose: "Guide for using decision_helper.py to get instant recommendations"
|
|
4
|
+
tool_name: "decision_helper.py"
|
|
5
|
+
tool_type: "agent-layer"
|
|
6
|
+
read_priority: "high"
|
|
7
|
+
read_when:
|
|
8
|
+
- "User asks 'Should I use Skill or Subagent for X?'"
|
|
9
|
+
- "Decision guidance needed"
|
|
10
|
+
- "Token efficiency comparison required"
|
|
11
|
+
- "Before implementing new capability"
|
|
12
|
+
related_files:
|
|
13
|
+
- "File 02: Skills vs Subagents comparison"
|
|
14
|
+
- "File 03: Decision tree logic"
|
|
15
|
+
- "File 05: Token economics"
|
|
16
|
+
token_estimate: "800"
|
|
17
|
+
last_updated: "2025-02-07"
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
# Decision Helper Tool: Skills vs Subagents
|
|
21
|
+
|
|
22
|
+
## PURPOSE
|
|
23
|
+
|
|
24
|
+
Agent-layer tool untuk instant Skills vs Subagents recommendations menggunakan File 03 decision tree. Called BY Claude via bash_tool, NOT for direct human use.
|
|
25
|
+
|
|
26
|
+
**Flow:** User asks → Claude calls tool → JSON output → Claude explains
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## THREE MODES
|
|
31
|
+
|
|
32
|
+
### Mode 1: Pre-Answered (Preferred)
|
|
33
|
+
|
|
34
|
+
**When:** Claude has extracted clear answers from conversation.
|
|
35
|
+
|
|
36
|
+
**CRITICAL: Agent MUST create a temp JSON file first.** The `decision_helper.py` script does NOT accept inline JSON strings - it requires a file path to a JSON file.
|
|
37
|
+
|
|
38
|
+
**Step-by-step workflow (REQUIRED):**
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
# STEP 1: Create temp directory
|
|
42
|
+
mkdir -p ./tmp/skillkit
|
|
43
|
+
|
|
44
|
+
# STEP 2: Create JSON file with answers (REQUIRED - cannot be inline)
|
|
45
|
+
cat > ./tmp/skillkit/decision-answers.json <<'EOF'
|
|
46
|
+
{
|
|
47
|
+
"utility_task": false,
|
|
48
|
+
"multi_step": true,
|
|
49
|
+
"reusable": false,
|
|
50
|
+
"specialized_personality": true,
|
|
51
|
+
"missing_knowledge": false,
|
|
52
|
+
"coordination": true,
|
|
53
|
+
"isolated_context": true,
|
|
54
|
+
"clutter_chat": true
|
|
55
|
+
}
|
|
56
|
+
EOF
|
|
57
|
+
|
|
58
|
+
# STEP 3: Call decision helper with FILE PATH (not JSON string)
|
|
59
|
+
cd ~/.claude/skills/skillkit && source venv/bin/activate
|
|
60
|
+
python scripts/decision_helper.py --answers ./tmp/skillkit/decision-answers.json
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
**Required JSON structure:**
|
|
64
|
+
- 8 keys (exact names): `utility_task`, `multi_step`, `reusable`, `specialized_personality`, `missing_knowledge`, `coordination`, `isolated_context`, `clutter_chat`
|
|
65
|
+
- All values MUST be boolean (`true` or `false`), not strings
|
|
66
|
+
- Missing/extra keys will cause validation error
|
|
67
|
+
|
|
68
|
+
**Accuracy:** Highest (90-95% confidence).
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
### Mode 2: Keyword Inference (Fallback)
|
|
73
|
+
|
|
74
|
+
**When:** User query ambiguous, inference needed.
|
|
75
|
+
|
|
76
|
+
**Call (JSON output - default):**
|
|
77
|
+
```bash
|
|
78
|
+
python decision_helper.py --analyze "code review with validation"
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
**Call (Text output - for debugging):** *[New in v1.0.1]*
|
|
82
|
+
```bash
|
|
83
|
+
python decision_helper.py --analyze "code review with validation" --format text
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
**Accuracy:** Lower (confidence reduced 15%).
|
|
87
|
+
|
|
88
|
+
**Note:** Prefer Mode 1 when possible. JSON is default for agent-layer use.
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
### Mode 3: Show Criteria (Reference)
|
|
93
|
+
|
|
94
|
+
**When:** User asks "How do you decide?"
|
|
95
|
+
|
|
96
|
+
**Call (JSON output - default):**
|
|
97
|
+
```bash
|
|
98
|
+
python decision_helper.py --show-criteria
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
**Call (Text output):** *[New in v1.0.1]*
|
|
102
|
+
```bash
|
|
103
|
+
python decision_helper.py --show-criteria --format text
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
**Output:** All 8 questions + score interpretation table.
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
## OUTPUT STRUCTURE
|
|
111
|
+
|
|
112
|
+
**Success:**
|
|
113
|
+
```json
|
|
114
|
+
{
|
|
115
|
+
"status": "success",
|
|
116
|
+
"recommendation": "Strong Subagent",
|
|
117
|
+
"score": -6,
|
|
118
|
+
"confidence": 0.92,
|
|
119
|
+
"workflow_mode": "full",
|
|
120
|
+
"mode_reasoning": "Discipline-enforcing skills require behavioral validation",
|
|
121
|
+
"reasoning": ["Multi-step process...", "Specialized personality..."],
|
|
122
|
+
"token_analysis": {
|
|
123
|
+
"skill_approach_tokens": 500,
|
|
124
|
+
"subagent_approach_tokens": 7500,
|
|
125
|
+
"cost_multiplier": 15.0
|
|
126
|
+
},
|
|
127
|
+
"pattern_suggestions": ["Implement as Subagent", ...],
|
|
128
|
+
"references": {"conceptual": "File 02", ...}
|
|
129
|
+
}
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
**Mode selection logic:**
|
|
133
|
+
- Score `>= 6` (Strong/Moderate Skill) + discipline keywords -> `full` mode
|
|
134
|
+
- Score `<= -3` (Subagent) -> not applicable (use subagent creation)
|
|
135
|
+
- Simple utility, no discipline requirement -> `fast` mode
|
|
136
|
+
|
|
137
|
+
**Error:**
|
|
138
|
+
```json
|
|
139
|
+
{
|
|
140
|
+
"status": "error",
|
|
141
|
+
"error_type": "InvalidInput|FileNotFound|InvalidJSON",
|
|
142
|
+
"message": "...",
|
|
143
|
+
"help": "..."
|
|
144
|
+
}
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
**Exit Codes:** 0 = success, 1 = error.
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
## CLAUDE'S USAGE PATTERN
|
|
152
|
+
|
|
153
|
+
**Step 1:** User asks → Claude analyzes question
|
|
154
|
+
|
|
155
|
+
**Step 2:** Claude prepares answers.json with 8 boolean values
|
|
156
|
+
|
|
157
|
+
**Step 3:** Call tool via bash_tool
|
|
158
|
+
|
|
159
|
+
**Step 4:** Parse JSON output (`json.loads(result.stdout)`)
|
|
160
|
+
|
|
161
|
+
**Step 5:** Check `status` field:
|
|
162
|
+
- `"success"` → Use recommendation, explain reasoning to user
|
|
163
|
+
- `"error"` → Handle error (retry or ask clarification)
|
|
164
|
+
|
|
165
|
+
**Example Explanation:**
|
|
166
|
+
```
|
|
167
|
+
Based on analysis, I recommend **Subagent** (92% confidence).
|
|
168
|
+
|
|
169
|
+
Reasons:
|
|
170
|
+
• Multi-step process needed
|
|
171
|
+
• Specialized personality beneficial
|
|
172
|
+
• Isolated context prevents clutter
|
|
173
|
+
|
|
174
|
+
Token cost: ~7,500 tokens (15× multiplier, justified for complexity)
|
|
175
|
+
|
|
176
|
+
See File 03 for decision tree details.
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
---
|
|
180
|
+
|
|
181
|
+
## ERROR HANDLING
|
|
182
|
+
|
|
183
|
+
| Error Type | Fix |
|
|
184
|
+
|------------|-----|
|
|
185
|
+
| `InvalidInput` | Provide all 8 answers |
|
|
186
|
+
| `FileNotFound` | Check path or use --analyze |
|
|
187
|
+
| `InvalidJSON` | Validate JSON syntax |
|
|
188
|
+
| `InvalidType` | Use boolean values (true/false) |
|
|
189
|
+
|
|
190
|
+
**Recovery:** If error, Claude asks clarification OR retries with Mode 2.
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
## TROUBLESHOOTING
|
|
195
|
+
|
|
196
|
+
**❌ Common Mistake: Passing inline JSON string**
|
|
197
|
+
```bash
|
|
198
|
+
# WRONG - These will FAIL
|
|
199
|
+
python decision_helper.py --answers "true,true,false,..."
|
|
200
|
+
python decision_helper.py --answers '{"utility_task": true, ...}'
|
|
201
|
+
```
|
|
202
|
+
**Why it fails:** The `--answers` flag expects a FILE PATH, not JSON content.
|
|
203
|
+
The script reads the file at that path (see lines 669-677 of decision_helper.py).
|
|
204
|
+
|
|
205
|
+
**✅ Correct: Create JSON file first, then pass the file path**
|
|
206
|
+
```bash
|
|
207
|
+
# STEP 1: Create the JSON file
|
|
208
|
+
cat > ./tmp/skillkit/answers.json <<'EOF'
|
|
209
|
+
{
|
|
210
|
+
"utility_task": true,
|
|
211
|
+
"multi_step": false,
|
|
212
|
+
"reusable": true,
|
|
213
|
+
"specialized_personality": false,
|
|
214
|
+
"missing_knowledge": false,
|
|
215
|
+
"coordination": false,
|
|
216
|
+
"isolated_context": false,
|
|
217
|
+
"clutter_chat": false
|
|
218
|
+
}
|
|
219
|
+
EOF
|
|
220
|
+
|
|
221
|
+
# STEP 2: Pass the FILE PATH to --answers
|
|
222
|
+
python decision_helper.py --answers ./tmp/skillkit/answers.json
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
**Quick validation:**
|
|
226
|
+
```bash
|
|
227
|
+
# Test if file exists and has valid JSON
|
|
228
|
+
test -f ./tmp/skillkit/answers.json && python3 -m json.tool < ./tmp/skillkit/answers.json
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
---
|
|
232
|
+
|
|
233
|
+
## REFERENCES
|
|
234
|
+
|
|
235
|
+
- **File 02:** Skills vs Subagents comparison
|
|
236
|
+
- **File 03:** 8-question decision tree
|
|
237
|
+
- **File 05:** Token economics
|
|
238
|
+
|
|
239
|
+
**Tool:** `/mnt/user-data/outputs/decision_helper.py` (607 lines, stdlib only)
|
|
240
|
+
|
|
241
|
+
---
|
|
242
|
+
|
|
243
|
+
**Status:** ✅ Production-ready | **Version:** 1.0 | **Integration:** Ready for skillkit
|
|
@@ -0,0 +1,275 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: test-generator-guide
|
|
3
|
+
description: "Usage guide for test_generator.py - Auto-generate comprehensive test scenarios for skills"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Test Generator Usage Guide
|
|
7
|
+
|
|
8
|
+
**Script:** test_generator.py
|
|
9
|
+
**Purpose:** Auto-generate comprehensive test scenarios from skill descriptions
|
|
10
|
+
**Impact:** Saves 1-2 hours per skill testing
|
|
11
|
+
**References:** File 12 (testing best practices)
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Deprecation Notice (v2)
|
|
16
|
+
|
|
17
|
+
Legacy structural-only mode (running `test_generator.py` without `--behavioral`) is deprecated in v2.
|
|
18
|
+
|
|
19
|
+
Use v2 style instead:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
python3 test_generator.py path/to/skill/ --behavioral --test-format pytest
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Quick Start
|
|
28
|
+
|
|
29
|
+
### Basic Usage
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
# v2 recommended (behavioral + pytest)
|
|
33
|
+
python3 test_generator.py path/to/skill/ --behavioral --test-format pytest
|
|
34
|
+
|
|
35
|
+
# Comprehensive coverage
|
|
36
|
+
python3 test_generator.py path/to/skill/ --coverage comprehensive --behavioral --test-format pytest
|
|
37
|
+
|
|
38
|
+
# Unittest format
|
|
39
|
+
python3 test_generator.py path/to/skill/ --test-format unittest
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### What Gets Generated
|
|
43
|
+
|
|
44
|
+
```
|
|
45
|
+
skill-directory/
|
|
46
|
+
└── tests/
|
|
47
|
+
├── test_scenarios.md # Human-readable test scenarios
|
|
48
|
+
└── test_skill.py # Test implementation skeleton
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## Coverage Levels
|
|
54
|
+
|
|
55
|
+
| Level | Description | Scenarios per Capability |
|
|
56
|
+
|-------|-------------|-------------------------|
|
|
57
|
+
| **basic** | Happy path only | 1 scenario |
|
|
58
|
+
| **standard** | Happy + error cases | 3 scenarios |
|
|
59
|
+
| **comprehensive** | Happy + error + edge cases | 5+ scenarios |
|
|
60
|
+
|
|
61
|
+
**Recommendation:** Use `standard` for most skills, `comprehensive` for critical skills.
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Test Formats
|
|
66
|
+
|
|
67
|
+
### pytest (Default)
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
python3 test_generator.py my-skill/ --test-format pytest
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Generates pytest-compatible test functions:
|
|
74
|
+
```python
|
|
75
|
+
def test_01_capability_description():
|
|
76
|
+
"""Test description."""
|
|
77
|
+
# TODO: Implement test logic
|
|
78
|
+
pass
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
**Run tests:** `pytest my-skill/tests/`
|
|
82
|
+
|
|
83
|
+
### unittest
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
python3 test_generator.py my-skill/ --test-format unittest
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Generates unittest.TestCase class:
|
|
90
|
+
```python
|
|
91
|
+
class TestSkill(unittest.TestCase):
|
|
92
|
+
def test_01_capability_description(self):
|
|
93
|
+
"""Test description."""
|
|
94
|
+
pass
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
**Run tests:** `python -m unittest discover my-skill/tests`
|
|
98
|
+
|
|
99
|
+
### plain
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
python3 test_generator.py my-skill/ --test-format plain
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
Generates plain text test plan (no code).
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
## How It Works
|
|
110
|
+
|
|
111
|
+
### 1. Parse SKILL.md
|
|
112
|
+
|
|
113
|
+
Extracts testable capabilities from:
|
|
114
|
+
- Frontmatter description
|
|
115
|
+
- "can X" patterns
|
|
116
|
+
- WHEN clauses
|
|
117
|
+
- Bullet points
|
|
118
|
+
|
|
119
|
+
### 2. Generate Scenarios
|
|
120
|
+
|
|
121
|
+
For each capability:
|
|
122
|
+
- **P0 (Critical):** Happy path
|
|
123
|
+
- **P1 (High):** Error handling + invalid input
|
|
124
|
+
- **P2 (Medium):** Edge cases (empty, large, etc.)
|
|
125
|
+
|
|
126
|
+
### 3. Write Files
|
|
127
|
+
|
|
128
|
+
- **test_scenarios.md:** Human-readable documentation
|
|
129
|
+
- **test_skill.py:** Implementation skeleton with TODOs
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
## Examples
|
|
134
|
+
|
|
135
|
+
### Example 1: JSON Converter Skill
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
$ python3 test_generator.py json-converter/ --coverage standard --test-format pytest
|
|
139
|
+
|
|
140
|
+
Generating tests for json-converter/...
|
|
141
|
+
Skill: json-converter
|
|
142
|
+
Capabilities found: 2
|
|
143
|
+
Test scenarios generated: 6
|
|
144
|
+
- P0 (Critical): 2
|
|
145
|
+
- P1 (High): 4
|
|
146
|
+
- P2 (Medium): 0
|
|
147
|
+
|
|
148
|
+
✅ Test documentation: json-converter/tests/test_scenarios.md
|
|
149
|
+
✅ Pytest implementation: json-converter/tests/test_skill.py
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
### Example 2: Comprehensive Testing
|
|
153
|
+
|
|
154
|
+
```bash
|
|
155
|
+
$ python3 test_generator.py api-wrapper/ --coverage comprehensive --behavioral --test-format pytest
|
|
156
|
+
|
|
157
|
+
Test scenarios generated: 15
|
|
158
|
+
- P0 (Critical): 3
|
|
159
|
+
- P1 (High): 6
|
|
160
|
+
- P2 (Medium): 6
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
---
|
|
164
|
+
|
|
165
|
+
## Integration with Workflow
|
|
166
|
+
|
|
167
|
+
### Step 1: Develop Skill
|
|
168
|
+
|
|
169
|
+
Create your SKILL.md with clear capability descriptions.
|
|
170
|
+
|
|
171
|
+
### Step 2: Generate Tests
|
|
172
|
+
|
|
173
|
+
```bash
|
|
174
|
+
python3 test_generator.py my-skill/ --coverage standard --behavioral --test-format pytest
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
### Step 3: Review Scenarios
|
|
178
|
+
|
|
179
|
+
```bash
|
|
180
|
+
cat my-skill/tests/test_scenarios.md
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
Check if all important capabilities are covered.
|
|
184
|
+
|
|
185
|
+
### Step 4: Implement Tests
|
|
186
|
+
|
|
187
|
+
Edit `my-skill/tests/test_skill.py` and replace `pass` with actual test logic.
|
|
188
|
+
|
|
189
|
+
### Step 5: Run Tests
|
|
190
|
+
|
|
191
|
+
```bash
|
|
192
|
+
pytest my-skill/tests/
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
---
|
|
196
|
+
|
|
197
|
+
## Error Handling
|
|
198
|
+
|
|
199
|
+
### Missing SKILL.md
|
|
200
|
+
|
|
201
|
+
```bash
|
|
202
|
+
⌠Error: SKILL.md not found in path/to/skill
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
**Solution:** Ensure skill directory contains SKILL.md file.
|
|
206
|
+
|
|
207
|
+
### No Capabilities Found
|
|
208
|
+
|
|
209
|
+
If frontmatter description is too generic, the script may not extract capabilities.
|
|
210
|
+
|
|
211
|
+
**Solution:** Add clear capability statements:
|
|
212
|
+
- Use bullet points
|
|
213
|
+
- Include "can X" patterns
|
|
214
|
+
- Add WHEN clauses
|
|
215
|
+
|
|
216
|
+
---
|
|
217
|
+
|
|
218
|
+
## Best Practices
|
|
219
|
+
|
|
220
|
+
**For Better Test Generation:**
|
|
221
|
+
1. Write clear, specific capability descriptions in frontmatter
|
|
222
|
+
2. Use action verbs (convert, parse, analyze, validate)
|
|
223
|
+
3. Include WHEN clauses in SKILL.md content
|
|
224
|
+
4. List features as bullet points
|
|
225
|
+
|
|
226
|
+
**After Generation:**
|
|
227
|
+
1. Review test_scenarios.md for completeness
|
|
228
|
+
2. Add custom scenarios if needed
|
|
229
|
+
3. Implement test logic incrementally
|
|
230
|
+
4. Start with P0 tests first
|
|
231
|
+
|
|
232
|
+
---
|
|
233
|
+
|
|
234
|
+
## Limitations
|
|
235
|
+
|
|
236
|
+
**What Script CANNOT Do:**
|
|
237
|
+
- Implement actual test logic (provides skeleton only)
|
|
238
|
+
- Infer complex test data without examples
|
|
239
|
+
- Test runtime behavior automatically
|
|
240
|
+
|
|
241
|
+
**What You Must Do:**
|
|
242
|
+
- Implement test logic in TODO sections
|
|
243
|
+
- Provide skill-specific test inputs
|
|
244
|
+
- Add assertions for expected outputs
|
|
245
|
+
|
|
246
|
+
---
|
|
247
|
+
|
|
248
|
+
## Exit Codes
|
|
249
|
+
|
|
250
|
+
| Code | Meaning |
|
|
251
|
+
|------|---------|
|
|
252
|
+
| 0 | Tests generated successfully |
|
|
253
|
+
| 1 | Invalid skill path or missing SKILL.md |
|
|
254
|
+
| 2 | Unexpected error during generation |
|
|
255
|
+
|
|
256
|
+
---
|
|
257
|
+
|
|
258
|
+
## Success Metrics
|
|
259
|
+
|
|
260
|
+
**Time Savings:**
|
|
261
|
+
- Manual test creation: 1-2 hours
|
|
262
|
+
- Script execution: <5 seconds
|
|
263
|
+
- **Savings:** 99% time reduction
|
|
264
|
+
|
|
265
|
+
**Coverage:**
|
|
266
|
+
- Standard: 3 scenarios per capability
|
|
267
|
+
- Comprehensive: 5+ scenarios per capability
|
|
268
|
+
- Identifies edge cases automatically
|
|
269
|
+
|
|
270
|
+
---
|
|
271
|
+
|
|
272
|
+
**References:**
|
|
273
|
+
- File 12: Testing & Validation (best practices)
|
|
274
|
+
- script-opportunities-analysis.md: Original requirements
|
|
275
|
+
- phase3b-remaining-scripts-planning.md: Implementation plan
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: split-skill-guide
|
|
3
|
+
description: "Usage guide for split_skill.py - Auto-split large SKILL.md for progressive disclosure"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Split Skill Usage Guide
|
|
7
|
+
|
|
8
|
+
**Script:** split_skill.py
|
|
9
|
+
**Purpose:** Auto-split large SKILL.md into main file + references
|
|
10
|
+
**Impact:** Enforces progressive disclosure (200-350 line target)
|
|
11
|
+
**References:** Files 05, 10 (token optimization, architecture)
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Quick Start
|
|
16
|
+
|
|
17
|
+
### Preview Split (Recommended First)
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
# See what would be split without making changes
|
|
21
|
+
python split_skill.py path/to/skill/ --preview
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
### Execute Split
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
# Interactive mode (asks for confirmation)
|
|
28
|
+
python split_skill.py path/to/skill/
|
|
29
|
+
|
|
30
|
+
# Auto mode (no confirmation)
|
|
31
|
+
python split_skill.py path/to/skill/ --auto
|
|
32
|
+
|
|
33
|
+
# Custom threshold
|
|
34
|
+
python split_skill.py path/to/skill/ --threshold 400
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## What Gets Split
|
|
40
|
+
|
|
41
|
+
### Core Sections (Stay in SKILL.md)
|
|
42
|
+
- Overview
|
|
43
|
+
- Installation / Setup
|
|
44
|
+
- Quick Start
|
|
45
|
+
- Basic Usage
|
|
46
|
+
- Core Workflow
|
|
47
|
+
|
|
48
|
+
### Reference Sections (Move to references/)
|
|
49
|
+
- Advanced usage
|
|
50
|
+
- Troubleshooting
|
|
51
|
+
- Extended examples
|
|
52
|
+
- API reference
|
|
53
|
+
- Edge cases
|
|
54
|
+
- Sections >100 lines
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## Example Output
|
|
59
|
+
|
|
60
|
+
**Before:** 721 lines SKILL.md
|
|
61
|
+
|
|
62
|
+
**After Split:**
|
|
63
|
+
```
|
|
64
|
+
skill/
|
|
65
|
+
├── SKILL.md (212 lines) # Core content + links
|
|
66
|
+
├── split_report.md # Split summary
|
|
67
|
+
└── references/
|
|
68
|
+
├── advanced-topic-1.md
|
|
69
|
+
├── troubleshooting.md # 82 lines
|
|
70
|
+
├── additional-examples.md # 314 lines
|
|
71
|
+
└── ... (16 files total)
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
**Reduction:** 69.1% (721 → 212 lines in main file)
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## Classification Logic
|
|
79
|
+
|
|
80
|
+
**Core Criteria (keywords):**
|
|
81
|
+
- overview, setup, installation, quick start
|
|
82
|
+
- basic usage, core, workflow, getting started
|
|
83
|
+
|
|
84
|
+
**Reference Criteria (keywords):**
|
|
85
|
+
- advanced, troubleshooting, examples, reference
|
|
86
|
+
- edge case, detailed, appendix, additional
|
|
87
|
+
|
|
88
|
+
**Heuristic:**
|
|
89
|
+
- Sections >100 lines → move to references
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## Command Options
|
|
94
|
+
|
|
95
|
+
| Option | Description | Default |
|
|
96
|
+
|--------|-------------|---------|
|
|
97
|
+
| `--threshold N` | Line count trigger | 500 |
|
|
98
|
+
| `--preview` | Show plan without executing | False |
|
|
99
|
+
| `--auto` | Skip confirmation | False |
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
## Exit Codes
|
|
104
|
+
|
|
105
|
+
| Code | Meaning |
|
|
106
|
+
|------|---------|
|
|
107
|
+
| 0 | Success or already optimal |
|
|
108
|
+
| 1 | SKILL.md not found |
|
|
109
|
+
| 2 | Unexpected error |
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## Best Practices
|
|
114
|
+
|
|
115
|
+
**Before Splitting:**
|
|
116
|
+
1. Run with `--preview` first
|
|
117
|
+
2. Review which sections move to references
|
|
118
|
+
3. Ensure section titles are clear
|
|
119
|
+
|
|
120
|
+
**After Splitting:**
|
|
121
|
+
1. Review updated SKILL.md
|
|
122
|
+
2. Check reference files are complete
|
|
123
|
+
3. Test cross-reference links
|
|
124
|
+
4. Read split_report.md
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
## Integration with Workflow
|
|
129
|
+
|
|
130
|
+
```bash
|
|
131
|
+
# Step 1: Develop skill (grows >500 lines)
|
|
132
|
+
# Step 2: Preview split
|
|
133
|
+
python split_skill.py my-skill/ --preview
|
|
134
|
+
|
|
135
|
+
# Step 3: Execute if satisfied
|
|
136
|
+
python split_skill.py my-skill/ --auto
|
|
137
|
+
|
|
138
|
+
# Step 4: Validate result
|
|
139
|
+
cat my-skill/SKILL.md
|
|
140
|
+
ls my-skill/references/
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
## References
|
|
146
|
+
|
|
147
|
+
- File 05: Token Economics (why progressive disclosure matters)
|
|
148
|
+
- File 10: Architecture (optimal file structure)
|
|
149
|
+
- phase3b-remaining-scripts-planning.md: Implementation plan
|