@su-record/vibe 3.2.6 → 3.2.8

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.
Files changed (160) hide show
  1. package/CLAUDE.md +5 -2
  2. package/README.en.md +1 -1
  3. package/README.md +1 -1
  4. package/agents/build-error-resolver.md +1 -1
  5. package/agents/code-reviewer.md +1 -1
  6. package/agents/e2e-tester.md +1 -1
  7. package/agents/event/event-ops.md +1 -1
  8. package/agents/event/event-planner.md +1 -1
  9. package/agents/implementer.md +1 -1
  10. package/agents/security-reviewer.md +1 -1
  11. package/agents/tester.md +1 -1
  12. package/agents/ui/design-reviewer.md +1 -1
  13. package/agents/ui/design-system-gen.md +1 -1
  14. package/dist/cli/commands/info.d.ts +9 -0
  15. package/dist/cli/commands/info.d.ts.map +1 -1
  16. package/dist/cli/commands/info.js +32 -0
  17. package/dist/cli/commands/info.js.map +1 -1
  18. package/dist/cli/commands/info.test.js +34 -1
  19. package/dist/cli/commands/info.test.js.map +1 -1
  20. package/dist/cli/commands/upgrade.d.ts +18 -0
  21. package/dist/cli/commands/upgrade.d.ts.map +1 -1
  22. package/dist/cli/commands/upgrade.js +60 -2
  23. package/dist/cli/commands/upgrade.js.map +1 -1
  24. package/dist/cli/commands/upgrade.test.js +51 -1
  25. package/dist/cli/commands/upgrade.test.js.map +1 -1
  26. package/dist/cli/generate-release-notes.js +8 -6
  27. package/dist/cli/generate-release-notes.js.map +1 -1
  28. package/dist/cli/postinstall/claude-agents.d.ts.map +1 -1
  29. package/dist/cli/postinstall/claude-agents.js +3 -1
  30. package/dist/cli/postinstall/claude-agents.js.map +1 -1
  31. package/dist/cli/postinstall/constants.d.ts.map +1 -1
  32. package/dist/cli/postinstall/constants.js +27 -21
  33. package/dist/cli/postinstall/constants.js.map +1 -1
  34. package/dist/tests/curated-release-notes.test.js +55 -1
  35. package/dist/tests/curated-release-notes.test.js.map +1 -1
  36. package/dist/tools/release/releaseNotes.d.ts +22 -0
  37. package/dist/tools/release/releaseNotes.d.ts.map +1 -1
  38. package/dist/tools/release/releaseNotes.js +45 -0
  39. package/dist/tools/release/releaseNotes.js.map +1 -1
  40. package/hooks/scripts/__tests__/.vibe/command-log.txt +3 -3
  41. package/hooks/scripts/__tests__/code-check-detectors.test.js +58 -0
  42. package/hooks/scripts/code-check.js +7 -0
  43. package/package.json +2 -2
  44. package/skills/vibe/SKILL.md +27 -86
  45. package/skills/vibe/references/routing-examples.md +85 -0
  46. package/skills/vibe.agents-md/SKILL.md +12 -10
  47. package/skills/vibe.analyze/SKILL.md +22 -211
  48. package/skills/vibe.analyze/references/mode1-feature.md +81 -0
  49. package/skills/vibe.analyze/references/mode2-document.md +50 -0
  50. package/skills/vibe.analyze/references/mode3-website.md +47 -0
  51. package/skills/vibe.analyze/references/mode4-quality.md +35 -0
  52. package/skills/vibe.analyze/references/output-templates.md +2 -2
  53. package/skills/vibe.brand-assets/SKILL.md +2 -2
  54. package/skills/vibe.brand-assets/references/mobile-assets.md +6 -0
  55. package/skills/vibe.capability-loop/SKILL.md +14 -80
  56. package/skills/vibe.capability-loop/references/escalate.md +86 -0
  57. package/skills/vibe.chub-usage/SKILL.md +3 -132
  58. package/skills/vibe.clone/SKILL.md +43 -358
  59. package/skills/vibe.clone/references/phase-commands.md +118 -0
  60. package/skills/vibe.clone/references/setup-and-layout.md +34 -0
  61. package/skills/vibe.clone/references/verification-loops.md +64 -0
  62. package/skills/vibe.commit-push-pr/SKILL.md +10 -4
  63. package/skills/vibe.context7-usage/SKILL.md +3 -99
  64. package/skills/vibe.continue/SKILL.md +17 -7
  65. package/skills/{vibe.handoff → vibe.continue}/agents/context-summarizer.md +1 -1
  66. package/skills/{vibe.handoff → vibe.continue}/agents/document-writer.md +1 -1
  67. package/skills/{vibe.handoff → vibe.continue}/agents/state-collector.md +1 -1
  68. package/skills/{vibe.handoff → vibe.continue}/agents/verifier.md +1 -1
  69. package/skills/{vibe.handoff/rubrics/completeness.md → vibe.continue/references/handoff-completeness.md} +1 -1
  70. package/skills/{vibe.handoff/templates → vibe.continue/references}/handoff.md +37 -2
  71. package/skills/vibe.contract/SKILL.md +4 -27
  72. package/skills/vibe.create-prd/SKILL.md +8 -1
  73. package/skills/vibe.design/SKILL.md +18 -5
  74. package/skills/vibe.design/references/design-context.md +184 -0
  75. package/skills/vibe.design-refine/SKILL.md +7 -0
  76. package/skills/vibe.design-review/SKILL.md +7 -0
  77. package/skills/vibe.design-teach/SKILL.md +2 -175
  78. package/skills/vibe.devlog/SKILL.md +14 -11
  79. package/skills/vibe.devlog/references/auto-push.md +10 -0
  80. package/skills/vibe.docs/SKILL.md +27 -198
  81. package/skills/vibe.docs/references/agent.md +55 -0
  82. package/skills/vibe.docs/references/arch.md +28 -0
  83. package/skills/vibe.docs/references/codemaps.md +17 -0
  84. package/skills/vibe.docs/references/diagram.md +24 -0
  85. package/skills/vibe.docs/references/guide.md +23 -0
  86. package/skills/vibe.docs/references/readme.md +45 -0
  87. package/skills/vibe.docs/references/release.md +31 -0
  88. package/skills/vibe.documentation-provider/SKILL.md +22 -0
  89. package/skills/vibe.documentation-provider/references/chub.md +141 -0
  90. package/skills/vibe.documentation-provider/references/context7.md +107 -0
  91. package/skills/vibe.educational-content/SKILL.md +7 -0
  92. package/skills/vibe.event/SKILL.md +47 -146
  93. package/skills/vibe.event/references/comms.md +173 -0
  94. package/skills/vibe.event/references/operations.md +208 -0
  95. package/skills/vibe.event/references/orchestration-legacy.md +97 -0
  96. package/skills/vibe.event/references/planning.md +145 -0
  97. package/skills/vibe.event-comms/SKILL.md +3 -165
  98. package/skills/vibe.event-ops/SKILL.md +3 -200
  99. package/skills/vibe.event-planning/SKILL.md +3 -137
  100. package/skills/vibe.figma/SKILL.md +26 -692
  101. package/skills/vibe.figma/references/branch1-read-convention.md +82 -0
  102. package/skills/vibe.figma/references/branch2-read-standalone.md +69 -0
  103. package/skills/vibe.figma/references/branch3-write.md +122 -0
  104. package/skills/vibe.figma/references/core-implementation.md +453 -0
  105. package/skills/vibe.git-worktree/SKILL.md +2 -6
  106. package/skills/vibe.git-worktree/references/troubleshooting.md +9 -0
  107. package/skills/vibe.handoff/SKILL.md +2 -103
  108. package/skills/vibe.harness/SKILL.md +17 -12
  109. package/skills/vibe.image/SKILL.md +8 -1
  110. package/skills/vibe.llm/SKILL.md +8 -1
  111. package/skills/vibe.loop/SKILL.md +9 -11
  112. package/skills/vibe.loop/references/install-adapters.md +10 -0
  113. package/skills/vibe.presentation/SKILL.md +7 -0
  114. package/skills/vibe.prioritization/SKILL.md +7 -0
  115. package/skills/vibe.priority-todos/SKILL.md +2 -57
  116. package/skills/vibe.react-best-practices/SKILL.md +1 -1
  117. package/skills/vibe.reason/SKILL.md +9 -2
  118. package/skills/vibe.regress/SKILL.md +6 -28
  119. package/skills/vibe.regress/templates/{test-jest.md → test-template.md} +1 -0
  120. package/skills/vibe.review/SKILL.md +62 -52
  121. package/skills/vibe.review/references/priority-todos.md +66 -0
  122. package/skills/vibe.review/references/ui-ux-review.md +39 -0
  123. package/skills/vibe.run/SKILL.md +63 -660
  124. package/skills/vibe.run/references/arch-guard.md +178 -0
  125. package/skills/vibe.run/references/e2e-and-autofix.md +40 -0
  126. package/skills/vibe.run/references/exec-plan.md +145 -0
  127. package/skills/vibe.run/references/guidelines-and-tools.md +84 -0
  128. package/skills/vibe.run/references/parallel-agents.md +44 -60
  129. package/skills/vibe.run/references/process-steps.md +179 -0
  130. package/skills/vibe.run/references/restraint.md +66 -0
  131. package/skills/vibe.run/references/ultrawork-mode.md +1 -1
  132. package/skills/vibe.scaffold/SKILL.md +9 -13
  133. package/skills/vibe.scaffold/references/clean-architecture.md +17 -0
  134. package/skills/vibe.spec/SKILL.md +13 -9
  135. package/skills/vibe.spec/references/legacy-artifacts.md +6 -0
  136. package/skills/vibe.test/SKILL.md +93 -70
  137. package/skills/vibe.test/references/report-template.md +101 -0
  138. package/skills/vibe.tool-fallback/SKILL.md +10 -32
  139. package/skills/vibe.tool-fallback/references/external-llm.md +10 -0
  140. package/skills/vibe.tool-fallback/references/file-lookup.md +9 -0
  141. package/skills/vibe.tool-fallback/references/web-search.md +11 -0
  142. package/skills/vibe.trace/SKILL.md +2 -264
  143. package/skills/vibe.ui-ux-pro-max/SKILL.md +1 -3
  144. package/skills/vibe.ui-ux-pro-max/references/charts-and-data.md +7 -0
  145. package/skills/vibe.user-personas/SKILL.md +8 -1
  146. package/skills/vibe.verify/SKILL.md +30 -4
  147. package/skills/vibe.verify/references/trace-mode.md +271 -0
  148. package/vibe/rules/principles/dual-harness-doctrine.md +10 -9
  149. package/skills/vibe.regress/templates/test-vitest.md +0 -30
  150. /package/skills/{vibe.design-teach/rubrics → vibe.design/references}/brand-personality.md +0 -0
  151. /package/skills/{vibe.design-teach → vibe.design}/templates/design-context.json +0 -0
  152. /package/skills/{vibe.context7-usage/rubrics/when-to-use.md → vibe.documentation-provider/references/context7-when-to-use.md} +0 -0
  153. /package/skills/{vibe.event-ops/rubrics → vibe.event/references}/contingency.md +0 -0
  154. /package/skills/{vibe.event-ops/templates/d-day-checklist.md → vibe.event/references/d-day-checklist-template.md} +0 -0
  155. /package/skills/{vibe.event-comms/templates/email-invite.md → vibe.event/references/email-invite-template.md} +0 -0
  156. /package/skills/{vibe.event-planning/templates/event-plan.md → vibe.event/references/event-plan-template.md} +0 -0
  157. /package/skills/{vibe.event-comms/templates/sns-post.md → vibe.event/references/sns-post-template.md} +0 -0
  158. /package/skills/{vibe.event-planning/rubrics → vibe.event/references}/timeline.md +0 -0
  159. /package/skills/{vibe.priority-todos/templates/todo-board.md → vibe.review/references/todo-board-template.md} +0 -0
  160. /package/skills/{vibe.priority-todos/rubrics/prioritization.md → vibe.review/references/todo-prioritization.md} +0 -0
