skills/89jobrien/command-optimization/SKILL.md
CLI command development specialist. Use when creating commands, designing argument parsing, automating tasks, or implementing CLI best practices. Specializes in command design patterns and user experience.
npx skillsauth add aiskillstore/marketplace command-optimizationInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This skill specializes in creating, designing, and optimizing command-line interfaces. It focuses on command design patterns, argument parsing, task automation, and CLI best practices.
Create a command to generate React components
Design a CLI command for database migrations
Improve the user experience of this command
Structure:
Example:
# Good: Clear and actionable
npm run generate:component UserProfile
# Bad: Unclear purpose
npm run make UserProfile
Structure:
Example:
# Good: Clear analysis command
npm run analyze:dependencies -- --outdated
# Bad: Vague command
npm run check
Pattern:
Example:
# Single file
lint src/utils.js
# Directory
lint src/
# Glob pattern
lint "src/**/*.js"
Common Options:
--config: Custom configuration file--output: Output directory or format--verbose: Detailed logging--dry-run: Preview without execution--force: Override safety checksCheck:
Good Error Messages:
Example:
# Good
Error: Configuration file not found: .eslintrc.json
Run 'npm run init:config' to create it.
# Bad
Error: File not found
Input: Create a command to generate React components
Output:
## Command: generate:component
### Usage
```bash
npm run generate:component ComponentName [options]
--path <path>: Output path (default: src/components)--type <type>: Component type (functional|class) (default: functional)--with-tests: Generate test file--with-styles: Generate stylesheet# Basic component
npm run generate:component UserCard
# With options
npm run generate:component UserCard --path src/features/users --with-tests --with-styles
// scripts/generate-component.js
const componentName = process.argv[2];
const options = parseArgs(process.argv.slice(3));
if (!componentName) {
console.error('Error: Component name required');
console.log('Usage: npm run generate:component <Name>');
process.exit(1);
}
generateComponent(componentName, options);
Input: Create a database migration command
Output:
## Command: db:migrate
### Usage
```bash
npm run db:migrate [migration-name] [options]
--create <table>: Create new migration for table--rollback: Rollback last migration--status: Show migration status--to <version>: Migrate to specific version# Create migration
npm run db:migrate --create users
# Run migrations
npm run db:migrate
# Check status
npm run db:migrate --status
# Rollback
npm run db:migrate --rollback
## Reference Files
- **`references/SLASH_COMMAND.template.md`** - Slash command template with frontmatter, dynamic context, and workflow structure
## Best Practices
### Command Design
1. **Clear Names**: Use descriptive, action-oriented names
2. **Consistent Patterns**: Follow project conventions
3. **Helpful Defaults**: Sensible defaults for common use cases
4. **Good Feedback**: Clear output and progress indicators
5. **Error Handling**: Graceful failure with helpful messages
### User Experience
- **Progressive Disclosure**: Show basic usage, advanced options in help
- **Validation**: Validate inputs early with clear errors
- **Confirmation**: Ask for confirmation on destructive operations
- **Dry Run**: Support --dry-run for preview
- **Verbose Mode**: --verbose for detailed output
### Documentation
- **Help Text**: Clear, concise help for each command
- **Examples**: Include practical examples
- **Error Messages**: Explain what went wrong and how to fix
- **README**: Document commands in project README
## Related Use Cases
- Creating project-specific commands
- Automating development tasks
- Building CLI tools
- Improving command usability
- Standardizing command patterns
development
Apple Human Interface Guidelines for content display components. Use this skill when the user asks about charts component, collection view, image view, web view, color well, image well, activity view, lockup, data visualization, content display, displaying images, rendering web content, color pickers, or presenting collections of items in Apple apps. Also use when the user says how should I display charts, what's the best way to show images, should I use a web view, how do I build a grid of items, what component shows media, or how do I present a share sheet. Cross-references: hig-foundations for color/typography/accessibility, hig-patterns for data visualization patterns, hig-components-layout for structural containers, hig-platforms for platform-specific component behavior.
tools
Automate HelpDesk tasks via Rube MCP (Composio): list tickets, manage views, use canned responses, and configure custom fields. Always search tools first for current schemas.
testing
Expert Haskell engineer specializing in advanced type systems, pure functional design, and high-reliability software. Use PROACTIVELY for type-level programming, concurrency, and architecture guidance.
tools
GraphQL gives clients exactly the data they need - no more, no less. One endpoint, typed schema, introspection. But the flexibility that makes it powerful also makes it dangerous. Without proper controls, clients can craft queries that bring down your server. This skill covers schema design, resolvers, DataLoader for N+1 prevention, federation for microservices, and client integration with Apollo/urql. Key insight: GraphQL is a contract. The schema is the API documentation. Design it carefully.