luna-agents 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/LICENSE +21 -0
- package/.claude-plugin/README.md +285 -0
- package/.claude-plugin/claude-plugin.json +106 -0
- package/.claude-plugin/index.js +318 -0
- package/.claude-plugin/lib/api-client.js +504 -0
- package/.claude-plugin/lib/rag-utils.js +442 -0
- package/.claude-plugin/package.json +418 -0
- package/LICENSE +21 -0
- package/README.md +350 -0
- package/agents/json/design-architect.json +57 -0
- package/agents/json/luna-auth.json +71 -0
- package/agents/json/luna-brand.json +66 -0
- package/agents/json/luna-cloudflare.json +261 -0
- package/agents/json/luna-code-review.json +63 -0
- package/agents/json/luna-deployment.json +68 -0
- package/agents/json/luna-documentation.json +85 -0
- package/agents/json/luna-hig.json +128 -0
- package/agents/json/luna-layout-designer.json +178 -0
- package/agents/json/luna-monitoring-observability.json +64 -0
- package/agents/json/luna-post-launch-review.json +68 -0
- package/agents/json/luna-requirements-analyzer.json +53 -0
- package/agents/json/luna-task-executor.json +63 -0
- package/agents/json/luna-task-planner.json +62 -0
- package/agents/json/luna-testing-validation.json +66 -0
- package/agents/luna-365-security.md +96 -0
- package/agents/luna-analytics.md +318 -0
- package/agents/luna-api-generator.md +654 -0
- package/agents/luna-auth.md +396 -0
- package/agents/luna-brand.md +248 -0
- package/agents/luna-cloudflare.md +728 -0
- package/agents/luna-code-review.md +487 -0
- package/agents/luna-database.md +453 -0
- package/agents/luna-deployment.md +202 -0
- package/agents/luna-design-architect.md +353 -0
- package/agents/luna-docker.md +615 -0
- package/agents/luna-documentation.md +177 -0
- package/agents/luna-full-test.md +910 -0
- package/agents/luna-glm-vision.md +211 -0
- package/agents/luna-hig.md +430 -0
- package/agents/luna-lemonsqueezy.md +441 -0
- package/agents/luna-monitoring-observability.md +199 -0
- package/agents/luna-openai-app.md +499 -0
- package/agents/luna-post-launch-review.md +191 -0
- package/agents/luna-rag-enhanced.md +1619 -0
- package/agents/luna-rag.md +1733 -0
- package/agents/luna-requirements-analyzer.md +189 -0
- package/agents/luna-run.md +620 -0
- package/agents/luna-seo.md +338 -0
- package/agents/luna-task-executor.md +371 -0
- package/agents/luna-task-planner.md +275 -0
- package/agents/luna-testing-validation.md +681 -0
- package/agents/luna-ui-fix.md +591 -0
- package/agents/luna-ui-test.md +600 -0
- package/agents/luna-user-guide.md +409 -0
- package/agents/site-auditor.md +83 -0
- package/commands/3d-mesh.md +12 -0
- package/commands/3d.md +12 -0
- package/commands/agent-boost.md +13 -0
- package/commands/ai-index.md +16 -0
- package/commands/api.md +12 -0
- package/commands/assert.md +17 -0
- package/commands/audience.md +12 -0
- package/commands/auth.md +17 -0
- package/commands/autopilot.md +12 -0
- package/commands/boost-finsavvy.md +10 -0
- package/commands/boost-org.md +10 -0
- package/commands/boost-project.md +12 -0
- package/commands/brand.md +17 -0
- package/commands/browser-test.md +18 -0
- package/commands/cf.md +26 -0
- package/commands/cfg.md +33 -0
- package/commands/chain.md +12 -0
- package/commands/challenge.md +13 -0
- package/commands/clone.md +12 -0
- package/commands/cmds.md +243 -0
- package/commands/collab.md +12 -0
- package/commands/compete.md +12 -0
- package/commands/config-rules.md +21 -0
- package/commands/connect-infra.md +10 -0
- package/commands/context-pack.md +13 -0
- package/commands/curb.md +12 -0
- package/commands/des.md +38 -0
- package/commands/devto.md +20 -0
- package/commands/dock.md +26 -0
- package/commands/docs.md +33 -0
- package/commands/e2e-flow.md +18 -0
- package/commands/email-routing.md +10 -0
- package/commands/feature.md +12 -0
- package/commands/figma.md +12 -0
- package/commands/fix.md +12 -0
- package/commands/flaky.md +12 -0
- package/commands/flow-record.md +12 -0
- package/commands/gamify.md +12 -0
- package/commands/ghost.md +12 -0
- package/commands/git-insights.md +12 -0
- package/commands/go-viral.md +16 -0
- package/commands/go.md +42 -0
- package/commands/graph-rag.md +13 -0
- package/commands/guard.md +12 -0
- package/commands/heal.md +17 -0
- package/commands/heygen.md +12 -0
- package/commands/hig.md +33 -0
- package/commands/idea.md +12 -0
- package/commands/imagine.md +12 -0
- package/commands/inbox.md +12 -0
- package/commands/lam.md +12 -0
- package/commands/landing.md +12 -0
- package/commands/launch.md +12 -0
- package/commands/learn.md +12 -0
- package/commands/leverage.md +12 -0
- package/commands/ll-365-secure.md +179 -0
- package/commands/ll-3d-mesh.md +94 -0
- package/commands/ll-3d.md +123 -0
- package/commands/ll-a11y-scan.md +143 -0
- package/commands/ll-a11y.md +71 -0
- package/commands/ll-agent-boost.md +92 -0
- package/commands/ll-agent-chain.md +104 -0
- package/commands/ll-ai-index.md +120 -0
- package/commands/ll-api-client.md +77 -0
- package/commands/ll-api.md +99 -0
- package/commands/ll-assert.md +73 -0
- package/commands/ll-audience.md +308 -0
- package/commands/ll-auth.md +145 -0
- package/commands/ll-autopilot.md +113 -0
- package/commands/ll-boost-finsavvy.md +106 -0
- package/commands/ll-boost-org.md +161 -0
- package/commands/ll-boost-project.md +118 -0
- package/commands/ll-brand.md +150 -0
- package/commands/ll-browser-test.md +203 -0
- package/commands/ll-challenge.md +124 -0
- package/commands/ll-changelog.md +80 -0
- package/commands/ll-ci.md +78 -0
- package/commands/ll-claude-instructions.md +80 -0
- package/commands/ll-clone.md +82 -0
- package/commands/ll-cloudflare.md +580 -0
- package/commands/ll-codemap.md +78 -0
- package/commands/ll-collab.md +87 -0
- package/commands/ll-compete.md +67 -0
- package/commands/ll-config-rules.md +255 -0
- package/commands/ll-config.md +434 -0
- package/commands/ll-connect-infra.md +123 -0
- package/commands/ll-context-pack.md +100 -0
- package/commands/ll-curb.md +164 -0
- package/commands/ll-debug.md +76 -0
- package/commands/ll-deploy.md +101 -0
- package/commands/ll-deps.md +70 -0
- package/commands/ll-design.md +86 -0
- package/commands/ll-devto-publish.md +172 -0
- package/commands/ll-dockerize.md +273 -0
- package/commands/ll-docs.md +123 -0
- package/commands/ll-e2e-flow.md +132 -0
- package/commands/ll-e2e-test.md +231 -0
- package/commands/ll-email-routing.md +130 -0
- package/commands/ll-env.md +70 -0
- package/commands/ll-execute.md +98 -0
- package/commands/ll-feature.md +80 -0
- package/commands/ll-figma.md +82 -0
- package/commands/ll-fix.md +76 -0
- package/commands/ll-flaky.md +151 -0
- package/commands/ll-flow-record.md +180 -0
- package/commands/ll-flowdocs.md +83 -0
- package/commands/ll-gamify.md +131 -0
- package/commands/ll-gemma4.md +84 -0
- package/commands/ll-ghost.md +79 -0
- package/commands/ll-git-insights.md +152 -0
- package/commands/ll-go-viral.md +171 -0
- package/commands/ll-graph-rag.md +113 -0
- package/commands/ll-guard.md +92 -0
- package/commands/ll-heal.md +135 -0
- package/commands/ll-heygen.md +203 -0
- package/commands/ll-hig.md +578 -0
- package/commands/ll-hld.md +84 -0
- package/commands/ll-i18n.md +74 -0
- package/commands/ll-idea.md +101 -0
- package/commands/ll-imagine.md +72 -0
- package/commands/ll-inbox.md +116 -0
- package/commands/ll-lam.md +93 -0
- package/commands/ll-landing.md +171 -0
- package/commands/ll-launch.md +100 -0
- package/commands/ll-learn.md +87 -0
- package/commands/ll-leverage.md +137 -0
- package/commands/ll-local-llm.md +131 -0
- package/commands/ll-ls-products.md +160 -0
- package/commands/ll-marketplace.md +130 -0
- package/commands/ll-mcp-publish.md +104 -0
- package/commands/ll-migrate.md +68 -0
- package/commands/ll-mock.md +79 -0
- package/commands/ll-money.md +87 -0
- package/commands/ll-monitor.md +120 -0
- package/commands/ll-morph.md +117 -0
- package/commands/ll-multi-agent.md +170 -0
- package/commands/ll-native.md +93 -0
- package/commands/ll-nexa.md +79 -0
- package/commands/ll-onboarding.md +84 -0
- package/commands/ll-openhands.md +78 -0
- package/commands/ll-organic-promote.md +260 -0
- package/commands/ll-parallel.md +74 -0
- package/commands/ll-payments.md +83 -0
- package/commands/ll-perf-trace.md +147 -0
- package/commands/ll-perf.md +65 -0
- package/commands/ll-persona.md +280 -0
- package/commands/ll-pipe.md +296 -0
- package/commands/ll-plan-impl.js +570 -0
- package/commands/ll-plan-v2.md +297 -0
- package/commands/ll-plan.md +87 -0
- package/commands/ll-postlaunch.md +109 -0
- package/commands/ll-pr.md +84 -0
- package/commands/ll-present.md +110 -0
- package/commands/ll-product-map.md +152 -0
- package/commands/ll-promote.md +352 -0
- package/commands/ll-publish.md +124 -0
- package/commands/ll-pulse.md +96 -0
- package/commands/ll-rag-guided.md +345 -0
- package/commands/ll-rag-upgrade.md +504 -0
- package/commands/ll-rag.md +343 -0
- package/commands/ll-record.md +114 -0
- package/commands/ll-refactor.md +71 -0
- package/commands/ll-requirements.md +71 -0
- package/commands/ll-review.md +92 -0
- package/commands/ll-rollback.md +66 -0
- package/commands/ll-routemap.md +79 -0
- package/commands/ll-rules.md +90 -0
- package/commands/ll-shortcuts.md +229 -0
- package/commands/ll-sing.md +99 -0
- package/commands/ll-site-audit.md +228 -0
- package/commands/ll-smart-route.md +92 -0
- package/commands/ll-smart-search.md +58 -0
- package/commands/ll-storybook.md +86 -0
- package/commands/ll-swarm.md +101 -0
- package/commands/ll-test.md +97 -0
- package/commands/ll-time-machine.md +72 -0
- package/commands/ll-ui-convert.md +433 -0
- package/commands/ll-video.md +108 -0
- package/commands/ll-vision-pipeline.md +247 -0
- package/commands/ll-vision.md +74 -0
- package/commands/ll-visual-diff.md +118 -0
- package/commands/ll-visual-qa.md +204 -0
- package/commands/ll-visual-regression.md +96 -0
- package/commands/ll-voice.md +138 -0
- package/commands/ll-watch.md +65 -0
- package/commands/ll-workflow.md +108 -0
- package/commands/ll-zen.md +98 -0
- package/commands/local-llm.md +12 -0
- package/commands/marketplace.md +13 -0
- package/commands/mcp-publish.md +16 -0
- package/commands/migrate.md +12 -0
- package/commands/money.md +12 -0
- package/commands/morph.md +12 -0
- package/commands/multi-agent.md +12 -0
- package/commands/native.md +12 -0
- package/commands/nexa.md +12 -0
- package/commands/oh.md +12 -0
- package/commands/organic-promote.md +16 -0
- package/commands/perf-trace.md +12 -0
- package/commands/perf.md +12 -0
- package/commands/persona.md +12 -0
- package/commands/pipe.md +21 -0
- package/commands/plan.md +38 -0
- package/commands/pr.md +12 -0
- package/commands/present.md +12 -0
- package/commands/product-map.md +13 -0
- package/commands/promote.md +16 -0
- package/commands/publish.md +12 -0
- package/commands/pulse.md +12 -0
- package/commands/q.md +35 -0
- package/commands/record.md +12 -0
- package/commands/refactor.md +12 -0
- package/commands/req.md +40 -0
- package/commands/retro.md +33 -0
- package/commands/rev.md +39 -0
- package/commands/rules.md +19 -0
- package/commands/search.md +12 -0
- package/commands/sec.md +34 -0
- package/commands/ship.md +39 -0
- package/commands/sing.md +12 -0
- package/commands/site-audit.md +12 -0
- package/commands/smart-route.md +13 -0
- package/commands/swarm.md +12 -0
- package/commands/test.md +39 -0
- package/commands/time-machine.md +12 -0
- package/commands/ui.md +33 -0
- package/commands/video.md +12 -0
- package/commands/vision.md +12 -0
- package/commands/voice.md +12 -0
- package/commands/vr.md +18 -0
- package/commands/watch.md +39 -0
- package/commands/workflow.md +19 -0
- package/commands/zen.md +12 -0
- package/package.json +76 -0
- package/setup.sh +382 -0
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ll-curb
|
|
3
|
+
displayName: Luna Curb Writer
|
|
4
|
+
description: Transform marketing copy into Curb Your Enthusiasm-style content — awkward, honest, slightly aggressive developer humor
|
|
5
|
+
version: 1.0.0
|
|
6
|
+
category: content
|
|
7
|
+
agent: luna-documentation
|
|
8
|
+
parameters:
|
|
9
|
+
- name: target
|
|
10
|
+
type: string
|
|
11
|
+
description: "What to rewrite: landing, pricing, readme, social, pitch, email, changelog, or a file path"
|
|
12
|
+
required: false
|
|
13
|
+
prompt: true
|
|
14
|
+
- name: tone
|
|
15
|
+
type: string
|
|
16
|
+
description: "Intensity: mild (witty), medium (sarcastic), hot (Larry David at his worst)"
|
|
17
|
+
required: false
|
|
18
|
+
default: medium
|
|
19
|
+
mcp_servers:
|
|
20
|
+
- git
|
|
21
|
+
- fetch
|
|
22
|
+
- memory
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
# /curb — Curb Your Marketing
|
|
26
|
+
|
|
27
|
+
Transform your product marketing into Curb Your Enthusiasm-style developer content. Awkward. Honest. Slightly aggressive. Surprisingly convincing.
|
|
28
|
+
|
|
29
|
+
## Usage
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
/curb # Rewrite entire landing page
|
|
33
|
+
/curb landing # Landing page copy
|
|
34
|
+
/curb pricing # Pricing section
|
|
35
|
+
/curb social # Generate 20 tweet-sized one-liners
|
|
36
|
+
/curb readme # README with personality
|
|
37
|
+
/curb pitch # Product Hunt / investor pitch
|
|
38
|
+
/curb email "welcome series" # Onboarding emails with tone
|
|
39
|
+
/curb changelog # Changelog that people actually read
|
|
40
|
+
/curb src/components/Hero.tsx # Rewrite a specific file's copy
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## The Curb Voice Rules
|
|
44
|
+
|
|
45
|
+
When generating content, follow these rules exactly:
|
|
46
|
+
|
|
47
|
+
### Tone
|
|
48
|
+
- **Petty frustration** about absurd industry norms (paying per minute, writing YAML to run tests, vendor lock-in)
|
|
49
|
+
- **Escalating indignation** — start calm, build to "what are we DOING here?"
|
|
50
|
+
- **Conversational rants** — talk directly at the reader like complaining to a friend at dinner
|
|
51
|
+
- **Deadpan disbelief** — "So you're telling me..." / "Let me get this straight..."
|
|
52
|
+
- **Awkward social moments** — the coworker stare, the DevOps guy going quiet
|
|
53
|
+
|
|
54
|
+
### Format Rules
|
|
55
|
+
- Never use hashtags or corporate speak
|
|
56
|
+
- Keep tweets under 280 characters
|
|
57
|
+
- The humor comes from the TRUTH — real developer pain, real pricing absurdity
|
|
58
|
+
- End landing pages with passive-aggressive CTAs
|
|
59
|
+
- Always contrast the absurd status quo with the obvious alternative
|
|
60
|
+
|
|
61
|
+
### Structure for Landing Pages
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
HERO: Bold complaint disguised as a headline
|
|
65
|
+
SUBHERO: The relatable rant (2-3 sentences, conversational)
|
|
66
|
+
|
|
67
|
+
PROBLEM ("Let me ask you something..."):
|
|
68
|
+
- 3 rant cards (setup + punchline)
|
|
69
|
+
- 4 one-liner punches as border-left quotes
|
|
70
|
+
- The "invoice moment" — emotional turning point
|
|
71
|
+
|
|
72
|
+
SOLUTION: State what it does in the most understated way possible
|
|
73
|
+
"PushCI.dev — run CI locally. That's it."
|
|
74
|
+
|
|
75
|
+
COMPARISON: Honest table with uncomfortable truths
|
|
76
|
+
- Include "Emotional damage" as a real row
|
|
77
|
+
- Cloud CI column: sarcastic quotes
|
|
78
|
+
- Your product column: deadpan honesty
|
|
79
|
+
|
|
80
|
+
SOCIAL PROOF (kind of):
|
|
81
|
+
- Fake-real testimonials that sound like therapy
|
|
82
|
+
- "I stopped paying for CI and nothing bad happened. That worried me."
|
|
83
|
+
|
|
84
|
+
PRICING: One word. "Free."
|
|
85
|
+
- Then the passive-aggressive footnote
|
|
86
|
+
|
|
87
|
+
CTA: "Or keep paying. That's fine. Totally fine."
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
### One-Liner Bank Template
|
|
91
|
+
|
|
92
|
+
Generate 20 lines in these categories:
|
|
93
|
+
|
|
94
|
+
**Existential (why does this exist):**
|
|
95
|
+
- Pattern: "[absurd thing] + [deadpan reaction]"
|
|
96
|
+
- Example: "I'm pushing code... why is there a meter running? What is this, a taxi?"
|
|
97
|
+
|
|
98
|
+
**Comparative (us vs them):**
|
|
99
|
+
- Pattern: "[their problem] vs [our non-problem]"
|
|
100
|
+
- Example: "I had two problems: slow pipelines and expensive pipelines. Now I just have slow pipelines."
|
|
101
|
+
|
|
102
|
+
**Observational (industry truths):**
|
|
103
|
+
- Pattern: "The cloud is great... until [uncomfortable truth]"
|
|
104
|
+
- Example: "You know what's scalable? Costs. Costs scale beautifully."
|
|
105
|
+
|
|
106
|
+
**Self-deprecating (honest about our own product):**
|
|
107
|
+
- Pattern: "[honest admission] + [but still better]"
|
|
108
|
+
- Example: "PushCI.dev — it's not better... it's just not charging you. Which somehow makes it better."
|
|
109
|
+
|
|
110
|
+
**Short punches (tweet-sized):**
|
|
111
|
+
- Pattern: [4-8 words, no fluff]
|
|
112
|
+
- "Stop renting your own CI."
|
|
113
|
+
- "Run builds. Not up a bill."
|
|
114
|
+
- "CI without invoices hits different."
|
|
115
|
+
|
|
116
|
+
## Workflow
|
|
117
|
+
|
|
118
|
+
### Step 1: Analyze the Project
|
|
119
|
+
|
|
120
|
+
Read these files to understand the product:
|
|
121
|
+
- `package.json`, `README.md`, `CLAUDE.md` — what it does
|
|
122
|
+
- Landing page components — existing copy
|
|
123
|
+
- Pricing data — what's free vs paid
|
|
124
|
+
- Competitor comparison data — what to roast
|
|
125
|
+
|
|
126
|
+
Extract:
|
|
127
|
+
- Product name and what it replaces
|
|
128
|
+
- Key value proposition (what's absurdly better)
|
|
129
|
+
- Competitor pain points (what to make fun of)
|
|
130
|
+
- Pricing advantage (the free angle)
|
|
131
|
+
|
|
132
|
+
### Step 2: Generate Curb Content
|
|
133
|
+
|
|
134
|
+
Based on the target, generate:
|
|
135
|
+
|
|
136
|
+
**Landing page**: Full page rewrite with all sections above
|
|
137
|
+
**Social**: 20 one-liners across all 5 categories
|
|
138
|
+
**Pricing**: Curb-style pricing section with passive-aggressive CTAs
|
|
139
|
+
**README**: Technical README but every section header is a complaint
|
|
140
|
+
**Pitch**: Product Hunt description in "Larry David pitching a startup" voice
|
|
141
|
+
**Email**: Onboarding sequence where each email gets progressively more honest
|
|
142
|
+
**Changelog**: Version notes that read like therapy sessions
|
|
143
|
+
|
|
144
|
+
### Step 3: Implement
|
|
145
|
+
|
|
146
|
+
- Write the actual component code (React/TSX)
|
|
147
|
+
- Maintain existing styling and framework
|
|
148
|
+
- Keep the Curb tone in JSX string literals
|
|
149
|
+
- Add a rotating quote ticker if applicable
|
|
150
|
+
- Ensure all CTAs point to real URLs
|
|
151
|
+
|
|
152
|
+
## Examples of Good Lines
|
|
153
|
+
|
|
154
|
+
From the PushCI landing page (the original implementation):
|
|
155
|
+
|
|
156
|
+
```
|
|
157
|
+
"Build minutes? What is this, a gym membership?"
|
|
158
|
+
"CI used to be a tool. Now it's a subscription. For what? For waiting?"
|
|
159
|
+
"The cloud is great... until it starts acting like a landlord."
|
|
160
|
+
"You know what's scalable? Costs. Costs scale beautifully."
|
|
161
|
+
"I stopped paying for CI and nothing bad happened. That worried me."
|
|
162
|
+
"You can keep paying for CI. I'm not judging. I am judging a little."
|
|
163
|
+
"Emotional damage: High vs Still high, but free"
|
|
164
|
+
```
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ll-debug
|
|
3
|
+
displayName: Luna Debugger
|
|
4
|
+
description: Systematic debugging — reproduce, hypothesize, instrument, test, narrow down with persistent state
|
|
5
|
+
version: 1.0.0
|
|
6
|
+
category: debugging
|
|
7
|
+
agent: luna-code-review
|
|
8
|
+
parameters:
|
|
9
|
+
- name: issue
|
|
10
|
+
type: string
|
|
11
|
+
description: Bug description, error message, or unexpected behavior
|
|
12
|
+
required: true
|
|
13
|
+
prompt: true
|
|
14
|
+
- name: scope
|
|
15
|
+
type: string
|
|
16
|
+
description: Project or feature scope
|
|
17
|
+
required: true
|
|
18
|
+
prompt: true
|
|
19
|
+
workflow:
|
|
20
|
+
- reproduce_issue
|
|
21
|
+
- form_hypotheses
|
|
22
|
+
- instrument_code
|
|
23
|
+
- test_hypotheses
|
|
24
|
+
- narrow_root_cause
|
|
25
|
+
- persist_debug_state
|
|
26
|
+
- generate_debug_report
|
|
27
|
+
output:
|
|
28
|
+
- .luna/{current-project}/debug-session.md
|
|
29
|
+
prerequisites: []
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
# Luna Debugger
|
|
33
|
+
|
|
34
|
+
Scientific debugging method with persistent state across context resets.
|
|
35
|
+
|
|
36
|
+
## What This Command Does
|
|
37
|
+
|
|
38
|
+
1. **Reproduce** — confirm the issue and document exact steps
|
|
39
|
+
2. **Hypothesize** — list 3-5 possible root causes ranked by likelihood
|
|
40
|
+
3. **Instrument** — add targeted logging/breakpoints to test hypotheses
|
|
41
|
+
4. **Test** — run specific scenarios to confirm or eliminate each hypothesis
|
|
42
|
+
5. **Narrow** — binary search through code flow to pinpoint root cause
|
|
43
|
+
6. **Persist** — save debug state so you can resume after context resets
|
|
44
|
+
7. **Report** — document findings, root cause, and suggested fix
|
|
45
|
+
|
|
46
|
+
## Debug Protocol
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
Observe → Hypothesize → Predict → Test → Repeat
|
|
50
|
+
↓
|
|
51
|
+
Each iteration:
|
|
52
|
+
- Record what you tested
|
|
53
|
+
- Record what you learned
|
|
54
|
+
- Update hypothesis rankings
|
|
55
|
+
- Save state to debug-session.md
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Usage
|
|
59
|
+
|
|
60
|
+
```
|
|
61
|
+
/debug "API returns 500 on workflow creation with > 10 nodes"
|
|
62
|
+
/debug "Dashboard shows stale data after team member removal"
|
|
63
|
+
/debug "Playwright test flakes on CI but passes locally"
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## State Persistence
|
|
67
|
+
|
|
68
|
+
Debug state is saved to `.luna/{project}/debug-session.md` so you can:
|
|
69
|
+
- Resume debugging after context window resets
|
|
70
|
+
- Hand off to another developer with full context
|
|
71
|
+
- Review the debugging process for learning
|
|
72
|
+
|
|
73
|
+
## Differs from /fix
|
|
74
|
+
|
|
75
|
+
- `/fix` — knows the bug, writes test, fixes it
|
|
76
|
+
- `/debug` — doesn't know root cause, investigates systematically
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ll-deploy
|
|
3
|
+
displayName: Luna Deployment
|
|
4
|
+
description: Deploy application to staging and production environments
|
|
5
|
+
version: 1.0.0
|
|
6
|
+
category: deployment
|
|
7
|
+
agent: luna-deployment
|
|
8
|
+
parameters:
|
|
9
|
+
- name: scope
|
|
10
|
+
type: string
|
|
11
|
+
description: Project or feature scope for deployment
|
|
12
|
+
required: true
|
|
13
|
+
prompt: true
|
|
14
|
+
workflow:
|
|
15
|
+
- verify_deployment_readiness
|
|
16
|
+
- configure_infrastructure
|
|
17
|
+
- deploy_to_staging
|
|
18
|
+
- run_smoke_tests
|
|
19
|
+
- deploy_to_production
|
|
20
|
+
- generate_deployment_report
|
|
21
|
+
output:
|
|
22
|
+
- .luna/{current-project}/deployment-report.md (project-level)
|
|
23
|
+
- .luna/{current-project}/{feature}/deployment-report.md (feature-level)
|
|
24
|
+
prerequisites:
|
|
25
|
+
- .luna/{current-project}/implementation-plan.md
|
|
26
|
+
- .luna/{current-project}/code-review-report.md
|
|
27
|
+
- .luna/{current-project}/test-validation-report.md
|
|
28
|
+
- .luna/{current-project}/design.md
|
|
29
|
+
- all_tests_passing
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
# Luna Deployment
|
|
33
|
+
|
|
34
|
+
Deploys your application to staging and production environments with comprehensive validation and reporting.
|
|
35
|
+
|
|
36
|
+
## What This Command Does
|
|
37
|
+
|
|
38
|
+
This command verifies deployment readiness, configures infrastructure, deploys to staging, runs smoke tests, deploys to production, and generates a detailed deployment report with all necessary information.
|
|
39
|
+
|
|
40
|
+
## Prerequisites
|
|
41
|
+
|
|
42
|
+
Requires in your current project:
|
|
43
|
+
- `.luna/{current-project}/implementation-plan.md`
|
|
44
|
+
- `.luna/{current-project}/code-review-report.md`
|
|
45
|
+
- `.luna/{current-project}/test-validation-report.md`
|
|
46
|
+
- `.luna/{current-project}/design.md`
|
|
47
|
+
- All tests passing (from test validation report)
|
|
48
|
+
|
|
49
|
+
If you're missing any prerequisites, complete the workflow:
|
|
50
|
+
```bash
|
|
51
|
+
/luna-requirements
|
|
52
|
+
/luna-design
|
|
53
|
+
/luna-plan
|
|
54
|
+
/luna-execute # Until all tasks complete
|
|
55
|
+
/luna-review
|
|
56
|
+
/luna-test
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## Usage Instructions
|
|
60
|
+
|
|
61
|
+
When you run this command, you'll be prompted for the scope:
|
|
62
|
+
- Press **ENTER** for project-level deployment
|
|
63
|
+
- Type **feature-name** to match your implementation scope
|
|
64
|
+
|
|
65
|
+
## Execution Steps
|
|
66
|
+
|
|
67
|
+
1. **Readiness Verification**: Verifies all prerequisites and deployment readiness
|
|
68
|
+
2. **Infrastructure Configuration**: Sets up and configures deployment infrastructure
|
|
69
|
+
3. **Staging Deployment**: Deploys application to staging environment
|
|
70
|
+
4. **Smoke Testing**: Runs smoke tests to validate staging deployment
|
|
71
|
+
5. **Production Deployment**: Deploys application to production environment
|
|
72
|
+
6. **Report Generation**: Generates comprehensive deployment-report.md
|
|
73
|
+
|
|
74
|
+
## Output Files
|
|
75
|
+
|
|
76
|
+
Creates in your current project:
|
|
77
|
+
- `.luna/{current-project}/deployment-report.md` for project-level deployment
|
|
78
|
+
- `.luna/{current-project}/{feature}/deployment-report.md` for feature-level deployment
|
|
79
|
+
|
|
80
|
+
The deployment report includes:
|
|
81
|
+
- Deployment timeline with key milestones
|
|
82
|
+
- Environment configuration details
|
|
83
|
+
- Health check results for all deployed services
|
|
84
|
+
- Performance validation metrics
|
|
85
|
+
- Rollback plan and procedures
|
|
86
|
+
- Access credentials and endpoints
|
|
87
|
+
- Post-deployment verification results
|
|
88
|
+
|
|
89
|
+
## Next Steps in Workflow
|
|
90
|
+
|
|
91
|
+
After successful deployment, create documentation:
|
|
92
|
+
```
|
|
93
|
+
/luna-docs
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
## Tips
|
|
97
|
+
|
|
98
|
+
- Ensure all tests pass before attempting deployment
|
|
99
|
+
- Review the staging deployment results before production deployment
|
|
100
|
+
- Keep the deployment report for future reference and audits
|
|
101
|
+
- The rollback plan in the report helps you quickly recover from issues
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ll-deps
|
|
3
|
+
displayName: Luna Dependency Audit
|
|
4
|
+
description: Audit dependencies — outdated packages, vulnerabilities, unused deps, license check, upgrade plan
|
|
5
|
+
version: 1.0.0
|
|
6
|
+
category: quality
|
|
7
|
+
agent: luna-code-review
|
|
8
|
+
parameters:
|
|
9
|
+
- name: action
|
|
10
|
+
type: string
|
|
11
|
+
description: Action (audit, update, cleanup, licenses, all)
|
|
12
|
+
required: false
|
|
13
|
+
prompt: true
|
|
14
|
+
- name: scope
|
|
15
|
+
type: string
|
|
16
|
+
description: Project or feature scope
|
|
17
|
+
required: true
|
|
18
|
+
prompt: true
|
|
19
|
+
workflow:
|
|
20
|
+
- scan_dependencies
|
|
21
|
+
- check_vulnerabilities
|
|
22
|
+
- find_unused_deps
|
|
23
|
+
- check_outdated
|
|
24
|
+
- audit_licenses
|
|
25
|
+
- generate_upgrade_plan
|
|
26
|
+
- generate_deps_report
|
|
27
|
+
output:
|
|
28
|
+
- .luna/{current-project}/deps-report.md
|
|
29
|
+
prerequisites: []
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
# Luna Dependency Audit
|
|
33
|
+
|
|
34
|
+
Keep dependencies secure, current, and minimal.
|
|
35
|
+
|
|
36
|
+
## What This Command Does
|
|
37
|
+
|
|
38
|
+
1. **Scan** — reads package.json, lock files, and import statements
|
|
39
|
+
2. **Vulnerabilities** — checks for known CVEs (npm audit + Snyk DB)
|
|
40
|
+
3. **Unused** — finds installed packages not imported anywhere
|
|
41
|
+
4. **Outdated** — lists packages with available updates
|
|
42
|
+
5. **Licenses** — checks for incompatible licenses (GPL in MIT project)
|
|
43
|
+
6. **Upgrade Plan** — prioritized list of safe upgrades with breaking change notes
|
|
44
|
+
7. **Report** — full dependency health scorecard
|
|
45
|
+
|
|
46
|
+
## Actions
|
|
47
|
+
|
|
48
|
+
| Action | What It Does |
|
|
49
|
+
|--------|-------------|
|
|
50
|
+
| `audit` | Vulnerability scan |
|
|
51
|
+
| `update` | Show available updates with risk level |
|
|
52
|
+
| `cleanup` | Find and remove unused dependencies |
|
|
53
|
+
| `licenses` | License compatibility check |
|
|
54
|
+
| `all` | Everything above |
|
|
55
|
+
|
|
56
|
+
## Usage
|
|
57
|
+
|
|
58
|
+
```
|
|
59
|
+
/deps # Full audit
|
|
60
|
+
/deps audit # Vulnerabilities only
|
|
61
|
+
/deps cleanup # Remove unused
|
|
62
|
+
/deps licenses # License check
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## Risk Levels
|
|
66
|
+
|
|
67
|
+
- **Safe** — patch update, no breaking changes
|
|
68
|
+
- **Low** — minor update, new features only
|
|
69
|
+
- **Medium** — major update, has migration guide
|
|
70
|
+
- **High** — major update, significant breaking changes
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ll-design
|
|
3
|
+
displayName: Luna Design Architecture
|
|
4
|
+
description: Transform requirements into comprehensive technical design specification
|
|
5
|
+
version: 1.0.0
|
|
6
|
+
category: design
|
|
7
|
+
agent: luna-design-architect
|
|
8
|
+
parameters:
|
|
9
|
+
- name: scope
|
|
10
|
+
type: string
|
|
11
|
+
description: Project or feature scope for design
|
|
12
|
+
required: true
|
|
13
|
+
prompt: true
|
|
14
|
+
workflow:
|
|
15
|
+
- read_requirements_document
|
|
16
|
+
- design_system_architecture
|
|
17
|
+
- create_component_specifications
|
|
18
|
+
- define_data_models_api_endpoints
|
|
19
|
+
- generate_design_document
|
|
20
|
+
output:
|
|
21
|
+
- .luna/{current-project}/design.md (project-level)
|
|
22
|
+
- .luna/{current-project}/{feature}/design.md (feature-level)
|
|
23
|
+
prerequisites:
|
|
24
|
+
- .luna/{current-project}/requirements.md
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
# Luna Design Architecture
|
|
28
|
+
|
|
29
|
+
Transforms your requirements into comprehensive technical design specifications with implementation guidelines.
|
|
30
|
+
|
|
31
|
+
## What This Command Does
|
|
32
|
+
|
|
33
|
+
This command reads your requirements document and creates a detailed technical design including system architecture, component specifications, data models, API endpoints, and implementation guidelines.
|
|
34
|
+
|
|
35
|
+
## Prerequisites
|
|
36
|
+
|
|
37
|
+
Requires in your current project:
|
|
38
|
+
- `.luna/{current-project}/requirements.md`
|
|
39
|
+
|
|
40
|
+
If you don't have requirements yet, run:
|
|
41
|
+
```
|
|
42
|
+
/luna-requirements
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Usage Instructions
|
|
46
|
+
|
|
47
|
+
When you run this command, you'll be prompted for the scope:
|
|
48
|
+
- Press **ENTER** for project-level design
|
|
49
|
+
- Type **feature-name** to match your requirements scope
|
|
50
|
+
|
|
51
|
+
## Execution Steps
|
|
52
|
+
|
|
53
|
+
1. **Requirements Analysis**: Reads and analyzes the requirements.md from your project
|
|
54
|
+
2. **Architecture Design**: Designs comprehensive system architecture
|
|
55
|
+
3. **Component Specification**: Creates detailed component specifications
|
|
56
|
+
4. **Data Modeling**: Defines data models and API endpoints
|
|
57
|
+
5. **Design Generation**: Generates design.md with implementation guidelines
|
|
58
|
+
|
|
59
|
+
## Output Files
|
|
60
|
+
|
|
61
|
+
Creates in your current project:
|
|
62
|
+
- `.luna/{current-project}/design.md` for project-level design
|
|
63
|
+
- `.luna/{current-project}/{feature}/design.md` for feature-level design
|
|
64
|
+
|
|
65
|
+
The design document includes:
|
|
66
|
+
- System architecture diagrams
|
|
67
|
+
- Component specifications and responsibilities
|
|
68
|
+
- Data models and relationships
|
|
69
|
+
- API endpoint specifications
|
|
70
|
+
- Technology stack recommendations
|
|
71
|
+
- Implementation guidelines and best practices
|
|
72
|
+
|
|
73
|
+
## Next Steps in Workflow
|
|
74
|
+
|
|
75
|
+
After design is complete, proceed with:
|
|
76
|
+
```
|
|
77
|
+
/luna-plan
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
This will break down your design into ordered, actionable implementation tasks.
|
|
81
|
+
|
|
82
|
+
## Tips
|
|
83
|
+
|
|
84
|
+
- Ensure your requirements document is complete before running this command
|
|
85
|
+
- Review the generated architecture for scalability and maintainability
|
|
86
|
+
- Consider your team's technical expertise when reviewing technology choices
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ll-devto-publish
|
|
3
|
+
displayName: Luna Dev.to Publisher
|
|
4
|
+
description: Write and publish Dev.to articles about any project — with comedy styles (Curb, Seinfeld, The Office, Silicon Valley) or straight technical. Auto-publishes via API.
|
|
5
|
+
version: 1.0.0
|
|
6
|
+
category: deployment
|
|
7
|
+
agent: luna-seo
|
|
8
|
+
parameters:
|
|
9
|
+
- name: product_name
|
|
10
|
+
type: string
|
|
11
|
+
description: "Product name"
|
|
12
|
+
required: true
|
|
13
|
+
prompt: true
|
|
14
|
+
- name: domain
|
|
15
|
+
type: string
|
|
16
|
+
description: "Product URL"
|
|
17
|
+
required: true
|
|
18
|
+
prompt: true
|
|
19
|
+
- name: style
|
|
20
|
+
type: string
|
|
21
|
+
description: "Style: curb (Curb Your Enthusiasm), seinfeld (observational), office (Michael Scott), silicon-valley (tech satire), straight (no comedy), absurd (surreal humor)"
|
|
22
|
+
required: false
|
|
23
|
+
default: curb
|
|
24
|
+
- name: topic
|
|
25
|
+
type: string
|
|
26
|
+
description: "What the article is about (e.g., 'why our tool is better than GitHub Actions')"
|
|
27
|
+
required: true
|
|
28
|
+
prompt: true
|
|
29
|
+
- name: publish
|
|
30
|
+
type: boolean
|
|
31
|
+
description: "Auto-publish to Dev.to (requires DEV_TO_API_KEY in .env)"
|
|
32
|
+
required: false
|
|
33
|
+
default: true
|
|
34
|
+
workflow:
|
|
35
|
+
- analyze_project
|
|
36
|
+
- generate_article_in_style
|
|
37
|
+
- review_and_refine
|
|
38
|
+
- publish_to_devto
|
|
39
|
+
- generate_social_snippets
|
|
40
|
+
output:
|
|
41
|
+
- docs/launch/DEVTO_{topic}.md
|
|
42
|
+
- .luna/{current-project}/devto-publish-report.md
|
|
43
|
+
mcp_servers:
|
|
44
|
+
- git
|
|
45
|
+
- fetch
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
# /devto-publish — Write & Ship Dev.to Articles
|
|
49
|
+
|
|
50
|
+
Write technical articles with personality. Auto-publish to Dev.to via API.
|
|
51
|
+
|
|
52
|
+
## Comedy Styles
|
|
53
|
+
|
|
54
|
+
### Curb Your Enthusiasm (`--style curb`)
|
|
55
|
+
Petty frustration about absurd industry norms. Escalating indignation. Deadpan disbelief.
|
|
56
|
+
|
|
57
|
+
> "So I'm looking at our GitHub Actions bill and I go — wait. We're paying... to LINT? We're paying someone to run eslint? I could run eslint. My toaster could run eslint."
|
|
58
|
+
|
|
59
|
+
> "Let me get this straight. You WROTE a config file. To TELL a computer. To run a TEST. That YOUR computer could run. For FREE."
|
|
60
|
+
|
|
61
|
+
**Tone rules:**
|
|
62
|
+
- Start calm, build to "what are we DOING here?"
|
|
63
|
+
- Talk directly at the reader like complaining at dinner
|
|
64
|
+
- "So you're telling me..." / "Let me get this straight..."
|
|
65
|
+
- The awkward silence moment when the DevOps guy realizes
|
|
66
|
+
- Always end with the product URL, never hashtags
|
|
67
|
+
|
|
68
|
+
### Seinfeld (`--style seinfeld`)
|
|
69
|
+
Observational comedy about everyday developer absurdity. "What's the deal with..."
|
|
70
|
+
|
|
71
|
+
> "What's the DEAL with YAML? It's not markup. It's not code. It's this weird in-between thing where one wrong space and your entire pipeline explodes. It's like the metric system of configuration."
|
|
72
|
+
|
|
73
|
+
> "You ever notice how setting up CI/CD takes longer than writing the actual code? That's like spending more time building the mailbox than writing the letter."
|
|
74
|
+
|
|
75
|
+
**Tone rules:**
|
|
76
|
+
- "What's the deal with [industry norm]?"
|
|
77
|
+
- Observational comparisons to everyday life
|
|
78
|
+
- Pop-out bits — "Not that there's anything wrong with Jenkins..."
|
|
79
|
+
- Jerry's incredulous tone when describing the obvious
|
|
80
|
+
|
|
81
|
+
### The Office (`--style office`)
|
|
82
|
+
Michael Scott energy. Confident ignorance. Cringe comedy.
|
|
83
|
+
|
|
84
|
+
> "Would I rather have working CI/CD or a pizza party? Trick question. PushCI gives you both because you save so much money on your CI bill you can afford a pizza party every day. — Michael Scott"
|
|
85
|
+
|
|
86
|
+
> "I'm not superstitious. But I am a little stitious. About YAML. Every time I write a YAML file, something bad happens. That's just science."
|
|
87
|
+
|
|
88
|
+
**Tone rules:**
|
|
89
|
+
- Michael Scott quotes (real or fabricated)
|
|
90
|
+
- "That's what she said" energy (keep it clean)
|
|
91
|
+
- Dwight-level obsession with the technical details
|
|
92
|
+
- Jim's deadpan camera look when something absurd happens
|
|
93
|
+
- Conference room meeting vibes
|
|
94
|
+
|
|
95
|
+
### Silicon Valley (`--style silicon-valley`)
|
|
96
|
+
Tech startup satire. Disruption theater. VC-speak.
|
|
97
|
+
|
|
98
|
+
> "We're not building CI/CD. We're building an AI-native infrastructure consciousness layer that democratizes developer velocity across the entire compute spectrum. Also it runs npm test. For free."
|
|
99
|
+
|
|
100
|
+
> "Our TAM is literally every developer who has ever written a YAML file and felt their soul leave their body. That's a $14 billion market."
|
|
101
|
+
|
|
102
|
+
**Tone rules:**
|
|
103
|
+
- Buzzword overload that circles back to something simple
|
|
104
|
+
- "We're making the world a better place" but for CI/CD
|
|
105
|
+
- Erlich Bachman confidence with Richard Hendricks reality
|
|
106
|
+
- Jian-Yang energy: "It's like GitHub Actions... but for your machine"
|
|
107
|
+
|
|
108
|
+
### Straight Technical (`--style straight`)
|
|
109
|
+
No comedy. Clean, authoritative technical writing.
|
|
110
|
+
|
|
111
|
+
**Tone rules:**
|
|
112
|
+
- Problem → Solution → Comparison → How to try
|
|
113
|
+
- Feature tables, code examples, benchmarks
|
|
114
|
+
- Professional but not boring
|
|
115
|
+
|
|
116
|
+
### Absurd (`--style absurd`)
|
|
117
|
+
Surreal humor. Monty Python meets tech.
|
|
118
|
+
|
|
119
|
+
> "In a world where developers spend more time configuring CI/CD than actual development, one tool dared to ask: what if we just... didn't? What if the computer figured it out itself? Critics called it 'lazy.' We call it 'AI.'"
|
|
120
|
+
|
|
121
|
+
**Tone rules:**
|
|
122
|
+
- Dramatic movie trailer narration for mundane things
|
|
123
|
+
- Personifying config files and pipelines
|
|
124
|
+
- Unexpected philosophical tangents
|
|
125
|
+
- "Brought to you by the letters Y, A, M, and L"
|
|
126
|
+
|
|
127
|
+
## Auto-Publish
|
|
128
|
+
|
|
129
|
+
Set `DEV_TO_API_KEY` in your `.env` file. Get one at https://dev.to/settings/extensions
|
|
130
|
+
|
|
131
|
+
The skill will:
|
|
132
|
+
1. Generate the article in your chosen style
|
|
133
|
+
2. Publish it to Dev.to via API
|
|
134
|
+
3. Return the published URL
|
|
135
|
+
4. Generate social media snippets for Twitter/LinkedIn
|
|
136
|
+
|
|
137
|
+
## Examples
|
|
138
|
+
|
|
139
|
+
```bash
|
|
140
|
+
# Curb style about your CI/CD tool
|
|
141
|
+
/devto-publish --product_name PushCI --domain pushci.dev \
|
|
142
|
+
--style curb --topic "why YAML is dead"
|
|
143
|
+
|
|
144
|
+
# Seinfeld style about your database tool
|
|
145
|
+
/devto-publish --product_name MyDB --domain mydb.io \
|
|
146
|
+
--style seinfeld --topic "what's the deal with database migrations"
|
|
147
|
+
|
|
148
|
+
# The Office style product launch
|
|
149
|
+
/devto-publish --product_name TeamApp --domain teamapp.com \
|
|
150
|
+
--style office --topic "we built a project management tool"
|
|
151
|
+
|
|
152
|
+
# Silicon Valley VC pitch energy
|
|
153
|
+
/devto-publish --product_name CloudThing --domain cloudthing.io \
|
|
154
|
+
--style silicon-valley --topic "disrupting the monitoring space"
|
|
155
|
+
|
|
156
|
+
# Straight technical comparison
|
|
157
|
+
/devto-publish --product_name MyTool --domain mytool.dev \
|
|
158
|
+
--style straight --topic "comparing MyTool vs Datadog"
|
|
159
|
+
|
|
160
|
+
# Just generate, don't publish
|
|
161
|
+
/devto-publish --product_name MyApp --domain myapp.com \
|
|
162
|
+
--style curb --topic "why our tool exists" --publish false
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
## Vibe-Coding Era Energy
|
|
166
|
+
|
|
167
|
+
All comedy styles lean into the vibe-coding reality:
|
|
168
|
+
- Nobody writes code anymore, AI does
|
|
169
|
+
- But we're still writing YAML configs by hand??
|
|
170
|
+
- The cognitive dissonance of 2026 dev workflows
|
|
171
|
+
- Claude builds your app but you manually configure CI
|
|
172
|
+
- "The AI writes your code. YOU write the YAML that tests it."
|