@@ -0,0 +1,45 @@
1
+ # /vibe.docs readme — README Generation
2
+
3
+ > vibe.docs SKILL.md 의 서브커맨드 표에서 **`readme` 가 선택됐을 때만** 로드한다.
4
+
5
+ ### `/vibe.docs readme` — README Generation
6
+
7
+ Analyze the codebase and generate a complete README.md:
8
+
9
+ 1. **Detect project nature**: Read package.json, CLAUDE.md, existing README
10
+ 2. **Extract key info**: Tech stack, installation, usage, API surface
11
+ 3. **Generate sections**:
12
+
13
+ ```markdown
14
+ # Project Name
15
+ > One-line description from package.json
16
+
17
+ ## What is this?
18
+ [2-3 sentences explaining the problem and solution]
19
+
20
+ ## Quick Start
21
+ [Installation + minimal usage example]
22
+
23
+ ## Features
24
+ [Auto-detected from codebase — exported functions, CLI commands, API endpoints]
25
+
26
+ ## Architecture
27
+ [High-level module diagram if 5+ source directories]
28
+
29
+ ## Configuration
30
+ [Detected config files and their purposes]
31
+
32
+ ## Development
33
+ [Build, test, lint commands from package.json scripts]
34
+
35
+ ## License
36
+ ```
37
+
38
+ **Analysis approach:**
39
+ ```
40
+ Full-file reading: package.json → name, description, scripts, dependencies
41
+ File-pattern search: src/**/*.ts → module structure
42
+ Text search: pattern="export (function|class|const)" → public API surface
43
+ Text search: pattern="(app|router)\.(get|post|put|delete)" → API endpoints
44
+ Full-file reading: CLAUDE.md → project conventions
45
+ ```
@@ -0,0 +1,31 @@
1
+ # /vibe.docs release — Release Notes
2
+
3
+ > vibe.docs SKILL.md 의 서브커맨드 표에서 **`release` 가 선택됐을 때만** 로드한다.
4
+
5
+ ### `/vibe.docs release` — Release Notes
6
+
7
+ Generate release notes from git history:
8
+
9
+ 1. **Collect**: `git log` since last tag
10
+ 2. **Classify**: feat/fix/refactor/docs/chore from commit messages
11
+ 3. **Group**: By category with breaking changes highlighted
12
+ 4. **Format**: Semantic versioning suggestion
13
+
14
+ Output: `RELEASE_NOTES.md` or append to `CHANGELOG.md`
15
+
16
+ **Output format:**
17
+ ```markdown
18
+ ## [x.y.z] - YYYY-MM-DD
19
+
20
+ ### Breaking Changes
21
+ - ...
22
+
23
+ ### Features
24
+ - feat: description (#PR)
25
+
26
+ ### Bug Fixes
27
+ - fix: description (#PR)
28
+
29
+ ### Other
30
+ - refactor/docs/chore items
31
+ ```
@@ -0,0 +1,22 @@
1
+ ---
2
+ name: vibe.documentation-provider
3
+ description: Fetch current, authoritative library and API documentation through the best available provider. Use for external API/SDK implementation, migrations, version differences, official references, or deprecated API checks; routes between chub, Context7, and official web documentation.
4
+ user-invocable: true
5
+ ---
6
+
7
+ # Documentation Provider
8
+
9
+ ## Done Criteria
10
+
11
+ - [ ] 사용한 provider와 조회 대상 package/API가 기록되어 있다.
12
+ - [ ] 답변 또는 구현 근거에 문서 버전이나 조회 날짜가 포함되어 있다.
13
+ - [ ] fallback을 사용하면 앞선 provider 실패 이유가 기록되어 있다.
14
+
15
+ Select one provider and return only the documentation needed by the caller.
16
+
17
+ 1. Prefer chub when curated API docs or reusable annotations are available. Read `references/chub.md`.
18
+ 2. Otherwise use Context7 when its library documentation provider is available. Read `references/context7.md`.
19
+ 3. Otherwise research the official vendor documentation on the web and cite the source.
20
+ 4. Delegate retrieval through native collaboration when the result would bloat the coordinator context. Claude Code maps the worker to Task/Agent; Codex maps it to native collaboration. Inherit the session model.
21
+
22
+ Never implement from training data when current documentation is required. Preserve the caller's requested library, topic, language, and output shape.
@@ -0,0 +1,141 @@
1
+ ---
2
+ name: documentation-provider-chub-reference
3
+ invocation: [auto]
4
+ tier: optional
5
+ description: "Context Hub (chub) — fetch vetted, up-to-date API documentation. Write accurate code based on the latest docs instead of training data when working with external APIs/SDKs."
6
+ triggers: [chub, context hub, API docs, latest API, deprecated API, SDK documentation, api reference, 최신 문서]
7
+ priority: 60
8
+ ---
9
+
10
+ # Context Hub (chub) Usage
11
+
12
+ A skill for fetching vetted, up-to-date documentation before writing external API/SDK code.
13
+ Solves the knowledge cutoff problem inherent in training data.
14
+
15
+ ## Why?
16
+
17
+ | Problem | Solution |
18
+ |---------|----------|
19
+ | Relying on training data → using deprecated APIs | chub get → code based on vetted latest docs |
20
+ | Web search → noisy results | chub search → curated docs only |
21
+ | Repeating the same mistakes every session | chub annotate → accumulated learnings |
22
+
23
+ ## When to Use
24
+
25
+ | Situation | Example |
26
+ |-----------|---------|
27
+ | Writing external API code | "Integrate Stripe payments" |
28
+ | Checking latest SDK version | "Call the latest OpenAI model" |
29
+ | Need official documentation | "Set up Supabase auth" |
30
+ | Preventing deprecated patterns | "Firebase v10 migration" |
31
+
32
+ ## Workflow
33
+
34
+ ```
35
+ Request to write external API/SDK code
36
+
37
+ Step 0: Check if chub is installed (auto-install if not)
38
+
39
+ Step 1: chub search "<library name>"
40
+
41
+ Step 2: chub get <id> --lang ts
42
+
43
+ Step 3: Write code based on the docs
44
+
45
+ Step 4: chub annotate when a gotcha is discovered
46
+ ```
47
+
48
+ ## Step 0 — Auto-install
49
+
50
+ **Always perform this step before running the skill.**
51
+
52
+ ```bash
53
+ # 1. Check if chub exists
54
+ which chub || command -v chub
55
+ ```
56
+
57
+ If chub is not found, attempt automatic installation:
58
+
59
+ ```bash
60
+ npm install -g @aisuite/chub
61
+ ```
62
+
63
+ If installation fails, fall back to running via `npx @aisuite/chub`:
64
+
65
+ ```bash
66
+ # search example
67
+ npx @aisuite/chub search "stripe"
68
+ # get example
69
+ npx @aisuite/chub get stripe/api --lang ts
70
+ ```
71
+
72
+ If `npx` also fails, fall back to context7 or Web Search (see Fallback Chain).
73
+
74
+ ## Usage
75
+
76
+ ### Step 1 — Search for docs
77
+
78
+ ```bash
79
+ chub search "stripe"
80
+ chub search "openai"
81
+ chub search "" # View full list
82
+ ```
83
+
84
+ ### Step 2 — Fetch latest docs
85
+
86
+ ```bash
87
+ chub get stripe/api --lang ts
88
+ chub get openai/chat --lang py
89
+ chub get supabase/auth --lang js
90
+ ```
91
+
92
+ ### Step 3 — Write code based on the docs
93
+
94
+ Write accurate code based on the fetched documentation.
95
+ **Never rely on training data. Docs first, code second.**
96
+
97
+ ### Step 4 — Record learnings
98
+
99
+ Gotchas, workarounds, and version issues discovered during work:
100
+
101
+ ```bash
102
+ chub annotate stripe/api "pg parameter is required for Korean payments"
103
+ chub annotate openai/chat "tool_calls in streaming comes as delta"
104
+ chub annotate firebase/auth "getAuth() import path changed in v10"
105
+ ```
106
+
107
+ Annotations are stored locally and automatically included the next time you run `chub get`.
108
+
109
+ ## Implementation Pattern (Delegated Worker)
110
+
111
+ Delegate through the harness's native collaboration capability to prevent
112
+ context bloat. Claude Code maps the worker to Task/Agent; Codex maps it to
113
+ native collaboration. Inherit the session model by default:
114
+
115
+ ```
116
+ Worker goal: Run `chub search <library>` then `chub get <id> --lang <lang>` to
117
+ fetch current API documentation for [topic]. Return only relevant usage
118
+ examples, key changes, and annotations.
119
+ ```
120
+
121
+ The worker handles the chub calls and returns only a summary — keeping the coordinator context clean.
122
+
123
+ ## Supported APIs (1,000+)
124
+
125
+ OpenAI, Anthropic, Stripe, Firebase, Supabase, Vercel, AWS S3, Cloudflare Workers, Auth0, Clerk, and more.
126
+
127
+ ```bash
128
+ chub search # Run without arguments to view the full list
129
+ ```
130
+
131
+ ## Fallback Chain
132
+
133
+ ```
134
+ which chub fails
135
+
136
+ npm install -g @aisuite/chub (auto attempt)
137
+
138
+ On failure: npx @aisuite/chub <command> (temporary execution)
139
+
140
+ If npx also fails: context7 or Web Search fallback
141
+ ```
@@ -0,0 +1,107 @@
1
+ ---
2
+ name: documentation-provider-context7-reference
3
+ invocation: [auto]
4
+ tier: optional
5
+ description: "Context7 plugin for latest library documentation. Auto-activates when docs, documentation, latest version, official docs, API reference, or library help is needed."
6
+ triggers: [latest version, official docs, API reference, library help, context7]
7
+ priority: 60
8
+ ---
9
+
10
+ # Context7 Usage
11
+
12
+ Guide for searching latest library/framework documentation using Context7 plugin with subagent isolation.
13
+
14
+ ## Why Subagent Approach?
15
+
16
+ | Approach | Problem |
17
+ |----------|---------|
18
+ | Direct plugin call | Docs content fills main context, causing bloat |
19
+ | Subagent isolation | Docs queried in separate context, only results returned |
20
+
21
+ **Benefits:**
22
+
23
+ - Prevents context bloat during long coding sessions
24
+ - Solves knowledge cutoff problem with latest docs
25
+ - Main context stays focused on implementation
26
+
27
+ ## When to Use
28
+
29
+ | Situation | Example |
30
+ |-----------|---------|
31
+ | Latest API check | "React 19 use() hook usage" |
32
+ | Version differences | "Next.js 15 changes" |
33
+ | Official docs needed | "Prisma schema syntax" |
34
+ | Migration guide | "Vue 2 → Vue 3 migration" |
35
+
36
+ ## How It Works
37
+
38
+ ```
39
+ User asks library question
40
+
41
+ Skill detects docs need
42
+
43
+ Delegate an isolated docs-researcher worker using the inherited session model
44
+
45
+ Worker calls context7 in isolated context
46
+
47
+ Returns only relevant info to main context
48
+ ```
49
+
50
+ ## Usage
51
+
52
+ ### Automatic (Recommended)
53
+
54
+ Just ask library/API questions naturally:
55
+
56
+ ```
57
+ "How do I use React 19 use() hook?"
58
+ "What's new in Next.js 15?"
59
+ "Prisma many-to-many relation syntax"
60
+ ```
61
+
62
+ The skill auto-detects and delegates a docs-researcher worker.
63
+
64
+ ### Manual Command
65
+
66
+ ```
67
+ /context7:docs <library> [query]
68
+ ```
69
+
70
+ Examples:
71
+
72
+ ```
73
+ /context7:docs react hooks
74
+ /context7:docs next.js app router
75
+ /context7:docs prisma relations
76
+ ```
77
+
78
+ ## Implementation Pattern
79
+
80
+ When you detect a library/API documentation need, delegate through the
81
+ harness's native collaboration capability. Claude Code maps the worker to
82
+ Task/Agent; Codex maps it to native collaboration. Inherit the session model:
83
+
84
+ ```
85
+ Worker goal: Use context7 to find [library] documentation about [topic]. Return
86
+ only the relevant API usage examples and key points.
87
+ ```
88
+
89
+ The worker handles the context7 calls and returns a summary, keeping the coordinator context clean.
90
+
91
+ ## Fallback Chain
92
+
93
+ ```
94
+ context7 plugin not installed
95
+
96
+ Prompt user: /plugin install context7
97
+
98
+ If still unavailable: Web Search for official docs
99
+ ```
100
+
101
+ ## Installation
102
+
103
+ If context7 is not installed, guide user:
104
+
105
+ ```bash
106
+ /plugin install context7
107
+ ```
@@ -6,6 +6,13 @@ user-invocable: false
6
6
 
