chore: reorganize examples and templates into examples/ by type (#54)

- Move example skills to examples/skills/
- Move scaffolding templates to examples/{agents,hands,channels,plugins,providers,integrations,skills}/
- Remove legacy skill.toml from example skills; SKILL.md is the canonical format
- Delete top-level templates/ directory
This commit is contained in:
Evan authored and GitHub committed 2026-04-15 00:41:24 +09:00
1 parent 2f4f94b45b
commit 300e3569fe
14 files changed
-44

No files matched your search

@@ -0,0 +1,21 @@
# meeting-agenda
Generate a structured meeting agenda from a topic and duration. Pure prompt engineering — no code required.
## Configuration
| Field | Value |
|-------|-------|
| Type | `promptonly` |
| Entry | N/A (template-only) |
## Input
- **topic** (string, required) — The meeting topic
- **duration_minutes** (string, required) — Meeting duration in minutes
## Usage
```bash
librefang skill test ./skills/custom-skill-prompt --input '{"topic": "Q1 planning", "duration_minutes": "30"}'
```
@@ -0,0 +1,16 @@
---
name: meeting-agenda
description: Generate a structured meeting agenda from a topic and duration.
---
Create a structured meeting agenda for the following:
Topic: {{topic}}
Duration: {{duration_minutes}} minutes
Requirements:
- Include time allocations for each section
- Start with a brief intro/alignment (2-3 min)
- End with action items and next steps (3-5 min)
- Keep sections focused and actionable
- Format as a numbered list with time in brackets
@@ -0,0 +1,20 @@
# word-counter
Count words, sentences, and characters in text. A minimal example of a Python runtime skill.
## Configuration
| Field | Value |
|-------|-------|
| Type | `python` |
| Entry | `main.py` |
## Input
- **text** (string, required) — The text to analyze
## Usage
```bash
librefang skill test ./skills/custom-skill-python --input '{"text": "Hello world. How are you?"}'
```
@@ -0,0 +1,11 @@
---
name: word-counter
description: Count words, sentences, and characters in text.
---
# Word Counter
Counts words, sentences, and characters in the provided text.
The prompt body is unused for this skill — execution is delegated to
`main.py` via the `python` runtime declared in `skill.toml`.
@@ -0,0 +1,21 @@
"""
Word Counter Skill — a minimal example of a Python skill for LibreFang.
This skill receives a text input and returns word/sentence/character counts.
"""
import re
def run(input: dict) -> str:
text = input.get("text", "")
words = len(text.split())
sentences = len([s for s in re.split(r"[.!?]+", text.strip()) if s.strip()]) if text.strip() else 0
characters = len(text)
return (
f"Words: {words}\n"
f"Sentences: {sentences}\n"
f"Characters: {characters}"
)
+20
View File
@@ -0,0 +1,20 @@
[skill]
name = "{{NAME}}"
version = "0.1.0"
description = "TODO: One-sentence description of what this skill does."
author = "TODO"
tags = ["TODO"]
[runtime]
type = "promptonly"
[input]
topic = { type = "string", description = "TODO: Describe this input parameter", required = true }
[prompt]
template = """TODO: Write the prompt template for this skill.
Use {{topic}} to reference input parameters.
Be specific about the desired output format and constraints.
"""