Skip to content
Back to skills

Writing Skills

BSecurity

Use when creating or improving a skill using TDD process with trigger scenarios and pressure validation.

  • 8 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added May 28, 2026
ai-agentsgonode

Security analysis

B75/100
  • criticalAccesses sensitive system or user directories

Pro shows the line behind each finding and how to fix it

Scanned May 28, 2026

npx -y skills add seokan-jeong/team-shinchan --skill writing-skills --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Writing Skills?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Writing Skills
[![Security: B — Skills Directory](https://www.skillsdirectory.com/api/skills/seokan-jeong-writing-skills/badge)](https://www.skillsdirectory.com/skills/seokan-jeong-writing-skills)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: team-shinchan:writing-skills
description: Use when creating or improving a skill using TDD process with trigger scenarios and pressure validation.
user-invocable: true
---

# Writing Skills: TDD Process for Skill Development

> Good skills are written like good tests: define the trigger scenario first, specify expected behavior, then implement.

## Step 1: Define Trigger Scenarios

Before writing any skill content, write 3+ trigger scenarios:

```
Trigger Scenario Format:
  When: [specific user utterance or context]
  Context: [what state the system is in]
  Expected: [what the skill should do / output]
```

If you cannot write a concrete trigger scenario, the skill is not ready. Stop and clarify.

## Step 2: Define Expected Behavior

For each trigger scenario, define:
- **Output format**: what does the skill output?
- **Side effects**: what files are modified?
- **Failure conditions**: when does the skill fail?
- **Boundaries**: what is explicitly OUT of scope?

## Step 3: Implement the Skill

**Frontmatter requirements:**
```yaml
---
name: team-shinchan:{skill-name}
description: Use when {trigger condition, max 20 words}
user-invocable: true|false
---
```

**Content rules:**
- Organize into ## Step N sections
- All Task() calls must specify: subagent_type, model, prompt
- No ambiguous instructions — write the actual logic
- Every claim needs a verification step

**Anti-patterns:**
- `// implement the logic here` — write actual logic
- "Update as needed" — specify exactly what
- "Add error handling" — specify what errors

## Step 4: Pressure Scenario Validation

Before publishing, run against these scenarios:

### P1: Ambiguous Input
Input: empty args or whitespace. Expected: asks for clarification, does NOT crash.

### P2: Invalid Input
Input: path traversal like `../../etc/passwd`. Expected: rejects with clear error.

### P3: Missing Prerequisites
Input: skill invoked when required state doesn't exist. Expected: actionable error message.

### Validation Checklist
- [ ] All 3+ trigger scenarios produce expected behavior
- [ ] Empty input does NOT crash
- [ ] Missing prerequisites produce actionable errors
- [ ] `node tests/validate/skill-schema.js` passes
- [ ] `node tests/validate/skill-format.js` passes
- [ ] KNOWN_SKILLS in cross-refs.js updated

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.