Thanks for your interest in contributing to JFrog Kiro Power.
All contributions require a signed CLA.
- JFrog CLA: https://jfrog.com/cla/
Our GitHub checks will guide you through the signing process on your first pull request.
- Use GitHub Issues to report bugs or request enhancements.
- Include clear reproduction steps, expected vs actual behavior, and any relevant logs or screenshots.
- Fork the repo and create a feature branch.
- Make your change with a clear, focused scope.
- Update documentation as needed (README/POWER docs).
- Open a pull request with:
- What changed and why
- How you tested (or why no test applies)
The power ships JFrog knowledge as steering/ files, generated from the embedded skills/ tree. Two
things to know before testing.
Kiro adds a power in two ways, and they are not equivalent:
- Local folder import (Powers → Add Custom Power → Import from a folder): Kiro references the power
in place from your path. It does not copy files into
~/.kiro/powers/installed/, so thekiro_powersactivation tool fails with "Power not installed" — this is expected for local imports, not a bug. Use this mode for fast iteration. - GitHub install (Import from GitHub): Kiro copies
POWER.md+steering/into~/.kiro/powers/installed/jfrog/, and activation works. Use this for production-style testing.
- Add the power via Import from a folder pointed at your checkout.
- In a Kiro chat, load the steering manually:
#jfrog(foundational) or#jfrog-references(deep API/AQL). This uses the exact content the power ships. - Edit
steering/(or the generators — see below), reload Kiro, and re-test with#jfrog. - Before opening a PR, do a GitHub install from your fork to confirm activation works end-to-end.
Optional local dev workaround to make kiro_powers activation work without GitHub — stage the installed
dir to mirror a GitHub install:
mkdir -p ~/.kiro/powers/installed/jfrog
cp POWER.md ~/.kiro/powers/installed/jfrog/
rm -rf ~/.kiro/powers/installed/jfrog/steering && cp -R steering ~/.kiro/powers/installed/jfrog/
# then fully quit & reopen Kiro- Do not hand-edit
skills/— it is vendored byte-for-byte fromjfrog/jfrog-skillsat a pinned tag (parity with the other JFrog agent plugins). To change skill content, bump the pin (see VENDOR.md). - Do not hand-edit
steering/— it is generated. Runnpm run gen-steeringand commit the result. - After any pin bump:
npm run sync-skills && npm run gen-steering, then commit bothskills/andsteering/. - Before pushing:
npm testandnpm run validatemust pass;npm run verify-installchecks your localjfCLI + server prerequisites.
If you discover a security vulnerability, please do not open a public issue. Follow JFrog’s responsible disclosure process (or contact your JFrog security point-of-contact).
By contributing, you agree that your contributions will be licensed under the project license (Apache-2.0).