mirror of
https://github.com/OpenClaudia/openclaudia-skills.git
synced 2026-09-19 08:06:49 +08:00
b9ebf27f1f
- Document allowed-tools YAML frontmatter field in CONTRIBUTING.md - Fix install --all cloning repo twice (now clones once and reuses) - Show skill descriptions from YAML frontmatter in list command - Delete merged skill/linkedin-ads branch Closes #3, #4, #5, #6 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
122 lines
4.1 KiB
Markdown
122 lines
4.1 KiB
Markdown
# Contributing to OpenClaudia
|
|
|
|
Thanks for your interest in contributing! OpenClaudia is an open-source marketing toolkit for AI coding agents, and we welcome contributions of all kinds.
|
|
|
|
## Ways to Contribute
|
|
|
|
- **New skills** — add a marketing skill that solves a real problem
|
|
- **Bug fixes** — fix issues in existing skills
|
|
- **Documentation** — improve README, skill descriptions, or examples
|
|
- **API integrations** — connect skills to new marketing APIs
|
|
- **Translations** — help make skills work in more languages
|
|
|
|
## Creating a New Skill
|
|
|
|
### 1. Pick a skill idea
|
|
|
|
Check [open issues](https://github.com/OpenClaudia/openclaudia-skills/issues) for requested skills, or propose your own. If you're unsure whether your idea fits, open an issue to discuss first.
|
|
|
|
### 2. Create the skill directory
|
|
|
|
```
|
|
skills/
|
|
your-skill-name/
|
|
SKILL.md # Required — the skill definition
|
|
```
|
|
|
|
Skill names should be lowercase, hyphenated, and descriptive: `seo-audit`, `write-blog`, `email-sequence`.
|
|
|
|
### 3. Write the SKILL.md
|
|
|
|
Every skill is a single `SKILL.md` file with YAML frontmatter and detailed instructions:
|
|
|
|
```markdown
|
|
---
|
|
name: your-skill-name
|
|
description: One-line description of what this skill does (shown in skill list)
|
|
allowed-tools: Bash
|
|
---
|
|
|
|
# Your Skill Name
|
|
|
|
Detailed instructions that the AI agent will follow when this skill is invoked.
|
|
|
|
## When to use this skill
|
|
|
|
Describe the trigger phrases and use cases.
|
|
|
|
## What this skill does
|
|
|
|
Step-by-step instructions for the agent:
|
|
1. Gather input from the user
|
|
2. Call APIs or read files
|
|
3. Generate output
|
|
4. Write results to disk or take action
|
|
|
|
## API Requirements (if any)
|
|
|
|
List any API keys needed and how to configure them.
|
|
```
|
|
|
|
### Frontmatter fields
|
|
|
|
| Field | Required | Description |
|
|
|-------|----------|-------------|
|
|
| `name` | Yes | Skill name (lowercase, hyphenated). Becomes the slash command: `/your-skill-name` |
|
|
| `description` | Yes | One-line description shown in `npx openclaudia list` |
|
|
| `allowed-tools` | No | Comma-separated list of tools the skill needs access to (e.g., `Bash`, `Read`, `Write`). Use this when your skill needs to run shell commands (curl, API calls) or perform file operations. If omitted, the skill can only generate text responses. |
|
|
|
|
**When to use `allowed-tools`:**
|
|
- `Bash` — skill makes API calls via curl, runs CLI tools, or executes shell commands
|
|
- `Read` — skill needs to read files from the user's project
|
|
- `Write` — skill creates or modifies files
|
|
|
|
Example: a skill that sends emails via the Resend API needs `allowed-tools: Bash` to execute curl commands.
|
|
|
|
### 4. Skill authoring guidelines
|
|
|
|
- **Be specific** — the more precise your instructions, the better the agent performs
|
|
- **Include examples** — show the agent what good output looks like
|
|
- **Handle errors** — tell the agent what to do when an API key is missing or a request fails
|
|
- **Keep it focused** — one skill should do one thing well
|
|
- **Test it** — run your skill in Claude Code before submitting
|
|
|
|
### 5. Submit a pull request
|
|
|
|
1. Fork the repo
|
|
2. Create a branch: `git checkout -b skill/your-skill-name`
|
|
3. Add your skill directory under `skills/`
|
|
4. Update the README if your skill adds a new category
|
|
5. Open a PR with:
|
|
- What the skill does
|
|
- How you tested it
|
|
- Any API keys required
|
|
|
|
## Code Review Standards
|
|
|
|
We review PRs for:
|
|
|
|
- **Correctness** — does the skill do what it claims?
|
|
- **Clarity** — are the instructions clear and unambiguous?
|
|
- **Safety** — does the skill avoid destructive actions without user confirmation?
|
|
- **Privacy** — does the skill avoid sending user data to unexpected third parties?
|
|
|
|
## Reporting Issues
|
|
|
|
Found a bug or have a feature request? [Open an issue](https://github.com/OpenClaudia/openclaudia-skills/issues/new) with:
|
|
|
|
- Skill name (if applicable)
|
|
- What you expected to happen
|
|
- What actually happened
|
|
- Your environment (OS, Claude Code version)
|
|
|
|
## Community
|
|
|
|
- **GitHub Issues** — bug reports and feature requests
|
|
- **GitHub Discussions** — questions and ideas
|
|
- **Twitter/X** — [@Claudia1569302](https://x.com/Claudia1569302)
|
|
|
|
## License
|
|
|
|
By contributing, you agree that your contributions will be licensed under the [MIT License](LICENSE).
|