Token导航 LogoToken导航TokenDH.com
研究检索操作浏览器github未标认证来源可访问许可证需确认审计异常

ship-page船舶页面

Agent Skill

ship-page 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

259

周安装

11

GitHub Stars

7

下载量

91
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:ship-page(船舶页面)
来源仓库:https://github.com/zooeyii/ship-page-skill
仓库路径:skills/ship-page
安装命令:
npx skills add https://github.com/zooeyii/ship-page-skill --skill ship-page
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/zooeyii/ship-page-skill --skill ship-page

简介

ship-page 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。

  • 它可结合来源仓库、安装命令和原始 README 继续核验具体用法。
  • 安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。
  • 适用于研究检索类任务,通过 npx skills add 命令从指定 GitHub 仓库安装。
  • ship-page 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Ship Page

Create interactive, animation-rich landing pages that run entirely in the browser as a single HTML file.

This skill helps non-designers ship professional product pages through visual exploration ("show, don't tell"), then generates production-quality landing pages with real interactivity — not static mockups.

Core Principles

  • Zero Dependencies — Single HTML file with inline CSS/JS. No npm, no build tools, no frameworks. A single HTML file will outlive any React project.
  • Show, Don't Tell — People can't describe what they want, but they know it when they see it. Generate visual previews, let them pick.
  • Anti-AI-Slop — No purple gradients on white. No generic SaaS templates. Every page should feel custom-crafted for the product.
  • Interactive by Default — Landing pages aren't slides. They have scroll animations, hover states, data counters, particle effects, and micro-interactions that make visitors stay.
  • Ship-Ready — Output works immediately. Drop the HTML file anywhere — GitHub Pages, Vercel, Netlify, or just open it in a browser.

Detect Mode

  • Mode A: New Page — Create from scratch. Go to Phase 1.
  • Mode B: README Conversion — Turn a GitHub README or product description into a landing page. Extract content, then go to Phase 1 Step 2 (skip content questions, go straight to style).
  • Mode C: Enhancement — Improve an existing HTML landing page. Read it, understand the structure, enhance while preserving content. Follow viewport and section density rules.

Phase 1: Discovery

Understand the product and gather content. Ask ALL questions in a single AskUserQuestion call.

Question 1 — Product Type (header: "Product"): What are you building? Options: SaaS / Developer Tool / Mobile App / Open Source Project / Personal Brand / Other

Question 2 — Content (header: "Content"): What should the page include? Options: I'll paste my content / Pull from my README / Just describe it for me / I have a document

Question 3 — Key Sections (header: "Sections", multiSelect: true): Which sections do you need? Options: Hero with CTA / Features Grid / How It Works / Pricing / Testimonials / FAQ / Stats & Metrics / Newsletter Signup / GitHub Stars Badge

Question 4 — Launch Target (header: "Launch"): Where will this page live? Options: GitHub Pages / Standalone website / Product Hunt launch / Just exploring

If user provides content (README, description, document), proceed to:

Step 1.1: Content Analysis

Parse the provided content and extract:

  • Product name and one-line description
  • Key features (aim for 3-6)
  • Target audience signals
  • Any metrics/numbers mentioned
  • Call-to-action (what should visitors do?)

Confirm via AskUserQuestion (header: "Content Check"): "Here's what I extracted — does this look right?" Options: Looks good / Let me adjust


Phase 2: Style Discovery

This is the "show, don't tell" phase. Most people can't articulate design preferences in words.

Step 2.1: Vibe Selection

Ask via AskUserQuestion (header: "Vibe", multiSelect: true, max 2): What feeling should visitors get? Options: Futuristic & Tech / Clean & Minimal / Bold & Energetic / Dark & Premium / Playful & Creative / Corporate & Trust

Step 2.2: Generate Style Previews

Based on vibe selection, generate 3 distinct single-section HTML previews showing:

  • Typography choices (heading + body font pairing)
  • Color palette (background, text, accent, CTA)
  • Hero section layout with the product name
  • One micro-interaction or animation
  • Overall atmosphere (background treatment, spacing)

Each preview should be a complete, working HTML file showing just the hero section styled three completely different ways. Save previews to .ship-page/previews/.

Read references/STYLE_PRESETS.md for curated preset definitions. Use presets as a FOUNDATION, then customize for the specific product.

Confirm via AskUserQuestion (header: "Pick Your Style"): "Which direction resonates?" Options: Style A / Style B / Style C / Mix elements (describe)

Step 2.3: Direct Preset Selection (Alternative)

If user already knows what they want or says "just make it dark/minimal/tech":

  • Read references/STYLE_PRESETS.md
  • Match to nearest preset
  • Skip preview generation, go to Phase 3

Phase 3: Generate Landing Page

Generate the full landing page using content from Phase 1 and style from Phase 2.

Structure Rules

Every landing page follows this architecture:

<!DOCTYPE html>
<html lang="en">
<head>
  <!-- Fonts, CSS variables, all styles inline -->
  <!-- No external dependencies except Google Fonts + Font Awesome CDN -->