7
7
  # Create Educational Content
8
8
 
9
+ ## Done Criteria
10
+
11
+ - [ ] 각 학습 목표가 관찰 가능한 행동으로 작성되어 있다.
12
+ - [ ] 핵심 사실에 출처 또는 저장소 근거가 연결되어 있다.
13
+ - [ ] 연습 과제와 정답 또는 평가 기준이 존재한다.
14
+ - [ ] 최종 산출물이 요청된 형식과 경로에 존재한다.
15
+
9
16
  Turn a subject into a publishable learning experience whose outcome can be observed. Design the learning before polishing the presentation.
10
17
 
11
18
  ## Set the contract
@@ -1,165 +1,66 @@
1
1
  ---
2
2
  name: vibe.event
3
- description: Community event automation D-Day based proactive task execution
4
- argument-hint: '"MDC 12차 3/30" or "webinar AI에이전트 4/15" or "DWK 5차 5/20"'
3
+ description: 커뮤니티 행사 일정·홍보·운영을 준비하거나 D-Day 기준 자동화가 필요할 때 — event 유형을 판별하고 외부 발송 전 승인을 강제한다.
4
+ argument-hint: '"event description" | status | dashboard'
5
5
  user-invocable: true
6
6
  ---
7
7
 
8
8
  # /vibe.event
