@rfxlamia/skillkit 1.1.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 +1 -1
- 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/picker.js +11 -5
- package/src/picker.test.js +36 -1
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
# Voice Injection: Making AI Sound Human
|
|
2
|
+
|
|
3
|
+
Techniques to transform robotic text into relatable content.
|
|
4
|
+
|
|
5
|
+
**Contents:**
|
|
6
|
+
- [The Voice Spectrum](#the-voice-spectrum)
|
|
7
|
+
- [Technique 1: Specificity Injection](#technique-1-specificity-injection)
|
|
8
|
+
- [Technique 2: Emotional Honesty](#technique-2-emotional-honesty)
|
|
9
|
+
- [Technique 3: Sentence Rhythm](#technique-3-sentence-rhythm-burstiness)
|
|
10
|
+
- [Technique 4: Casual Connectors](#technique-4-casual-connectors)
|
|
11
|
+
- [Technique 5: Direct Address](#technique-5-direct-address)
|
|
12
|
+
- [Technique 6: Imperfect Grammar](#technique-6-imperfect-grammar)
|
|
13
|
+
- [Technique 7: The Friend Test](#technique-7-the-friend-test)
|
|
14
|
+
|
|
15
|
+
## The Voice Spectrum
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
ROBOTIC ←────────────────────────→ HUMAN
|
|
19
|
+
|
|
20
|
+
Corporate Professional Casual Raw
|
|
21
|
+
LinkedIn Newsletter Twitter DMs
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
For viral threads, aim for **Casual to Raw**.
|
|
25
|
+
|
|
26
|
+
## Technique 1: Specificity Injection
|
|
27
|
+
|
|
28
|
+
Replace vague with vivid.
|
|
29
|
+
|
|
30
|
+
| Vague (AI) | Specific (Human) |
|
|
31
|
+
|------------|------------------|
|
|
32
|
+
| "a tech company" | "Stripe, 3rd floor, desk by the fire exit" |
|
|
33
|
+
| "recently" | "last Tuesday at 2am" |
|
|
34
|
+
| "a lot of money" | "$47,832 (I still have the receipt)" |
|
|
35
|
+
| "many people" | "347 people (I counted)" |
|
|
36
|
+
| "for a while" | "for 3 years, 2 months, and 4 days" |
|
|
37
|
+
|
|
38
|
+
## Technique 2: Emotional Honesty
|
|
39
|
+
|
|
40
|
+
Say what you actually felt.
|
|
41
|
+
|
|
42
|
+
| Sanitized (AI) | Honest (Human) |
|
|
43
|
+
|----------------|----------------|
|
|
44
|
+
| "It was challenging" | "I cried in my car. Twice." |
|
|
45
|
+
| "I was nervous" | "My hands were shaking so bad I spilled coffee on my laptop" |
|
|
46
|
+
| "I felt proud" | "I screamed so loud my neighbor called the cops" |
|
|
47
|
+
| "I was uncertain" | "I had no fucking clue what I was doing" |
|
|
48
|
+
|
|
49
|
+
**Note:** Swearing is optional but adds authenticity when appropriate for your audience.
|
|
50
|
+
|
|
51
|
+
## Technique 3: Sentence Rhythm (Burstiness)
|
|
52
|
+
|
|
53
|
+
AI writes uniform sentences. Humans don't.
|
|
54
|
+
|
|
55
|
+
**AI Pattern:**
|
|
56
|
+
> "I started my business in 2019. I faced many challenges along the way. I learned valuable lessons from each experience. Today I run a successful company."
|
|
57
|
+
|
|
58
|
+
**Human Pattern:**
|
|
59
|
+
> "Started the business in 2019. Chaos. Absolute chaos. But I learned more in those first 6 months than in 4 years of college. Now? We're doing $2M ARR. Wild."
|
|
60
|
+
|
|
61
|
+
Mix:
|
|
62
|
+
- One-word sentences
|
|
63
|
+
- Fragments
|
|
64
|
+
- Long, flowing thoughts
|
|
65
|
+
- Questions?
|
|
66
|
+
- Exclamations!
|
|
67
|
+
|
|
68
|
+
## Technique 4: Casual Connectors
|
|
69
|
+
|
|
70
|
+
Replace formal transitions with conversational ones.
|
|
71
|
+
|
|
72
|
+
| Formal (AI) | Casual (Human) |
|
|
73
|
+
|-------------|----------------|
|
|
74
|
+
| "However" | "But here's the thing—" |
|
|
75
|
+
| "Therefore" | "So" |
|
|
76
|
+
| "Additionally" | "Oh, and" |
|
|
77
|
+
| "In conclusion" | "Bottom line?" |
|
|
78
|
+
| "For example" | "Like this:" |
|
|
79
|
+
| "It should be noted" | "Real talk:" |
|
|
80
|
+
|
|
81
|
+
## Technique 5: Direct Address
|
|
82
|
+
|
|
83
|
+
Talk TO the reader, not AT them.
|
|
84
|
+
|
|
85
|
+
| Distant (AI) | Direct (Human) |
|
|
86
|
+
|--------------|----------------|
|
|
87
|
+
| "One might consider" | "You need to try this" |
|
|
88
|
+
| "Users can benefit from" | "This will save you hours" |
|
|
89
|
+
| "It is advisable to" | "Do this. Seriously." |
|
|
90
|
+
| "Readers should note" | "Here's what most people miss:" |
|
|
91
|
+
|
|
92
|
+
## Technique 6: Imperfect Grammar
|
|
93
|
+
|
|
94
|
+
Perfect grammar = AI flag. Real people:
|
|
95
|
+
|
|
96
|
+
- Start sentences with "And" or "But"
|
|
97
|
+
- Use fragments. Often.
|
|
98
|
+
- End with prepositions (who cares)
|
|
99
|
+
- Skip articles sometimes ("Started company in 2019")
|
|
100
|
+
- Use run-on sentences when excited about something because honestly who stops to punctuate when they're on a roll
|
|
101
|
+
|
|
102
|
+
## Technique 7: The "Friend Test"
|
|
103
|
+
|
|
104
|
+
Before posting, ask:
|
|
105
|
+
> "Would I text this to a friend?"
|
|
106
|
+
|
|
107
|
+
If no → too formal
|
|
108
|
+
If yes → ship it
|
|
109
|
+
|
|
110
|
+
## Voice Quick Reference
|
|
111
|
+
|
|
112
|
+
| Element | AI Default | Human Override |
|
|
113
|
+
|---------|------------|----------------|
|
|
114
|
+
| Numbers | Round ($50K) | Precise ($47.3K) |
|
|
115
|
+
| Examples | Generic | Named/specific |
|
|
116
|
+
| Emotions | Sanitized | Raw |
|
|
117
|
+
| Sentences | Uniform | Varied |
|
|
118
|
+
| Grammar | Perfect | Intentionally flawed |
|
|
119
|
+
| Transitions | Formal | Casual |
|
|
120
|
+
| Perspective | Third person | Second person (you) |
|
|
121
|
+
|
|
122
|
+
## The 30-Second Voice Check
|
|
123
|
+
|
|
124
|
+
Read your thread aloud. Check for:
|
|
125
|
+
|
|
126
|
+
1. **Sounds like a textbook?** → Add personality
|
|
127
|
+
2. **All same sentence length?** → Mix it up
|
|
128
|
+
3. **No specific details?** → Add names/numbers
|
|
129
|
+
4. **No emotion?** → What did you FEEL?
|
|
130
|
+
5. **Would feel weird texting this?** → Too formal
|
|
@@ -0,0 +1,251 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: tinkering
|
|
3
|
+
description: >
|
|
4
|
+
Safe experimentation framework for AI agents. Creates isolated sandbox
|
|
5
|
+
environments for trying new features, testing approaches, and exploring
|
|
6
|
+
solutions without polluting the main codebase.
|
|
7
|
+
|
|
8
|
+
USE WHEN: Agent needs to try something uncertain, explore multiple approaches,
|
|
9
|
+
test a new library, prototype a feature, or run a technical spike before
|
|
10
|
+
committing to implementation.
|
|
11
|
+
|
|
12
|
+
PRIMARY TRIGGERS:
|
|
13
|
+
"experiment with" = Setup sandbox + run experiment
|
|
14
|
+
"try this approach" = Quick experiment in sandbox
|
|
15
|
+
"spike" / "POC" / "prototype" = Time-boxed technical investigation
|
|
16
|
+
"tinker" / "tinkering mode" = Enter experimentation workflow
|
|
17
|
+
"explore options" = Multi-approach comparison in sandbox
|
|
18
|
+
|
|
19
|
+
NOT FOR: Debugging (use debugger), testing (use test runner),
|
|
20
|
+
or committed feature work (use git branches).
|
|
21
|
+
|
|
22
|
+
DIFFERENTIATOR: Unlike git branches (for committed direction), tinkering is
|
|
23
|
+
for "I don't know if this will work" exploration. Try 5 things in sandbox
|
|
24
|
+
before committing to a branch. Faster feedback, zero codebase pollution.
|
|
25
|
+
category: experimentation
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
# Tinkering
|
|
29
|
+
|
|
30
|
+
## Overview
|
|
31
|
+
|
|
32
|
+
Structured experimentation framework. When uncertain about an approach, don't
|
|
33
|
+
hack at production code - create an isolated sandbox, try freely, then graduate
|
|
34
|
+
successful experiments or discard failed ones cleanly.
|
|
35
|
+
|
|
36
|
+
**Core principle:** The output of tinkering is **knowledge**, not production code.
|
|
37
|
+
A successful experiment teaches you how to solve the problem. The actual
|
|
38
|
+
implementation happens after, informed by what you learned.
|
|
39
|
+
|
|
40
|
+
## When to Use
|
|
41
|
+
|
|
42
|
+
| Situation | Tinkering? | Why |
|
|
43
|
+
|-----------|-----------|-----|
|
|
44
|
+
| "Will this library work for our use case?" | Yes | Unknown outcome, need to explore |
|
|
45
|
+
| "Which of these 3 approaches is fastest?" | Yes | Comparing multiple options |
|
|
46
|
+
| "How do I integrate this API?" | Yes | Technical spike, learning-focused |
|
|
47
|
+
| "Add a login button to the header" | No | Clear requirement, use git branch |
|
|
48
|
+
| "Fix the null pointer on line 42" | No | Debugging, not experimenting |
|
|
49
|
+
| "Refactor auth module to use JWT" | Maybe | If approach uncertain, spike first |
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## Workflow
|
|
54
|
+
|
|
55
|
+
### Phase 1: Setup Sandbox
|
|
56
|
+
|
|
57
|
+
Create isolated experiment environment:
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
# 1. Create experiment directory
|
|
61
|
+
mkdir -p _experiments/{experiment-name}
|
|
62
|
+
|
|
63
|
+
# 2. Add to .gitignore (if not already present)
|
|
64
|
+
grep -qxF '_experiments/' .gitignore 2>/dev/null || echo '_experiments/' >> .gitignore
|
|
65
|
+
|
|
66
|
+
# 3. Create manifest (first time only)
|
|
67
|
+
# See MANIFEST.md template below
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
**MANIFEST.md template** (create at `_experiments/MANIFEST.md`):
|
|
71
|
+
```markdown
|
|
72
|
+
# Experiment Log
|
|
73
|
+
|
|
74
|
+
## Active
|
|
75
|
+
|
|
76
|
+
### {experiment-name}
|
|
77
|
+
- **Date**: YYYY-MM-DD
|
|
78
|
+
- **Hypothesis**: What we're trying to learn
|
|
79
|
+
- **Status**: active
|
|
80
|
+
- **Result**: (pending)
|
|
81
|
+
|
|
82
|
+
## Completed
|
|
83
|
+
<!-- Move finished experiments here -->
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
**Rules:**
|
|
87
|
+
- NEVER modify production files during tinkering
|
|
88
|
+
- ALL experiment code goes inside `_experiments/{name}/`
|
|
89
|
+
- Copy source files into sandbox if you need to modify them
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
### Phase 2: Hypothesize
|
|
94
|
+
|
|
95
|
+
Before writing any code, state clearly:
|
|
96
|
+
|
|
97
|
+
```
|
|
98
|
+
Question : What specific question are we answering?
|
|
99
|
+
Success : How will we know it works?
|
|
100
|
+
Time box : Maximum time to spend (default: 30 min)
|
|
101
|
+
Scope : Which files/areas are involved?
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
Write this in `_experiments/{name}/HYPOTHESIS.md` or as a top comment.
|
|
105
|
+
|
|
106
|
+
**Example:**
|
|
107
|
+
```
|
|
108
|
+
Question : Can we replace moment.js with date-fns and reduce bundle size?
|
|
109
|
+
Success : Bundle decreases >20%, all date formatting still works
|
|
110
|
+
Time box : 20 minutes
|
|
111
|
+
Scope : src/utils/date.ts, package.json
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
### Phase 3: Experiment
|
|
117
|
+
|
|
118
|
+
Build freely in the sandbox.
|
|
119
|
+
|
|
120
|
+
**Modifying existing code:**
|
|
121
|
+
```bash
|
|
122
|
+
# Copy the file(s) you need to change
|
|
123
|
+
cp src/utils/date.ts _experiments/date-fns-migration/date.ts
|
|
124
|
+
# Edit the copy freely - zero risk to production
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
**New feature exploration:**
|
|
128
|
+
```bash
|
|
129
|
+
# Create new files directly in sandbox
|
|
130
|
+
touch _experiments/websocket-poc/server.ts
|
|
131
|
+
touch _experiments/websocket-poc/client.ts
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
**Library evaluation:**
|
|
135
|
+
```bash
|
|
136
|
+
# Minimal test script in sandbox
|
|
137
|
+
touch _experiments/redis-eval/test_redis.py
|
|
138
|
+
# Use isolated dependencies (venv, local node_modules)
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
**Multi-approach comparison:**
|
|
142
|
+
```
|
|
143
|
+
_experiments/caching-spike/
|
|
144
|
+
approach-a-redis/
|
|
145
|
+
approach-b-memory/
|
|
146
|
+
approach-c-sqlite/
|
|
147
|
+
COMPARISON.md # Side-by-side evaluation
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
**Rules during experimentation:**
|
|
151
|
+
- Stay in sandbox - never touch production files
|
|
152
|
+
- Quick and dirty is fine - this is throwaway code
|
|
153
|
+
- Document learnings as you go
|
|
154
|
+
- Stop at time box, even if incomplete - partial answers are still answers
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
### Phase 4: Evaluate
|
|
159
|
+
|
|
160
|
+
Assess results against the hypothesis.
|
|
161
|
+
|
|
162
|
+
**Checklist:**
|
|
163
|
+
- Did the experiment answer the original question?
|
|
164
|
+
- Does it meet the success criteria from Phase 2?
|
|
165
|
+
- Any unexpected side effects or constraints discovered?
|
|
166
|
+
- Is the approach feasible for production implementation?
|
|
167
|
+
- What's the estimated effort to implement properly?
|
|
168
|
+
|
|
169
|
+
**Update MANIFEST.md:**
|
|
170
|
+
```markdown
|
|
171
|
+
- **Result**: SUCCESS - date-fns reduced bundle by 34%, all tests pass
|
|
172
|
+
- **Status**: graduated
|
|
173
|
+
- **Notes**: Need to handle timezone edge case in formatRelative()
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
**Decision:**
|
|
177
|
+
- Positive result -> Phase 5, Path A (Graduate)
|
|
178
|
+
- Negative result -> Phase 5, Path B (Discard)
|
|
179
|
+
- Inconclusive -> Extend time box OR try different approach
|
|
180
|
+
|
|
181
|
+
---
|
|
182
|
+
|
|
183
|
+
### Phase 5: Graduate or Discard
|
|
184
|
+
|
|
185
|
+
#### Path A: Graduate (success)
|
|
186
|
+
|
|
187
|
+
**Load reference:** `references/graduation-checklist.md`
|
|
188
|
+
|
|
189
|
+
Quick summary:
|
|
190
|
+
1. Do NOT copy-paste experiment code directly into production
|
|
191
|
+
2. Re-implement properly using what you learned
|
|
192
|
+
3. Write proper tests for the production implementation
|
|
193
|
+
4. Apply code standards (experiment was quick & dirty, production shouldn't be)
|
|
194
|
+
5. Reference experiment in commit message for context
|
|
195
|
+
|
|
196
|
+
#### Path B: Discard (failed)
|
|
197
|
+
|
|
198
|
+
Failed experiments are valuable - they tell you what NOT to do.
|
|
199
|
+
|
|
200
|
+
1. Update MANIFEST.md with failure reason and learnings
|
|
201
|
+
2. Delete experiment files: `rm -rf _experiments/{name}/`
|
|
202
|
+
3. Or keep briefly if learnings are worth referencing
|
|
203
|
+
|
|
204
|
+
---
|
|
205
|
+
|
|
206
|
+
### Phase 6: Cleanup
|
|
207
|
+
|
|
208
|
+
```bash
|
|
209
|
+
# Remove completed experiment
|
|
210
|
+
rm -rf _experiments/{experiment-name}/
|
|
211
|
+
|
|
212
|
+
# Update MANIFEST.md - move entry to "Completed" section
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
**MANIFEST.md after cleanup:**
|
|
216
|
+
```markdown
|
|
217
|
+
## Completed
|
|
218
|
+
|
|
219
|
+
### date-fns-migration (2025-01-15)
|
|
220
|
+
- GRADUATED - Implemented in commit abc123
|
|
221
|
+
- Learnings: date-fns 3x smaller, timezone handling needs explicit config
|
|
222
|
+
|
|
223
|
+
### graphql-evaluation (2025-01-10)
|
|
224
|
+
- DISCARDED - Too much overhead for our simple REST API
|
|
225
|
+
- Learnings: REST + OpenAPI better fit for <20 endpoints
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
---
|
|
229
|
+
|
|
230
|
+
## Quick Reference
|
|
231
|
+
|
|
232
|
+
```
|
|
233
|
+
Setup -> mkdir _experiments/{name}, add to .gitignore
|
|
234
|
+
Hypothesize -> Question + success criteria + time box
|
|
235
|
+
Experiment -> Build in sandbox (never touch production)
|
|
236
|
+
Evaluate -> Check against success criteria
|
|
237
|
+
Graduate -> Re-implement properly in production
|
|
238
|
+
Cleanup -> Remove files, update manifest
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
## Edge Cases
|
|
242
|
+
|
|
243
|
+
**Needs database changes:** Use separate test DB or schema prefix. Document in hypothesis.
|
|
244
|
+
|
|
245
|
+
**Needs running server:** Run from sandbox, use different port to avoid conflicts.
|
|
246
|
+
|
|
247
|
+
**Multiple concurrent experiments:** Each gets own subdirectory. MANIFEST tracks all.
|
|
248
|
+
|
|
249
|
+
**Experiment grows into real feature:** Graduate it. Don't let experiments become shadow production code.
|
|
250
|
+
|
|
251
|
+
**Team member needs to see experiment:** Push to feature branch (temporarily track `_experiments/`) or share via patch.
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
# Graduation Checklist
|
|
2
|
+
|
|
3
|
+
How to safely move a successful experiment into production code.
|
|
4
|
+
|
|
5
|
+
## Pre-Graduation
|
|
6
|
+
|
|
7
|
+
Before touching production code, confirm:
|
|
8
|
+
|
|
9
|
+
- [ ] Experiment clearly answered the hypothesis question
|
|
10
|
+
- [ ] Success criteria from HYPOTHESIS.md are met
|
|
11
|
+
- [ ] You understand WHY the experiment worked (not just that it did)
|
|
12
|
+
- [ ] Edge cases discovered during experimentation are documented
|
|
13
|
+
|
|
14
|
+
## Graduation Steps
|
|
15
|
+
|
|
16
|
+
### 1. Plan the Integration
|
|
17
|
+
|
|
18
|
+
Don't just copy-paste. The experiment was quick and dirty - production needs to be clean.
|
|
19
|
+
|
|
20
|
+
```
|
|
21
|
+
Map out:
|
|
22
|
+
- Which production files need changes?
|
|
23
|
+
- What's the minimal changeset to achieve the result?
|
|
24
|
+
- Are there dependencies to add/update?
|
|
25
|
+
- Do existing tests need updating?
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
### 2. Implement Incrementally
|
|
29
|
+
|
|
30
|
+
Apply changes to production code in small, reviewable steps:
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
Bad: Copy entire _experiments/websocket-poc/ into src/
|
|
34
|
+
Good: Implement websocket module in src/ informed by experiment learnings
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
**Key differences from experiment code:**
|
|
38
|
+
- Proper error handling (experiment probably skipped this)
|
|
39
|
+
- Type safety and validation (experiment used `any` everywhere)
|
|
40
|
+
- Code style compliance (experiment ignored linting)
|
|
41
|
+
- Edge case handling (experiment only covered happy path)
|
|
42
|
+
- Documentation (experiment had none or minimal)
|
|
43
|
+
|
|
44
|
+
### 3. Write Tests
|
|
45
|
+
|
|
46
|
+
The experiment proved the concept works. Now prove it with proper tests:
|
|
47
|
+
|
|
48
|
+
- Unit tests for new functions/modules
|
|
49
|
+
- Integration tests for changed interactions
|
|
50
|
+
- Edge case tests for issues discovered during experimentation
|
|
51
|
+
- Regression tests if modifying existing behavior
|
|
52
|
+
|
|
53
|
+
### 4. Validate
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
# Run full test suite
|
|
57
|
+
npm test # or pytest, cargo test, etc.
|
|
58
|
+
|
|
59
|
+
# Run linter
|
|
60
|
+
npm run lint
|
|
61
|
+
|
|
62
|
+
# Build check
|
|
63
|
+
npm run build
|
|
64
|
+
|
|
65
|
+
# Manual smoke test of the feature
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### 5. Commit with Context
|
|
69
|
+
|
|
70
|
+
Reference the experiment in your commit for traceability:
|
|
71
|
+
|
|
72
|
+
```
|
|
73
|
+
feat: replace moment.js with date-fns for 34% bundle reduction
|
|
74
|
+
|
|
75
|
+
Spike in _experiments/date-fns-migration/ confirmed date-fns handles
|
|
76
|
+
all our formatting cases with 3x smaller footprint. Timezone edge case
|
|
77
|
+
in formatRelative() resolved by explicit timezone config.
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### 6. Clean Up Experiment
|
|
81
|
+
|
|
82
|
+
After the production implementation is merged:
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
# Remove experiment directory
|
|
86
|
+
rm -rf _experiments/{experiment-name}/
|
|
87
|
+
|
|
88
|
+
# Update MANIFEST.md
|
|
89
|
+
# Move entry to "Completed" with reference to commit/PR
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
## Common Graduation Mistakes
|
|
93
|
+
|
|
94
|
+
| Mistake | Why It's Bad | Do This Instead |
|
|
95
|
+
|---------|-------------|-----------------|
|
|
96
|
+
| Copy-paste experiment code | Brings technical debt into production | Re-implement with proper standards |
|
|
97
|
+
| Skip tests because "it worked in experiment" | Experiment tested manually, production needs automated tests | Write proper test suite |
|
|
98
|
+
| Graduate partial experiment | Incomplete features cause confusion | Finish the experiment or graduate only the complete parts |
|
|
99
|
+
| Forget to clean up sandbox | Stale experiments accumulate, mislead future developers | Delete after graduation |
|
|
100
|
+
| No commit reference to experiment | Context lost, future devs don't know why decision was made | Reference experiment in commit message |
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
fast
|