mirror of
https://github.com/base44/skills.git
synced 2026-09-14 16:22:01 +08:00
33dd5827e4
The `add-skill` CLI tool has been renamed to `skills`. Updated all references and command examples in `README.md` and `CONTRIBUTING.md` to use the new `skills` command. Specifically: * `npx add-skill` commands are now `npx skills add`
125 lines
3.0 KiB
Markdown
125 lines
3.0 KiB
Markdown
# Contributing
|
|
|
|
Thank you for contributing to Base44 SDK Skills! This guide covers how to create and submit new skills.
|
|
|
|
## Creating a Skill
|
|
|
|
### 1. Start from the Template
|
|
|
|
Copy the template directory to create a new skill:
|
|
|
|
```bash
|
|
cp -r skills/_template skills/.experimental/your-skill-name
|
|
```
|
|
|
|
### 2. Skill Structure
|
|
|
|
Each skill is a directory containing at minimum a `SKILL.md` file:
|
|
|
|
```
|
|
your-skill-name/
|
|
├── SKILL.md # Required: Skill definition
|
|
├── scripts/ # Optional: Automation scripts
|
|
│ └── example.sh
|
|
└── references/ # Optional: Additional documentation
|
|
└── examples.md
|
|
```
|
|
|
|
### 3. SKILL.md Format
|
|
|
|
The `SKILL.md` file requires YAML frontmatter with two required fields:
|
|
|
|
```yaml
|
|
---
|
|
name: your-skill-name
|
|
description: What this skill does and when to use it.
|
|
---
|
|
```
|
|
|
|
#### Required Fields
|
|
|
|
| Field | Description |
|
|
|-------|-------------|
|
|
| `name` | Unique identifier. Lowercase, hyphens allowed. No spaces. |
|
|
| `description` | Brief explanation including trigger phrases for when agents should use this skill. |
|
|
|
|
#### Optional Fields
|
|
|
|
| Field | Description |
|
|
|-------|-------------|
|
|
| `allowed-tools` | List of tools the skill can use |
|
|
|
|
### 4. Recommended Sections
|
|
|
|
Structure your `SKILL.md` with these sections:
|
|
|
|
1. **Title** - `# Skill Name`
|
|
2. **Overview** - Brief description
|
|
3. **When to Use** - Trigger conditions and keywords
|
|
4. **How It Works** - Step-by-step workflow
|
|
5. **Usage** - Code examples
|
|
6. **Parameters** - Input descriptions (if applicable)
|
|
7. **Output** - What the skill produces
|
|
8. **Troubleshooting** - Common issues and solutions
|
|
|
|
## Naming Conventions
|
|
|
|
- Use lowercase with hyphens: `entity-crud`, `auth-setup`
|
|
- Be descriptive but concise
|
|
- Prefix with category when helpful: `base44-entities`, `base44-auth`
|
|
|
|
## Skill Categories
|
|
|
|
### `.curated/`
|
|
|
|
Production-ready skills that are:
|
|
|
|
- Thoroughly tested
|
|
- Well-documented
|
|
- Following all guidelines
|
|
- Reviewed and approved
|
|
|
|
### `.experimental/`
|
|
|
|
Work-in-progress skills that are:
|
|
|
|
- Functional but may have rough edges
|
|
- Still being refined
|
|
- Open for feedback
|
|
|
|
## Testing Your Skill
|
|
|
|
1. Install locally to test:
|
|
|
|
```bash
|
|
# From the repo root
|
|
npx skills add . --skill your-skill-name -a cursor
|
|
```
|
|
|
|
2. Verify the skill loads in your agent
|
|
3. Test with various prompts that should trigger the skill
|
|
4. Check edge cases and error handling
|
|
|
|
## Submitting a Skill
|
|
|
|
1. **Fork** this repository
|
|
2. **Create** your skill in `skills/.experimental/`
|
|
3. **Test** thoroughly with multiple agents
|
|
4. **Submit** a pull request with:
|
|
- Clear description of what the skill does
|
|
- Example use cases
|
|
- Any dependencies or requirements
|
|
|
|
## Code Style
|
|
|
|
- Use clear, descriptive variable names in examples
|
|
- Include comments explaining non-obvious code
|
|
- Prefer modern JavaScript/TypeScript syntax
|
|
- Follow Base44 SDK conventions
|
|
|
|
## Questions?
|
|
|
|
- Check existing skills for examples
|
|
- Review the [Base44 SDK Documentation](https://docs.base44.com)
|
|
- Open an issue for questions or suggestions
|