index
4
总安装量
1
周安装量
#49195
全站排名
安装命令
npx skills add https://github.com/wojons/skills --skill index
Agent 安装分布
amp
1
cline
1
opencode
1
cursor
1
kimi-cli
1
codex
1
Skill 文档
Directory Index System
Maintain directory organization with index files (_index.md, _index.yaml, _index.json) and consistency prompts (_prompt.md) to save context and ensure file consistency across projects.
When to use me
Use this skill when:
- Starting a new project or directory structure
- Onboarding to an existing codebase
- Maintaining consistency across multiple files in a directory
- Documenting directory purpose and contents
- Setting up standards for file creation within directories
- Reducing context switching by providing directory-level guidance
- Creating self-documenting directory structures
What I do
1. Index File Creation & Maintenance
- Create
_indexfiles in directories to document contents and purpose - Support multiple formats: Markdown (default), YAML, or JSON based on project preference
- Track directory contents: List files and subdirectories with brief descriptions
- Document directory purpose: Explain why the directory exists and its role in the project
- Provide navigation guidance: Help users understand how to interact with the directory
2. Consistency Prompt Management
- Create
_prompt.mdfiles to guide file creation within directories - Establish directory-specific standards for naming, formatting, and content
- Provide templates and examples for common file types in the directory
- Maintain consistency across files created by different contributors
- Update prompts as directory standards evolve
3. Context Preservation
- Save directory context to reduce cognitive load when navigating
- Document relationships between files in the directory
- Explain conventions and patterns used within the directory
- Provide entry points for understanding complex directory structures
- Maintain historical context about directory evolution and decisions
4. Navigation Optimization
- Help models choose which directories to explore based on index contents
- Provide quick overviews without needing to examine every file
- Filter irrelevant directories based on documented purposes
- Accelerate understanding of project structure and organization
Index File Formats
Default: Markdown (_index.md)
# Directory: src/components/
## Purpose
Reusable UI components for the application.
## Contents
- **Button/** - Interactive button components
- **Form/** - Form elements and validation components
- **Layout/** - Page layout and structural components
- **Modal/** - Dialog and overlay components
- **Navigation/** - Menu and navigation components
## Conventions
- Use TypeScript with React
- Follow atomic design principles
- Include Storybook stories
- Export via index.ts barrel files
## Related Directories
- `src/styles/` - Component styling
- `src/hooks/` - Custom React hooks
- `src/utils/` - Utility functions
## Last Updated
2024-03-15 - Added new Modal components
YAML Format (_index.yaml)
directory: src/components/
purpose: Reusable UI components for the application
contents:
- name: Button
description: Interactive button components
type: directory
- name: Form
description: Form elements and validation components
type: directory
- name: Layout
description: Page layout and structural components
type: directory
conventions:
- Use TypeScript with React
- Follow atomic design principles
- Include Storybook stories
related:
- src/styles/
- src/hooks/
- src/utils/
last_updated: 2024-03-15
JSON Format (_index.json)
{
"directory": "src/components/",
"purpose": "Reusable UI components for the application",
"contents": [
{
"name": "Button",
"description": "Interactive button components",
"type": "directory"
},
{
"name": "Form",
"description": "Form elements and validation components",
"type": "directory"
}
],
"conventions": [
"Use TypeScript with React",
"Follow atomic design principles",
"Include Storybook stories"
],
"related": [
"src/styles/",
"src/hooks/",
"src/utils/"
],
"last_updated": "2024-03-15"
}
Prompt File Format (_prompt.md)
# File Creation Guidelines: src/components/
## When creating new component files in this directory:
### Naming Convention
- Use PascalCase for component names (e.g., `UserProfile.tsx`)
- Use descriptive names that indicate purpose
- Prefix with directory-specific prefixes if needed
### File Structure
ComponentName.tsx # Main component file ComponentName.styles.ts # Component styles (if separate) ComponentName.stories.tsx # Storybook stories ComponentName.test.tsx # Component tests index.ts # Barrel export
### Content Requirements
- Include PropTypes or TypeScript interfaces
- Add JSDoc comments for public APIs
- Follow the existing component patterns
- Include accessibility attributes (aria-*)
### Import/Export Patterns
- Use named exports for components
- Export types/interfaces separately
- Use barrel files (index.ts) for directory exports
### Testing Requirements
- Write unit tests with React Testing Library
- Include accessibility tests
- Test all user interactions
- Mock external dependencies appropriately
### Styling Guidelines
- Use CSS-in-JS (Emotion) for styling
- Follow design system tokens
- Ensure responsive design
- Maintain accessibility color contrast
### Examples
See `Button/` and `Form/` directories for reference implementations.
Examples
# Create index files for current directory
npm run index:create -- --format markdown
npm run index:create -- --format yaml
npm run index:create -- --format json
# Create index files recursively
npm run index:create -- --recursive --format markdown
# Update existing index files
npm run index:update -- --directory src/components/
# Generate prompt file
npm run index:prompt -- --directory src/components/
# Validate index consistency
npm run index:validate -- --directory .
# Convert between formats
npm run index:convert -- --from markdown --to yaml
# Interactive index creation
npm run index:interactive
# Generate directory tree with indexes
npm run index:tree -- --depth 3
# Check for missing indexes
npm run index:check -- --directory .
Output format
Directory Index Report
ââââââââââââââââââââââââââââââ
Directory: /project/src/components/
Index Files:
â
_index.md - Present and up to date
â
_prompt.md - Present and current
â ï¸ Button/_index.md - Missing prompt file
â Form/_index.md - Stale (last updated 90 days ago)
â
Layout/_index.md - Present and current
Directory Contents:
- Button/ (5 files, 1 subdirectory)
- Form/ (8 files, 2 subdirectories)
- Layout/ (3 files, 0 subdirectories)
- Modal/ (4 files, 1 subdirectory)
- Navigation/ (6 files, 0 subdirectories)
Index Coverage:
- Directories with index: 5/6 (83%)
- Directories with prompt: 4/6 (67%)
- Average index age: 15 days
- Stale indexes (>30 days): 1
Consistency Check:
â
Naming conventions followed
â
File structures consistent
â ï¸ Some missing test files
â
Documentation present
Recommendations:
1. Update Form/_index.md (stale)
2. Add _prompt.md to Button/ directory
3. Consider adding index to Modal/utils/ subdirectory
4. Review test coverage for newer components
Next Actions:
- Run: npm run index:update -- --directory Form/
- Run: npm run index:prompt -- --directory Button/
- Run: npm run index:create -- --directory Modal/utils/
Notes
- Index files should NOT contain detailed contents of subdirectories, only names and general concepts
- Markdown is the default format for readability and ease of editing
- YAML and JSON are available for machine-readable indexes
- Prompt files should be specific to the directory’s purpose and content types
- Indexes should be updated when directory structure or purpose changes significantly
- Balance detail with brevity – indexes should be helpful but not verbose
- Consider version controlling index files alongside code
- Use indexes as living documentation that evolves with the project
- Prompt files help maintain consistency across teams and over time
- The system saves context by documenting directory purpose and relationships