Contributing
Thanks for your interest in contributing to Wick!
Getting Started
bash
git clone https://github.com/yogasw/wick.git
cd wick
cp .env.example .env
go run . setup
go run . devThe dev server starts at http://localhost:8080.
Project Layout
app/ # RegisterTool / RegisterJob / Run wiring
cmd/cli/ # wick CLI commands (init, run, task)
internal/ # framework internals (admin, auth, SSO, tags, jobs runner)
pkg/ # public packages used by scaffolded projects (tool, job, entity)
template/ # project template — copied by wick init
docs/ # this documentation site (VitePress)Adding a Feature
- Framework change (new
pkg/API, new admin page) → edit underinternal/orpkg/ - Template change (new example tool/job, updated
AGENTS.md, downstream skill content) → edit undertemplate/ - Shared skill change (e.g.
design-system) → edit under.claude/skills/at the repo root - Docs change → edit under
docs/
Submitting a PR
- Fork and create a branch:
git checkout -b feat/my-feature - Make your changes
- Run
go build ./...andgo test ./... -race— both must pass - Open a pull request against
main
Commit Style
Follow Conventional Commits:
feat(cli): add --dry-run flag to wick init
fix(job): prevent duplicate cron registration on restart
docs: add contributing guideReporting Issues
Open an issue at github.com/yogasw/wick/issues with:
- What you expected
- What happened
- Steps to reproduce