/start-1-1.en
Lesson command
$ npx -y skills add minicoohei/ai-agent-camp --agent claude-codeHow it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/start-1-1.en
Context preview
What this command does when you run it.
Lesson command
Command definition
start-1-1.en.mddescription: "Lesson command"
chapter: "courses/aiagent/lesson03-core/module01-banner"
duration: "~30 min"
prerequisites: ["start-0-3"]
level: "beginner"
tags: ["banner", "image", "gemini"]
nonInteractiveMode: deferred
๐ Lesson 1-1: Introduction to Banner Generation
๐ What You'll Do
Welcome to **Lesson 1-1: Introduction to Banner Generation**!
| Item | Details | |------|---------| | Goal | Create one X post banner using the banner-creator skill | | Duration | ~30 min | | Skills Used | banner-creator (Gemini Image Generation API) | | Prerequisites | Gemini API key configured, Python environment set up | | Course Page | Refer to [Module 1: Banner & Image Generation](https://ai-agent.camp/en/course/module-1) in parallel |
**Session flow:** 1. Understand X post banner sizes 2. Generate your first banner 3. Practice with 3 different topics
By the end of this session, your generated banner images will be saved in the outputs folder.
> **๐ก Hint**: If the AI response stops midway, type "please continue" or "it stopped" to resume. This is a Cursor behavior, not a malfunction.
---
๐ฏ Readiness Check
Let's verify that everything is ready.
**AskQuestion configuration:**
{
"title": "๐ฏ Pre-Session Check",
"questions": [{
"id": "readiness",
"prompt": "Are you ready?",
"options": [
{"id": "ready", "label": "Ready! Let's start"},
{"id": "check_prereq", "label": "Check prerequisites"},
{"id": "view_html", "label": "View the course page first"},
{"id": "different_lesson", "label": "Go to a different lesson"}
]
}]
}(ready โ Go to Step 1) (check_prereq โ Run prerequisite check) (view_html โ Show course page path) (different_lesson โ Show module list)
---
๐ Step 1: Understand X Post Banner Sizes
Use AskUserQuestion (AskQuestion) to choose "Continue / Just review examples / Skip."
**AskQuestion configuration example:**
{
"title": "๐ Step 1: Understand X Post Banner Sizes",
"questions": [{
"id": "step_action",
"prompt": "What would you like to do with this step?",
"options": [
{"id": "practice", "label": "Continue"},
{"id": "review", "label": "Just review examples"},
{"id": "skip", "label": "Skip"}
]
}]
}**After selection (example)**: Input:
Tell me the recommended sizes for X (Twitter) post banners and the differences in image sizes across social media platforms.
**Expected result**: The recommended size for X posts (1200x675px, 16:9) and differences from other platforms are explained.
---
๐ Step 2: Generate Your First Banner
Use AskUserQuestion (AskQuestion) to choose "Continue / Just review examples / Skip."
**AskQuestion configuration example:**
{
"title": "๐ Step 2: Generate Your First Banner",
"questions": [{
"id": "step_action",
"prompt": "What would you like to do with this step?",
"options": [
{"id": "practice", "label": "Continue"},
{"id": "review", "label": "Just review examples"},
{"id": "skip", "label": "Skip"}
]
}]
}**After selection (example)**: Input:
Use banner-creator to create a banner for X posts.
Topic: "Boosting Business Efficiency with AI"
Style: Modern, business-oriented
Output: docs/generated/banners/banner-1-1.png
**Expected result**: A banner image is generated in the `docs/generated/banners/` folder.
---
๐ Step 3: Practice with Different Topics
Create banners with different topics using the following prompts:
Use AskUserQuestion (AskQuestion) to choose "Continue / Just review examples / Skip."
**AskQuestion configuration example:**
{
"title": "๐ Step 3: Practice with Different Topics",
"questions": [{
"id": "step_action",
"prompt": "What would you like to do with this step?",
"options": [
{"id": "practice", "label": "Continue"},
{"id": "review", "label": "Just review examples"},
{"id": "skip", "label": "Skip"}
]
}]
}**After selection (example)**: Input:
Create X post banners for the following 3 topics:
1. "Weekend-Only Sale Now On"
2. "New Service Launch Campaign"
3. "We're Hiring: Engineers Wanted"
Save each with a different file name.
**Expected result**: Three different banners are generated, with designs varying by topic.
---
โ ๏ธ Common Issues and Solutions
Use AskUserQuestion (AskQuestion) to select your issue and get guided assistance.
**AskQuestion configuration example:**
{
"title": "Select Your Issue",
"questions": [{
"id": "trouble",
"prompt": "Select the issue that applies",
"options": [
{"id": "trouble_1", "label": "\"Module not found\" error"},
{"id": "trouble_2", "label": "Image is not generated"},
{"id": "trouble_3", "label": "Not happy with the design"},
{"id": "trouble_4", "label": "API error occurs"}
]
}]
}Issue 1: "Module not found" error
**Cause**: Required Python packages are not installed **Solution prompt**:
Install the packages required to run banner-creator.
Run `uv add pillow requests`.
Issue 2: "Image is not generated"
**Cause**: Output directory does not exist or permission issue **Solution prompt**:
Check if the docs/generated/banners/ directory exists, and create it if it doesn't.
Issue 3: "Not happy with the design"
**Cause**: Topic description is too abstract **Solution prompt**:
Regenerate with a more specific topic:
"Boosting Business Efficiency with AI" โ "Automate 80% of customer inquiries with an AI chatbot"
Issue 4: "API error occurs"
**Cause**: Gemini API key is not set or rate limit reached **Solution prompt**:
Verify that the Gemini API key is correctly configured.
Check whether the environment variable GEMINI_API_KEY is set (not empty).
* For security, do not display the actual key value.
---
โ
Checkpoint
- [ ] Understood the recommended sizes for X post banners
- [ ] Successfully generated a banner using banner-creator
Read more
description: "Lesson command" chapter: "courses/aiagent/lesson03-core/module01-banner" duration: "~30 min" prerequisites: ["start-0-3"] level: "beginner" tags: ["banner", "image", "gemini"] nonInteractiveMode: deferred
๐ Lesson 1-1: Introduction to Banner Generation
๐ What You'll Do
Welcome to **Lesson 1-1: Introduction to Banner Generation**!
| Item | Details | |------|---------| | Goal | Create one X post banner using the banner-creator skill | | Duration | ~30 min | | Skills Used | banner-creator (Gemini Image Generation API) | | Prerequisites | Gemini API key configured, Python environment set up | | Course Page | Refer to [Module 1: Banner & Image Generation](https://ai-agent.camp/en/course/module-1) in parallel |
**Session flow:** 1. Understand X post banner sizes 2. Generate your first banner 3. Practice with 3 different topics
By the end of this session, your generated banner images will be saved in the outputs folder.
> **๐ก Hint**: If the AI response stops midway, type "please continue" or "it stopped" to resume. This is a Cursor behavior, not a malfunction.
---
๐ฏ Readiness Check
Let's verify that everything is ready.
**AskQuestion configuration:**
{
"title": "๐ฏ Pre-Session Check",
"questions": [{
"id": "readiness",
"prompt": "Are you ready?",
"options": [
{"id": "ready", "label": "Ready! Let's start"},
{"id": "check_prereq", "label": "Check prerequisites"},
{"id": "view_html", "label": "View the course page first"},
{"id": "different_lesson", "label": "Go to a different lesson"}
]
}]
}(ready โ Go to Step 1) (check_prereq โ Run prerequisite check) (view_html โ Show course page path) (different_lesson โ Show module list)
---
๐ Step 1: Understand X Post Banner Sizes
Use AskUserQuestion (AskQuestion) to choose "Continue / Just review examples / Skip."
**AskQuestion configuration example:**
{
"title": "๐ Step 1: Understand X Post Banner Sizes",
"questions": [{
"id": "step_action",
"prompt": "What would you like to do with this step?",
"options": [
{"id": "practice", "label": "Continue"},
{"id": "review", "label": "Just review examples"},
{"id": "skip", "label": "Skip"}
]
}]
}**After selection (example)**: Input:
Tell me the recommended sizes for X (Twitter) post banners and the differences in image sizes across social media platforms.
**Expected result**: The recommended size for X posts (1200x675px, 16:9) and differences from other platforms are explained.
---
๐ Step 2: Generate Your First Banner
Use AskUserQuestion (AskQuestion) to choose "Continue / Just review examples / Skip."
**AskQuestion configuration example:**
{
"title": "๐ Step 2: Generate Your First Banner",
"questions": [{
"id": "step_action",
"prompt": "What would you like to do with this step?",
"options": [
{"id": "practice", "label": "Continue"},
{"id": "review", "label": "Just review examples"},
{"id": "skip", "label": "Skip"}
]
}]
}**After selection (example)**: Input:
Use banner-creator to create a banner for X posts. Topic: "Boosting Business Efficiency with AI" Style: Modern, business-oriented Output: docs/generated/banners/banner-1-1.png
**Expected result**: A banner image is generated in the `docs/generated/banners/` folder.
---
๐ Step 3: Practice with Different Topics
Create banners with different topics using the following prompts:
Use AskUserQuestion (AskQuestion) to choose "Continue / Just review examples / Skip."
**AskQuestion configuration example:**
{
"title": "๐ Step 3: Practice with Different Topics",
"questions": [{
"id": "step_action",
"prompt": "What would you like to do with this step?",
"options": [
{"id": "practice", "label": "Continue"},
{"id": "review", "label": "Just review examples"},
{"id": "skip", "label": "Skip"}
]
}]
}**After selection (example)**: Input:
Create X post banners for the following 3 topics: 1. "Weekend-Only Sale Now On" 2. "New Service Launch Campaign" 3. "We're Hiring: Engineers Wanted" Save each with a different file name.
**Expected result**: Three different banners are generated, with designs varying by topic.
---
โ ๏ธ Common Issues and Solutions
Use AskUserQuestion (AskQuestion) to select your issue and get guided assistance.
**AskQuestion configuration example:**
{
"title": "Select Your Issue",
"questions": [{
"id": "trouble",
"prompt": "Select the issue that applies",
"options": [
{"id": "trouble_1", "label": "\"Module not found\" error"},
{"id": "trouble_2", "label": "Image is not generated"},
{"id": "trouble_3", "label": "Not happy with the design"},
{"id": "trouble_4", "label": "API error occurs"}
]
}]
}Issue 1: "Module not found" error
**Cause**: Required Python packages are not installed **Solution prompt**:
Install the packages required to run banner-creator. Run `uv add pillow requests`.
Issue 2: "Image is not generated"
**Cause**: Output directory does not exist or permission issue **Solution prompt**:
Check if the docs/generated/banners/ directory exists, and create it if it doesn't.
Issue 3: "Not happy with the design"
**Cause**: Topic description is too abstract **Solution prompt**:
Regenerate with a more specific topic: "Boosting Business Efficiency with AI" โ "Automate 80% of customer inquiries with an AI chatbot"
Issue 4: "API error occurs"
**Cause**: Gemini API key is not set or rate limit reached **Solution prompt**:
Verify that the Gemini API key is correctly configured. Check whether the environment variable GEMINI_API_KEY is set (not empty). * For security, do not display the actual key value.
---
โ Checkpoint
- [ ] Understood the recommended sizes for X post banners
- [ ] Successfully generated a banner using banner-creator
AI Agent Training for Non-Engineers - Complete Guide to Claude Code / Cursor / Codex ### โ ๏ธ Before you clone Official repository (maintained by the authors): Running AI agents from this repo grants them shell, file-write, and external-API permissions on your
Other commands on ai-agent-camp.
- /check-setup.en
Top-level alias โ see lesson/check-setup.en.md for the full body.
Open command - /check-setup.es
Alias de nivel superior โ el cuerpo completo estรก en lesson/check-setup.es.md.
Open command - /check-setup
Top-level alias โ see lesson/check-setup.md for the full body.
Open command - /check-security.en
Lesson command
Open command - /check-security.es
Lesson command
Open command - /check-security
Lesson command
Open command

