eisland-dev-add-empty-…
Add a new empty subpage (tab) to an existing eIsland settings section with page navigation…
Update or create documentation in the eIsland VuePress docs site (web/eisland-web-docs). Use this skill whenever the user asks to update docs, add documentation, write a doc article, document a feature, update the tech stack docs, update plugin docs, update command docs, or any
$ npx -y skills add JNTMTMTM/eIsland --skill eisland-dev-update-docs --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/eisland-dev-update-docsContext preview
The summary Claude sees to decide when to auto-load this skill.
Update or create documentation in the eIsland VuePress docs site (web/eisland-web-docs). Use this skill whenever the user asks to update docs, add documentation, write a doc article, document a feature, update the tech stack docs, update plugin docs, update command docs, or any
name: eisland-dev-update-docs description: > Update or create documentation in the eIsland VuePress docs site (web/eisland-web-docs). Use this skill whenever the user asks to update docs, add documentation, write a doc article, document a feature, update the tech stack docs, update plugin docs, update command docs, or any task involving files under web/eisland-web-docs/src/. This skill ensures all documentation follows the project's CLAUDE.md constraints, uses correct admonition syntax, maintains consistent style with existing articles, and properly updates sidebar.ts and README.md indexes.
This skill guides documentation updates for the eIsland VuePress docs site located at `web/eisland-web-docs/`.
These rules come from the project's `CLAUDE.md` and must be followed strictly:
1. **Language**: All documentation content must be written in **English**. No Chinese text allowed. 2. **Admonitions**: Every documentation file MUST use admonition syntax. Each file should include at least one admonition block (`:::tip`, `:::info`, `:::note`, `:::important`, `:::warning`, `:::danger`, or `:::details`). Use a variety of admonition types — do not rely on a single type. 3. **Sidebar**: Do NOT register `README.md` files in the sidebar. VuePress automatically uses each subdirectory's `README.md` as the category index page. 4. **Frontmatter**: Every doc file must have YAML frontmatter with `title` and `icon` fields. 5. **Test Statistics**: When documenting test coverage, use accurate numbers from the latest test run: **125 test files**, **2068 tests**. Update these numbers when new test results show different counts.
src/
├── introduction/ # Project introduction and architecture
│ ├── intro/ # Project introduction
│ ├── tech-stack/ # Technology stack
│ ├── frontend-arch/ # Frontend architecture
│ └── backend-arch/ # Backend architecture
└── developer/ # Developer guide
├── environment-setup/ # Environment configuration
├── guides/ # Development workflows
├── standards/ # Coding and documentation standards
├── testing/ # Testing strategies
├── commands/ # npm script reference
└── git-operations/ # Git workflowsFollow these steps in order:
1. Place the file in the appropriate subdirectory under `web/eisland-web-docs/src/` 2. Add the file path to `src/.vuepress/sidebar.ts` under the correct group 3. Add a link to the file in the subdirectory's `README.md` 4. If creating a new subdirectory, create a `README.md` index for it 5. **For API plugin docs**: Register sidebar badge in `src/.vuepress/components/SidebarBadges.vue` if adding Interface, Enum, or Monitor
For documentation under `src/api-plugins/`, follow the guidelines in `src/api-plugins/CLAUDE.md`:
Every documentation file MUST use the correct icon in frontmatter:
| Type | Icon | Example | |------|------|---------| | Function/Method | `fa6-solid:code` | `getIconByPath` | | Interface/Type | `fa6-solid:table` | `BluetoothDeviceInfo` | | Class/Monitor | `fa6-solid:cubes` | `BluetoothMonitor` | | Enum | `fa6-solid:list` | `BatteryStatus` | | Plugin index | Category icon | `bluetooth`, `music`, etc. |
All function/method documentation MUST include both TypeScript and JavaScript code blocks using `::: code-tabs` syntax.
Every function/method document MUST include these sections in this exact order:
1. **Info admonition** — Brief description with internal mechanism and return type 2. **Signature** — TypeScript function signature 3. **Parameters** — Table with Parameter, Type, Description 4. **Usage** — When to use, typical workflow, `:::note` and `:::tip` 5. **Return Value** — Table with Type and Description, `:::warning` 6. **Example** — `::: code-tabs` with TS + JS 7. **Notes** — Exactly 3 admonitions: `:::note`, `:::tip`, `:::important` 8. **Danger Avoidance** — `:::danger` admonition
When adding new Interface, Enum, or Monitor documentation, register the badge in `src/.vuepress/components/SidebarBadges.vue`:
const BADGE_MAP: Record<string, string> = {
YourNewInterface: 'interface',
YourNewEnum: 'enum',
YourNewMonitor: 'monitor',
}Function badges are auto-detected from URL patterns (`get*`, `set*`, `close*`, etc.).
Every new documentation file must follow this template:
--- title: Document Title icon: icon-name --- # Document Title :::info This document covers [brief description of what this document explains]. For related information, see [Related Document](related-doc.md). ::: ## Section Heading Content here with tables, code blocks, and admonitions. :::tip Helpful tips and best practices. ::: :::warning Important notices and cautions. :::
Use tables for structured data — commands, configurations, comparisons, file listings:
| Command | Script | Description | |---------|--------|-------------| | `npm run build` | `vite build` | Build for production |
Always specify the language:
```bash npm run build
const x: string = "hello";
{ "key": "value" }### Admonition Types Use the right admonition for the right context: | Type | Use For | |------|---------| | `:::info` | Document introduction, general explanations | | `:::tip` | Best practices, helpful shortcuts | | `:::note` | Supplementary information, side notes | | `:::important` | Key information users must be aware of | | `:::warning` | Cautions, potential issues, breaking changes | | `:::danger` | Critical security notes, destructive operations | | `:::details
eIsland - A sleek, Apple Dynamic Island inspired floating widget for Windows, built with Electron.
Repo: JNTMTMTM/eIsland
Add a new empty subpage (tab) to an existing eIsland settings section with page navigation…
为 eIsland 灵动岛添加一个新的空白状态机(IslandState)。当用户要求创建新状态、新页面、 新界面(如登录页、设置子页面、独立面板)时使用此…
创建 eIsland 引导配置窗口的新步骤页面。当用户要求在引导界面(Guide)中新增配置步骤、引导页面、引导分页时使用此 skill。 触发关键词:guide…
为 eIsland 灵动岛的 MaxExpand(全展开)模式添加一个新的 Tab 页面。当用户要求创建新的 MaxExpand…
Add a new SVG icon to the project's icon enum system with matching test assertions. Use this…
Generate a release announcement markdown for eIsland. Use this skill whenever the user asks…