9
9
 
10
- Automate community event planning with D-Day based proactive execution.
10
+ ## 완료 기준
11
+
12
+ - [ ] event 유형, 날짜, D-Day가 상태 파일에 기록되어 있다.
13
+ - [ ] 선택한 planning·communications·operations 단계의 산출물이 존재한다.
14
+ - [ ] 외부 발송은 명시적 승인 기록 없이는 실행되지 않았다.
15
+ - [ ] 완료된 task와 남은 task 상태가 저장되어 있다.
16
+
17
+ Route one event request across planning, communications, and operations without loading unrelated detail.
11
18
 
12
19
  ## Usage
13
20
 
14
- ```
15
- /vibe.event "MDC 12차 3/30" # Parse: type=MDC, edition=12, date=3/30
16
- /vibe.event "webinar AI에이전트 4/15" # Parse: type=webinar, topic=AI에이전트, date=4/15
17
- /vibe.event "DWK 5차 5/20 오프라인" # Parse: type=DWK, edition=5, date=5/20, format=offline
18
- /vibe.event status # Show current event status
19
- /vibe.event dashboard # Open dashboard (localhost:8080)
21
+ ```text
22
+ /vibe.event "MDC 12차 3/30"
23
+ /vibe.event "webinar AI에이전트 4/15"
24
+ /vibe.event "DWK 5차 5/20 오프라인"
25
+ /vibe.event status
26
+ /vibe.event dashboard
20
27
  ```
21
28
 
22
- ## Execution Flow
29
+ ## Routing
23
30
 
24
- ```
25
- 1. PARSE input
26
- ├── Event type: MDC / webinar / DWK
27
- ├── Edition number (optional)
28
- ├── Date (required)
29
- ├── Topic (optional, can be set later)
30
- └── Format: offline/online (DWK only, default=offline)
31
-
32
- 2. CALCULATE D-Day
33
- └── today - event_date = D-{n}
34
-
35
- 3. LOAD or CREATE state
36
- ├── Check .event_state.json
37
- └── Create if new event
38
-
39
- 4. DETERMINE current phase
40
- ├── MDC: 11 steps (D-60 → D+2)
41
- ├── Webinar: 5 steps (planning → D+1)
42
- └── DWK: 9 steps (D-30 → D+3)
43
-
44
- 5. AUTO-EXECUTE pending deliverables
45
- ├── Content drafts → event-planner agent
46
- ├── Speaker research → event-planner agent
47
- ├── Image generation → event-ops agent
48
- ├── SMS/email drafts → event-ops agent
49
- └── Ops materials → event-ops agent
50
-
51
- 6. REQUEST confirmation for send actions
52
- ├── SMS actual send
53
- ├── Email actual send
54
- └── Notion real registration
55
-
56
- 7. SAVE state
57
- └── Update .event_state.json
58
- ```
31
+ 1. Parse event type (`MDC`, `webinar`, `DWK`), edition, date, topic, and format.
32
+ 2. Load `.event_state.json` when present; update it after each completed action.
33
+ For the complete phase tables, parsing examples, state schema, dashboard,
34
+ and legacy safety contract, read `references/orchestration-legacy.md`.
35
+ 3. Select only the required reference:
36
+ - timeline, speakers, outreach, intro/SNS/review content → `references/planning.md`
37
+ - SMS, email, invitations, reminders, SNS delivery copy → `references/comms.md`
38
+ - nametags, checklist, slides, Slido, images, settlement → `references/operations.md`
39
+ 4. When a request crosses modes, execute planning before communications and operations, sharing the same event state and output paths.
59
40
 
60
- ## Input Parsing Rules
61
-
62
- | Input | Parsed Result |
63
- |-------|---------------|
64
- | `MDC 12차 3/30` | type=MDC, edition=12, date=2026-03-30 |
65
- | `webinar AI에이전트` | type=webinar, topic=AI에이전트, date=TBD (ask) |
66
- | `DWK 5차 5/20 오프라인` | type=DWK, edition=5, date=2026-05-20, format=offline |
67
- | `status` | Show .event_state.json summary |
68
- | `dashboard` | Run `python output/serve.py` |
69
-
70
- ## Phase-by-Phase Agent Dispatch
71
-
72
- ### MDC Phases
73
-
74
- | Phase | Agents Triggered | Outputs |
75
- |-------|-----------------|---------|
76
- | D-60 | event-planner | 3 topic suggestions + speaker research |
77
- | D-45 | event-planner | DM + email outreach drafts |
78
- | D-40 | event-ops | Topic confirmation request email |
79
- | D-28 | event-planner, event-ops | Intro + 2 images + 3 SMS + 1 email |
80
- | D-30 | event-planner, event-ops | LinkedIn/Threads promo + SMS send(✅) |
81
- | D-14 | event-planner | LinkedIn/Threads reminder |
82
- | D-3 | event-ops | BCC email + SMS send(✅) |
83
- | D-1 | event-ops | Nametags + checklist + PPTX + SMS(✅) |
84
- | D-Day | event-ops | Day-of SMS(✅) |
85
- | D+1 | event-planner, event-ops | Review posts + settlement |
86
- | D+2 | — | Site update (manual) |
87
-
88
- ### Webinar Phases
89
-
90
- | Phase | Agents Triggered | Outputs |
91
- |-------|-----------------|---------|
92
- | Planning | event-planner, event-ops | Intro + 3 images + SMS + email |
93
- | Planning | event-planner | LinkedIn/Threads promo |
94
- | D-4 | event-ops | Zoom(manual) + BCC email + SMS(✅) |
95
- | D-Day | event-ops | SMS(✅) + slides |
96
- | D+1 | event-planner | Review posts |
97
-
98
- ### DWK Phases
99
-
100
- | Phase | Agents Triggered | Outputs |
101
- |-------|-----------------|---------|
102
- | D-30 | event-planner | 3 topics + speaker research |
103
- | D-25 | event-planner | DM + email outreach |
104
- | D-20 | event-ops | Topic confirmation email |
105
- | D-16 | event-planner, event-ops | Intro + 2 images + SMS + email |
106
- | D-15 | event-planner | LinkedIn/Threads promo |
107
- | D-3 | event-ops | BCC email + SMS(✅) |
108
- | D-1 | event-ops | Slido plan + PPTX + SNS remind(✅) |
109
- | D-Day | event-ops | SMS(✅) + nametags(offline) |
110
- | D+3 | event-planner, event-ops | Review + settlement |
111
-
112
- ## State File Format
113
-
114
- ```json
115
- {
116
- "event_id": "MDC-12",
117
- "type": "MDC",
118
- "edition": 12,
119
- "date": "2026-03-30",
120
- "title": "마케팅데이터커넥트 12회",
121
- "topic": "마케팅 자동화",
122
- "format": "offline",
123
- "speakers": [
124
- {
125
- "name": "김영수",
126
- "company": "Company X",
127
- "topic": "마케팅 데이터 파이프라인"
128
- }
129
- ],
130
- "current_step": "D-28",
131
- "completed_steps": ["D-60", "D-45", "D-40"],
132
- "outputs": {
133
- "D-28": ["intro.md", "thumbnail_500x500.png", "sms_notification.txt"]
134
- },
135
- "confirmations_pending": []
136
- }
137
- ```
41
+ Claude Code maps named event workers to Task/Agent; Codex maps them to native
42
+ collaboration. Inherit the session model and delegate independent work only
43
+ when it does not race on `.event_state.json` or shared output files.
138
44
 
139
- ## Dashboard
45
+ ## Safety Gate
140
46
 
141
- ```bash
142
- # Start dashboard
143
- python output/serve.py
144
- # Opens http://localhost:8080
47
+ - Drafts, previews, test sends, and local artifacts may be produced automatically.
48
+ - Never send SMS/email/SNS, publish content, upload, or contact a real person without explicit confirmation in the current conversation.
49
+ - Before confirmation show recipient count, exact preview, channel, and cost estimate where applicable. Email recipients use BCC.
50
+ - Autonomous mode never bypasses this external-state confirmation.
145
51
 
