chore: cleanup repo and enhance validation

- Add .gitignore (.DS_Store, .vscode, __pycache__)
- Remove stale .gitkeep files (directories have content now)
- Expand schema.toml to document all 6 content types (agent, hand, integration, skill, plugin)
- Add plugin validation and contribution guide
- Add id/name vs directory name consistency checks
- Add cross-type routing alias collision detection (14 warnings found)
This commit is contained in:
Evan Hu committed 2026-03-21 02:21:24 +09:00
1 parent 1f3ef406ee
commit d1bc8ead69
8 files changed
+295 -8

No files matched your search

+25
View File
@@ -162,6 +162,31 @@ Plus a `main.py` with your implementation.
- [ ] Prompt-only skills have a `[prompt].template` with correct `{{param}}` placeholders
- [ ] Python skills include all required files
## Adding a Plugin
Create a directory `plugins/<name>/` with a `plugin.toml` and hook scripts:
```toml
name = "my-plugin"
version = "0.1.0"
description = "What this plugin does"
author = "your-name"
[hooks]
ingest = "hooks/ingest.py" # Called when user message is received
after_turn = "hooks/after_turn.py" # Called after each conversation turn
```
Hook scripts communicate via stdin/stdout JSON. See [schema.toml](schema.toml) for the protocol format.
### Plugin Checklist
- [ ] `name` matches the directory name
- [ ] `[hooks]` lists at least one hook
- [ ] All referenced hook files exist
- [ ] Hook scripts read JSON from stdin and write JSON to stdout
- [ ] `requirements.txt` lists any Python dependencies (stdlib-only preferred)
## Adding or Updating a Provider / Model
Edit the appropriate provider file in `providers/`. If the provider doesn't exist, create a new file.