mirror of
https://github.com/getsentry/skills.git
synced 2026-09-14 20:00:03 +08:00
24361e7958
Make repo-root `skills/` and `agents/` the canonical source for the `sentry-skills` plugin by loading the plugin from repo root instead of from `plugins/sentry-skills`. The earlier refactor moved the tree to top level, but leaving a plugin-local `skills` symlink still created a loader risk for marketplace installs. This removes that dependency entirely: the marketplace entry now points at `./`, the root plugin manifest uses repo-root `skills/` and `agents/`, and the old plugin-local `skills` path goes away. This pass also tightens the repo guidance around standard skill locations. `skill-writer` goes back to using `.agents/skills` as its default local target, `skill-writer` and `skill-scanner` now explicitly recognize canonical `skills/<name>/` roots, and the repo docs and registrations are updated to match the new layout, including `presentation-creator`. I validated the change with strict-depth validation for `skill-writer` and `skill-scanner`, plus a local Claude marketplace add/install smoke test that produced real `skills/` and `agents/` directories in the installed plugin cache without any plugin-local `skills` symlink. --------- Co-authored-by: Codex <noreply@openai.com> Co-authored-by: Codex <codex@openai.com>
69 lines
2.0 KiB
Markdown
69 lines
2.0 KiB
Markdown
# Contributing
|
|
|
|
## Philosophy
|
|
|
|
This repository favors **incremental change** over perfection. Skills are living documents that improve over time through small, iterative updates.
|
|
|
|
- **Bias toward action** - Ship small improvements rather than waiting for the perfect solution
|
|
- **Self-review is the default** - You know your changes best
|
|
- **Iterate freely** - Don't hesitate to refine existing skills
|
|
|
|
## Testing Skills
|
|
|
|
Before merging, test your changes locally:
|
|
|
|
1. **Install the plugin from your local clone**
|
|
|
|
```bash
|
|
claude plugin marketplace add ~/path/to/sentry-skills
|
|
claude plugin install sentry-skills
|
|
```
|
|
|
|
If you use `claude plugin marketplace add --sparse` for this repo, include `skills` and `agents` in addition to `.claude-plugin` because the root plugin manifest loads repo-root `skills/` and `agents/`.
|
|
|
|
2. **Restart Claude Code** to pick up changes
|
|
|
|
3. **Invoke the skill** in a relevant context
|
|
|
|
```bash
|
|
# For explicit invocation
|
|
/skill-name
|
|
|
|
# Or describe a task that should trigger the skill
|
|
```
|
|
|
|
4. **Verify behavior** - Check that the skill produces the expected guidance and handles edge cases appropriately
|
|
|
|
## Pull Request Workflow
|
|
|
|
All changes go through the PR flow, but formal review is optional.
|
|
|
|
- **Self-review and merge** when you're confident in your change
|
|
- **Request review** only when you want a second pair of eyes
|
|
- Keep PRs focused - one skill or one improvement per PR when practical
|
|
|
|
## Adding a New Skill
|
|
|
|
1. Create `skills/<skill-name>/SKILL.md`
|
|
|
|
2. Add required YAML frontmatter:
|
|
|
|
```yaml
|
|
---
|
|
name: skill-name
|
|
description: What this skill does. Include trigger keywords.
|
|
---
|
|
```
|
|
|
|
3. Update `README.md` to add the skill to the Available Skills table in alphabetical order by skill name
|
|
|
|
4. Add the skill to `.claude/settings.json`:
|
|
|
|
```json
|
|
"Skill(sentry-skills:skill-name)"
|
|
```
|
|
|
|
5. Update the skills allowlist in `skills/claude-settings-audit/SKILL.md`
|
|
|
|
See [README.md](README.md) for the full skill template and optional frontmatter fields.
|