146
- # Features:
147
- # - Timeline view with D-Day progress
148
- # - Generate buttons per step
149
- # - File preview links
150
- # - API status (Antigravity/Aligo key validity)
151
- # - Dark theme with community color coding
152
- ```
52
+ ## State and Outputs
153
53
 
154
- ## Safety Rules
54
+ - State: `.event_state.json`
55
+ - Speaker history: `data/speakers/{name}.json`
56
+ - Reports and copy: `output/reports/`
57
+ - Images and prompts: `output/images/`
155
58
 
156
- ```
157
- CRITICAL — These are absolute prohibitions:
158
- 1. NEVER send SMS/email without explicit user confirmation
159
- 2. ALWAYS use BCC for email (never expose attendee emails)
160
- 3. NEVER use emoji in SMS (EUC-KR incompatible)
161
- 4. NEVER delete files (move only)
162
- 5. ALWAYS test SMS with testmode_yn=Y before real send
163
- 6. NEVER register to Notion without dry_run first
164
- 7. NEVER commit .env files
165
- ```
59
+ ## Done
60
+
61
+ - Event identity and current D-Day phase are explicit.
62
+ - Every requested artifact exists at its documented path.
63
+ - State reflects completed, pending, and confirmation-blocked work.
64
+ - No external send or publish occurred without explicit approval.
65
+
66
+ ARGUMENTS: $ARGUMENTS