mirror of
https://github.com/katanemo/plano.git
synced 2026-05-08 07:12:42 +02:00
Add Claude Code skills and streamline CLAUDE.md (#823)
* add claude code skills and streamline CLAUDE.md * remove claude code attribution from PR skill * update pr skill
This commit is contained in:
parent
5400b0a2fa
commit
2f52774c0e
7 changed files with 147 additions and 99 deletions
12
.claude/skills/build-wasm/SKILL.md
Normal file
12
.claude/skills/build-wasm/SKILL.md
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
---
|
||||
name: build-wasm
|
||||
description: Build the WASM plugins for Envoy. Use when WASM plugin code changes.
|
||||
---
|
||||
|
||||
Build the WASM plugins:
|
||||
|
||||
```
|
||||
cd crates && cargo build --release --target=wasm32-wasip1 -p llm_gateway -p prompt_gateway
|
||||
```
|
||||
|
||||
If the build fails, diagnose and fix the errors.
|
||||
12
.claude/skills/check/SKILL.md
Normal file
12
.claude/skills/check/SKILL.md
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
---
|
||||
name: check
|
||||
description: Run Rust fmt, clippy, and unit tests. Use after making Rust code changes.
|
||||
---
|
||||
|
||||
Run all local checks in order:
|
||||
|
||||
1. `cd crates && cargo fmt --all -- --check` — if formatting fails, run `cargo fmt --all` to fix it
|
||||
2. `cd crates && cargo clippy --locked --all-targets --all-features -- -D warnings` — fix any warnings
|
||||
3. `cd crates && cargo test --lib` — ensure all unit tests pass
|
||||
|
||||
Report a summary of what passed/failed.
|
||||
17
.claude/skills/new-provider/SKILL.md
Normal file
17
.claude/skills/new-provider/SKILL.md
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
---
|
||||
name: new-provider
|
||||
description: Add a new LLM provider to hermesllm. Use when integrating a new AI provider.
|
||||
disable-model-invocation: true
|
||||
user-invocable: true
|
||||
---
|
||||
|
||||
Add a new LLM provider to hermesllm. The user will provide the provider name as $ARGUMENTS.
|
||||
|
||||
1. Add a new variant to `ProviderId` enum in `crates/hermesllm/src/providers/id.rs`
|
||||
2. Implement string parsing in the `TryFrom<&str>` impl for the new provider
|
||||
3. If the provider uses a non-OpenAI API format, create request/response types in `crates/hermesllm/src/apis/`
|
||||
4. Add variant to `ProviderRequestType` and `ProviderResponseType` enums and update all match arms
|
||||
5. Add model list to `crates/hermesllm/src/providers/provider_models.yaml`
|
||||
6. Update `SupportedUpstreamAPIs` mapping if needed
|
||||
|
||||
After making changes, run `cd crates && cargo test --lib` to verify everything compiles and tests pass.
|
||||
16
.claude/skills/pr/SKILL.md
Normal file
16
.claude/skills/pr/SKILL.md
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
---
|
||||
name: pr
|
||||
description: Create a feature branch and open a pull request for the current changes.
|
||||
disable-model-invocation: true
|
||||
user-invocable: true
|
||||
---
|
||||
|
||||
Create a pull request for the current changes:
|
||||
|
||||
1. Determine the GitHub username via `gh api user --jq .login`. If the login is `adilhafeez`, use `adil` instead.
|
||||
2. Create a feature branch using format `<username>/<feature_name>` — infer the feature name from the changes
|
||||
3. Run `cd crates && cargo fmt --all -- --check` and `cd crates && cargo clippy --locked --all-targets --all-features -- -D warnings` to verify Rust code is clean
|
||||
4. Commit all changes with a short, concise commit message (one line, no Co-Authored-By)
|
||||
5. Push the branch and create a PR targeting `main`
|
||||
|
||||
Keep the PR title short (under 70 chars). Include a brief summary in the body. Never include a "Test plan" section or any "Generated with Claude Code" attribution.
|
||||
28
.claude/skills/release/SKILL.md
Normal file
28
.claude/skills/release/SKILL.md
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
---
|
||||
name: release
|
||||
description: Bump the Plano version across all required files. Use when preparing a release.
|
||||
disable-model-invocation: true
|
||||
user-invocable: true
|
||||
---
|
||||
|
||||
Prepare a release version bump. The user may provide the new version number as $ARGUMENTS (e.g., `/release 0.4.12`), or a bump type (`major`, `minor`, `patch`).
|
||||
|
||||
If no argument is provided, read the current version from `cli/planoai/__init__.py`, auto-increment the patch version (e.g., `0.4.11` → `0.4.12`), and confirm with the user before proceeding.
|
||||
|
||||
Update the version string in ALL of these files:
|
||||
|
||||
- `.github/workflows/ci.yml`
|
||||
- `cli/planoai/__init__.py`
|
||||
- `cli/planoai/consts.py`
|
||||
- `cli/pyproject.toml`
|
||||
- `build_filter_image.sh`
|
||||
- `config/validate_plano_config.sh`
|
||||
- `docs/source/conf.py`
|
||||
- `docs/source/get_started/quickstart.rst`
|
||||
- `docs/source/resources/deployment.rst`
|
||||
- `apps/www/src/components/Hero.tsx`
|
||||
- `demos/llm_routing/preference_based_routing/README.md`
|
||||
|
||||
Do NOT change version strings in `*.lock` files or `Cargo.lock`.
|
||||
|
||||
After making changes, show a summary of all files modified and the old → new version.
|
||||
9
.claude/skills/test-python/SKILL.md
Normal file
9
.claude/skills/test-python/SKILL.md
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
---
|
||||
name: test-python
|
||||
description: Run Python CLI tests. Use after making changes to cli/ code.
|
||||
---
|
||||
|
||||
1. `cd cli && uv sync` — ensure dependencies are installed
|
||||
2. `cd cli && uv run pytest -v` — run all tests
|
||||
|
||||
If tests fail, diagnose and fix the issues.
|
||||
Loading…
Add table
Add a link
Reference in a new issue