</head>
<body>
  <nav><!-- Sticky nav with product name + CTA --></nav>

  <section class="hero"><!-- Above the fold: headline, subheadline, CTA --></section>
  <section class="features"><!-- Feature grid or showcase --></section>
  <section class="social-proof"><!-- Stats, testimonials, logos --></section>
  <!-- ... additional sections as needed ... -->
  <section class="cta-final"><!-- Final call to action --></section>
  <footer><!-- Links, copyright --></footer>

  <script>
    // Scroll animations, counters, interactions — all inline
  </script>
</body>
</html>

Mandatory Technical Requirements

  1. Viewport Fitting — Each section should feel "full" but never overflow. Use min-height: 100vh for hero, proportional heights for others.
  2. Responsive — Must work on mobile. Use clamp() for all font sizes, viewport-relative units for spacing.
  3. Scroll Animations — Use IntersectionObserver for reveal-on-scroll. Elements should animate in as user scrolls.
  4. Performance — CSS animations preferred over JS. will-change on animated elements. Debounce scroll handlers.
  5. Accessible — Semantic HTML, sufficient contrast, prefers-reduced-motion media query for all animations.

Section Density Limits

Per section (to prevent overcrowding):

  • Hero: 1 headline (max 8 words), 1 subheadline (max 20 words), 1-2 CTAs, optional background effect
  • Features: Max 6 cards. Each card: icon + title (3-4 words) + description (max 15 words)
  • Stats/Metrics: Max 4 counters
  • Testimonials: Max 3 quotes
  • Pricing: Max 3 tiers
  • FAQ: Max 6 items (use accordion/collapse)

Too much content for one section? Split into two sections with a visual break between them.

CSS Architecture

:root {
  /* Typography — always use clamp() */
  --font-display: 'YOUR_CHOICE', sans-serif;
  --font-body: 'YOUR_CHOICE', sans-serif;
  --heading-size: clamp(2rem, 5vw, 4.5rem);
  --body-size: clamp(0.875rem, 1.5vw, 1.125rem);

  /* Colors — define full palette */
  --bg-primary: #...;
  --bg-secondary: #...;
  --text-primary: #...;
  --text-secondary: #...;
  --accent: #...;
  --accent-hover: #...;
  --cta-gradient: linear-gradient(...);

  /* Spacing */
  --section-padding: clamp(3rem, 8vw, 8rem);
  --content-width: min(90vw, 1200px);

  /* Animation */
  --transition-fast: 0.3s ease;
  --transition-smooth: 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

/* Scroll reveal base class */
.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity var(--transition-smooth), transform var(--transition-smooth);
}
.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
}

JavaScript Essentials

Always include these patterns:

// Scroll reveal with IntersectionObserver
const observer = new IntersectionObserver((entries) => {
  entries.forEach(entry => {
    if (entry.isIntersecting) {
      entry.target.classList.add('visible');
    }
  });
}, { threshold: 0.1 });

document.querySelectorAll('.reveal').forEach(el => observer.observe(el));

// Animated counters (for stats sections)
function animateCounter(el, target, duration = 2000) { ... }

// Smooth scroll for nav links
document.querySelectorAll('a[href^="#"]').forEach(anchor => { ... });

Read references/SECTION_LIBRARY.md for complete section templates with HTML, CSS, and JS patterns for each section type.

Anti-AI-Slop Checklist

Before generating, verify:

  • Fonts are NOT Inter, Roboto, Arial, or system defaults
  • Color scheme is NOT purple-gradient-on-white
  • Hero doesn't use the word "Revolutionize" or "Supercharge"
  • CTA buttons have hover animations, not just color change
  • Background has texture/depth — NOT flat solid color
  • At least one unexpected design choice (asymmetric layout, bold typography, creative section divider)

Delivery

  1. Save the HTML file with a descriptive name: {product-name}-landing.html
  2. Open in browser: open {product-name}-landing.html
  3. Present to user and ask for feedback

Phase 4: Iteration

After initial generation, ask via AskUserQuestion (header: "Feedback"): "How does it look?" Options: Ship it! / Adjust colors-fonts / Change layout / Add-remove sections / Start over with new style

For modifications, follow these rules:

  • Adding content: Check section density limits first. If exceeded, split sections.
  • Changing style: Update CSS variables, don't rewrite structure.
  • Adding sections: Read references/SECTION_LIBRARY.md for the section template, insert in logical order.
  • Removing sections: Delete cleanly, check that no JS references break.

References (Progressive Disclosure)

This skill uses progressive disclosure — load reference files only when needed:

FileWhen to readWhat it contains
references/STYLE_PRESETS.mdPhase 2 (style discovery)5 curated style presets with full CSS variables, font pairings, and background treatments
references/SECTION_LIBRARY.mdPhase 3 (generation)Complete HTML/CSS/JS templates for every section type (hero, features, pricing, etc.)

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

37.32%
按下载量换算34

Claude

28.71%
按下载量换算26

Cursor

19.91%
按下载量换算18

Gemini CLI

9.84%
按下载量换算9

安全审计

Gen Agent Trust Hub

通过

Socket

未通过

Snyk

可疑

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills