springboot-verification
Verification loop for Spring Boot projects: build, static analysis, tests with coverage, security scans, and diff review before release or PR.
- License 许可
- Apache-2.0
- 最近更新
- 2026-11-08
- Stars
- ★ 0
- Forks
- 0
01 前言 Front Matter
- name
- hp-plan
- description
- Interactively define pages and sections for a homepage project, then generate page plans.
- allowed-tools
- Read, Write, Edit, Glob, Grep, Bash, Agent
- argument-hint
- [page-name]
- user-invocable
- true
03 SKILL.md 正文
Page Planning Skill (Interactive Definition)
Interactively gathers page and section definitions from the user, then launches the page-planner agent to produce structured plans.
Pages and sections are NOT predefined — this skill collects definitions through conversation.
Instructions
Step 0: Read Configuration
Read .claude/homepage-plugin.json. If not found, instruct the user to run /homepage-plugin:hp-init first and exit.
Read defaultLocale — all user-facing output must be in this language.
Step 1: Check Existing Plans
Scan docs/pages/*/page-plan.json for existing page plans. If plans exist, show the current page list and ask if the user wants to:
- Add a new page — continue to Step 2 with the new page only
- Replace all — clear existing plans and start fresh
- Edit a specific page — re-plan one page
If the user provides a [page-name] argument, plan only that page (skip to Step 4 for that page).
Step 2: Site Purpose
Ask: "What kind of site is this?"
Suggestions:
- Company homepage
- Product/service landing page
- Portfolio/showcase
- Corporate/enterprise site
- Startup landing page
The answer influences default page suggestions in Step 3.
Step 3: Page Definition
Ask: "What pages do you need?"
Suggest defaults based on site purpose:
- Company homepage: Home, About, Services, Contact, Blog
- Product landing: Home, Features, Pricing, FAQ, Contact
- Portfolio: Home, Work, About, Contact
- Corporate: Home, About, Services, Team, Careers, Contact, Blog
The user can add, remove, or rename pages. Confirm the final page list.
Step 4: Per-Page Section Definition
For each page, ask: "What content should this page show?"
The user describes content in natural language. Examples:
- "메인 슬로건과 CTA 버튼, 핵심 서비스 3개, 고객 후기, 상담 신청 유도"
- "Hero with company vision, timeline of our history, team member cards, partner logos"
Match descriptions to the section catalog (15 canonical types from templates/section-catalog.md):
| User Description | Matched Section |
|---|---|
| 메인 슬로건, hero, banner | HeroSection |
| 서비스 소개, features, 핵심 기능 | FeaturesSection |
| 고객 후기, testimonials, 리뷰 | TestimonialsSection |
| CTA, 상담 신청, 문의 유도 | CTASection |
| 가격, pricing, 요금제 | PricingSection |
| FAQ, 자주 묻는 질문 | FAQSection |
| 실적, 수치, stats | StatsSection |
| 파트너, 로고, clients | LogoCloudSection |
| 뉴스레터, 구독 | NewsletterSection |
| 문의 폼, contact form | ContactSection |
| 팀 소개, team | TeamSection |
| 연혁, timeline, history | TimelineSection |
| 갤러리, gallery, 포트폴리오 | GallerySection |
Propose the matched sections with order. The user can:
- Confirm the composition
- Reorder sections
- Add custom sections (describe what they need)
- Remove sections
Display the proposed composition:
┌─ Home Page ──────────────────────────────────┐
│ 1. HeroSection — Main slogan + CTA │
│ 2. FeaturesSection — 3 core services │
│ 3. StatsSection — Performance metrics │
│ 4. TestimonialsSection — Customer reviews │
│ 5. CTASection — Consultation CTA │
└──────────────────────────────────────────────┘
Step 5: Shared Layout Definition
5.1 Check for Figma-Extracted Layout
Read docs/pages/_shared/layout-plan.json if it exists.
If the file exists and contains _figmaSource.populated === true, the layout was pre-populated from Figma by hp-design-sync. Display the pre-populated layout to the user:
Layout pre-populated from Figma design:
Header:
Logo: [extracted from Figma] ✓
Nav items: Home, About, Services, Contact
CTA: "Get Started"
Footer:
Description: "Company tagline"
Link groups: Product (4 links), Company (3 links)
Social: Twitter, LinkedIn, GitHub
Copyright: 2026
Ask the user to choose:
- Use as-is — keep the Figma-extracted layout without changes
- Modify — edit specific parts (nav items, links, social media URLs, etc.) while keeping the overall structure
- Start fresh — discard the Figma-extracted layout and define from scratch
- If Use as-is: skip to Step 6 (no further layout questions)
- If Modify: present each section (header, footer) for editing. Pre-fill all fields with the Figma-extracted values. The user can:
- Change nav item labels and add real href values (Figma-extracted hrefs are placeholders)
- Add or remove nav items
- Edit footer link groups, add/remove links
- Add real social media URLs (Figma-extracted are
"#"placeholders) - Change company name and description
- Write the modified layout plan back to
docs/pages/_shared/layout-plan.json, preserving_figmaSourcemetadata
- If Start fresh: proceed to Step 5.2
5.2 Manual Layout Definition
If no Figma-extracted layout exists, or the user chose "Start fresh":
Ask: "How should the header and footer be structured?"
Gather:
- Header: logo, navigation menu items, optional CTA button, mobile nav toggle
- Footer: column structure, links, social media icons, copyright text
Write the layout plan to docs/pages/_shared/layout-plan.json.
Step 6: Figma Reference (Optional)
Ask: "Do you have a Figma design for reference? (screenshot path or URL — optional)"
- If provided as a file path: the page-planner agent will analyze the image
- If provided as a URL: note for reference (no auto-fetch)
- If skipped: proceed with description-based planning
Step 7: Launch Page Planner
For each page defined, launch the page-planner agent with:
pageName— page identifierpageDescription— user's descriptionsections— matched section list with descriptionsfigmaRef— Figma reference (if provided)layoutPlan— path to layout planprojectRoot— project rootoutputFile—docs/pages/{page-name}/page-plan.jsonconfig— homepage-plugin configuration
Create progress file at docs/pages/{page-name}/.progress/{page-name}.json:
{
"page": "{page-name}",
"implementation": {
"status": "planned",
"plannedAt": "{ISO timestamp}"
}
}
Step 8: Display Summary
Show:
- Total pages planned
- Sections per page
- Shared sections (reused across pages)
- Interactive islands identified
- Next step: "Run
/homepage-plugin:hp-gento generate code."
If planning a single page: "Run /homepage-plugin:hp-gen {page-name} to generate this page."
Communication Language
Read defaultLocale from .claude/homepage-plugin.json:
ko→ All questions, suggestions, and summaries in Koreanen→ All in Englishvi→ All in Vietnamese
04 同仓库更多 Skills
remotion-video-creation
Best practices for Remotion - Video creation in React. 29 domain-specific rules covering 3D, animations, audio, captions, charts, transitions, and more.
hotcook-recipes
暂无简介
code-helper
Code review and assistance skill
research-assistant
Web research assistant skill using Brave Search MCP
x-api
X/Twitter API integration for posting tweets, threads, reading timelines, search, and analytics. Covers OAuth auth patterns, rate limits, and platform-native content posting. Use when the user wants to interact with X programmatically.
workspace-surface-audit
Audit the active repo, MCP servers, plugins, connectors, env surfaces, and harness setup, then recommend the highest-value ECC-native skills, hooks, agents, and operator workflows. Use when the user wants help setting up Claude Code or understanding what capabilities are actually available in their environment.