Commit Graph
49 Commits
Author SHA1 Message Date
Samuel Berthe f8564ffeb7 chore: bump plugin version to 1.3.0 2026-04-29 00:20:59 +02:00
Samuel BertheandGitHub 5ab41df4d9 feat: add AI-driven code review workflow with skill plugin (#23)
* docs: add CI/AI-driven code review section to README

* chore: add .worktrees/ to .gitignore

* feat: add AI-driven code review workflow with skill plugin

- New GOLANG-AI-DRIVEN-REVIEW.md doc with 6-job Claude Code Action workflow (quality, correctness, security, quality-depth, ci-diagnosis, discuss)
- New assets: claude-code-review.yml workflow + copilot-review-instructions.md
- Workflow features: per-event concurrency lanes, 15min timeout, sticky comments, skill loading via npx skills add -a claude-code, Skill() invocation syntax in prompts
- Cross-references to golang-continuous-integration in 7 skills (security, testing, linter, concurrency, error-handling, code-style, safety)
- Tighten CI security: add permissions blocks to lint/security-scan, remove unused id-token from update workflows, add SARIF upload + exit-code to Trivy/Bearer
2026-04-29 00:08:27 +02:00
Samuel BertheandGitHub 85156e78dd feat: add golang-uber-dig and golang-uber-fx skills (#25)
* feat: add golang-uber-dig and golang-uber-fx skills

Two new library skills covering uber-go's reflection-based DI ecosystem. golang-uber-dig covers the container, Provide/Invoke, dig.In/dig.Out, named values, value groups, dig.As, optional deps, Decorate, Scopes, error handling, and Visualize. golang-uber-fx covers fx.New/Run, lifecycle hooks, fx.Module, fx.Annotate, fx.Supply/Replace/Decorate, fxevent logging, and fxtest. Each skill ships recipes.md (end-to-end app examples) and testing.md (test patterns and CI graph validation), and cross-references golang-samber-do, golang-google-wire, and golang-dependency-injection.

* refactor(uber-dig,uber-fx): trim SKILL.md under 2,500 tokens

Both SKILL.md exceeded the project budget. Moved Decorate, Scopes, optional deps, error helpers, Visualize, and Quick Reference into references/advanced.md for both skills. dig: 3,744 -> 2,264 tok. fx: 4,466 -> 2,499 tok. README updated.

* test(uber-dig,uber-fx): add eval prompts and assertions

11 adversarial evals per skill targeting unique guidance: parameter objects, value groups (with flatten), named values, dig.As to hide concrete types, scopes for request locals, container at composition root, DryRun graph validation, Decorate, RecoverFromPanics, fx vs dig choice. fx evals additionally cover lifecycle non-blocking OnStart, fx.Annotate vs fx.Out, modules, fx.Supply, fx.Replace + fx.Populate in fxtest, fxevent.ZapLogger, manual lifecycle for CLI embedding.

* test(uber-dig,uber-fx): add preliminary eval results to EVALUATIONS.md

Ran 4 evals × 2 configs per skill (16 subagents total) with Claude Opus 4.7. Both skills score 100% with-skill. Without-skill: dig 90% (-10pp uplift), fx 95% (-5pp uplift). The base model has very strong baseline knowledge of both libraries; only adversarial evals targeting subtle API choices (Decorate vs scope-shadow Provide; fx.As interface binding) showed meaningful uplift. Full 11-eval suite (53/56 assertions) remains in evals.json for re-runs via /skill-creator.

* fix(uber-dig): clean up unused context import and fix handler signature in recipes

* fix(golang-uber-dig,golang-uber-fx): address PR #25 review comments and deep review findings

PR comments:
- dig/advanced.md: rephrase "module boundaries" to "scope/package wiring boundaries"
- dig/recipes.md: fix ignored repo.List error in HTTP handler (return 500)
- dig/recipes.md: remove unused context import and _ = context.Background hack
- dig/recipes.md: fix handle() signature to idiomatic (w, r) order
- fx/testing.md: assert net.Listen error before using listener

Deep review:
- dig/advanced.md: add code example for dig.Export(true) call site
- dig/advanced.md: clarify c.String() as text summary, not DOT output
- dig/recipes.md: add missing root.Provide(NewHandler) to request-scope recipe
- fx/advanced.md: add fx.ErrorHook to lifecycle quick reference
- fx/testing.md: add zaptest/observer import hint to observer example
- fx/testing.md: comment why lc.Start is used instead of RequireStart
2026-04-29 00:03:43 +02:00
Samuel Berthe 6a55473e25 fix(evals): replace zero-delta eval groups across 23 skills
Redesigned 116 eval groups that showed no delta between with/without
skill runs. Three failure modes addressed:

- Both-fail (adversarial override): removed explicit wrong instructions
  from prompts; traps now make the wrong approach a natural default
- Both-pass (common knowledge): replaced widely-known patterns with
  Go-specific, niche, or counterintuitive scenarios the model misses
  without the skill
- Both-partial (mixed assertions): split homogeneous groups, removed
  common-knowledge assertions, fixed coverage-gap ones

Also strengthened eval design principles in CLAUDE.md: clearer
adversarial framing rules, pre-flight gate, positive-trigger
preference, training-data saturation heuristic.
2026-04-28 14:33:19 +02:00
Samuel BertheandGitHub 56c59cc082 fix: improve skill descriptions for better auto-triggering (#24)
* fix: improve skill descriptions for better auto-triggering

- golang-design-patterns: narrow trigger from "designing Go APIs / making design decisions" (too broad) to specific patterns (functional options, graceful shutdown, etc.)
- golang-popular-libraries: remove unreliable "agent is about to add a dependency" trigger; add "new dependency being added" phrasing; drop noisy task-list examples
- golang-graphql: add import path triggers (github.com/99designs/gqlgen, github.com/graph-gophers/graphql-go)
- golang-uber-fx: add import path trigger (go.uber.org/fx), expand API surface (fx.Module, fx.Hook, fx.Option)
- golang-code-style: minor wording fix ("writing Go code" was missing "Go")

* chore: bump skill versions after description updates
2026-04-28 13:04:01 +02:00
GustavandGitHub 937bc72b76 fix: golang-linter skill name inconsistent with folder name (#19)
* fix: golang-linter skill name inconsistent with folder name

* fix: rename all `golang-linter` to `golang-lint`
2026-04-24 17:25:40 +02:00
b6542b653c refactor: use errors.AsType for typed error matching (#20)
* refactor: use errors.AsType for typed error matching

* Update error-wrapping.md

---------

Co-authored-by: Samuel Berthe <dev@samuel-berthe.fr>
2026-04-23 23:44:30 +02:00
Samuel BertheandGitHub 26524a3381 Update README.md 2026-04-13 17:19:26 +02:00
Александр МелентьевandGitHub 9dfc70fb8c Add _test suffix (#15)
Signed-off-by: Александр Мелентьев <aleksandr4842@ya.ru>
2026-04-08 18:26:40 +02:00
Samuel BertheandGitHub 49eb968ccb fix: resolve snyk W011/W012/W001 alerts in skill bodies (#14)
- Replace imperative "search for latest version / check URL" instructions
  with passive availability hints in golang-continuous-integration,
  golang-dependency-management, golang-modernize, and golang-samber-ro
- Replace `go install govulncheck@latest` with golang/govulncheck-action@v1
  in CI security asset (W012)
- Remove `gh repo view` from dependency evaluation checklist (W011)
- Add golang-performance step: paste benchstat output in commit body
- Document W011/W012/W001 fix patterns in CLAUDE.md for future authors
- Add snyk-agent-scan step to the "After updating a skill" workflow
- Bump plugin to v1.2.5; bump affected skill versions
v1.2.5
2026-04-08 01:04:04 +02:00
3d2769c4e5 fix: set user-invocable to true for all skills to enable plugin usage (#13)
Skills need user-invocable: true to work correctly when installed as a
Claude Code plugin. Updated 25 SKILL.md files that had it set to false.

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 18:21:45 +02:00
Samuel Berthe b29499a6f6 feat: add skill-library-version field for staleness detection
Introduce skill-library-version in openclaw metadata for skills covering
versioned third-party projects. Add workflow in CLAUDE.md for periodically
checking outdated skills against upstream changelogs. Apply to all 15
library-specific skills with latest upstream versions.
2026-04-06 18:36:48 +02:00
Samuel BertheandGitHub b88f91d8ea Update project title in README.md 2026-03-31 14:22:13 +02:00
Samuel BertheandGitHub 785750e31f Update installation command for skills CLI 2026-03-31 14:21:58 +02:00
Samuel BertheandGitHub 48214a1c93 feat: add AskUserQuestion to allowed-tools across all skills (#9)
Add AskUserQuestion to the allowed-tools documentation table in
CLAUDE.md and to the allowed-tools frontmatter of all 24 existing
skills, enabling skills to clarify user intent before proceeding.

Bump patch version for all affected skills and plugin (1.2.3 → 1.2.4).
v1.2.4
2026-03-30 20:46:37 +02:00
Samuel Berthe 017e747bd3 oops 2026-03-30 18:46:12 +02:00
Samuel BertheandGitHub bd8e97e59d sorry, im french so i dont speak english veri ouel (#8) 2026-03-30 15:10:14 +02:00
Barkhayot JuraevandGitHub 63d45d0f6e [fix] minor typos (#7)
* fix: claude.md typo

* fix: logging verbal typo
2026-03-30 10:33:53 +02:00
Samuel Berthe 91421f5305 shit, chuck norris is dead 2026-03-27 11:10:03 +01:00
Paulo GodinhoandGitHub 2dafc87171 Fix typo in tablewriter package name (#6) 2026-03-27 01:59:47 +01:00
Samuel Berthe a10cda000e bump version 2026-03-24 14:33:19 +01:00
Samuel BertheandGitHub 3a428b6358 fix(frontmatter): enclose frontmatters descriptions into double quotes to prevent issue when import (#5) 2026-03-24 12:45:51 +01:00
Samuel Berthe ef3a47a352 chore(ci): disable clawhub submission 2026-03-24 08:14:47 +01:00
Samuel Berthe a3fbd3f82c chore: bump golang-stay-updated 2026-03-23 17:26:46 +01:00
Brian KetelsenandGitHub d9e485d51a chore: Update Brian Ketelsen's contact information (#4)
Update incorrect details for Brian Ketelsen
2026-03-23 17:24:28 +01:00
Samuel BertheandGitHub 9cecc579a2 Update AI-related statement in README
Rephrase the statement about AI in README.
2026-03-23 14:07:12 +01:00
Samuel BertheandGitHub b494fb7fbb Update README with important project note
Added important note about the project being bootstrapped with Claude Code and edited by a human.
2026-03-23 14:05:29 +01:00
Samuel BertheandGitHub b79302da2e Clarify company skill override in README
Updated the README to clarify the company skill override mechanism and removed HTML entities.
2026-03-23 12:45:55 +01:00
Samuel BertheandGitHub 86bb74ff36 Update README to remove token count instructions
Removed token count measurement instructions from README.
2026-03-23 04:15:04 +01:00
Samuel Berthe 6e8c861f7f oops 2026-03-23 01:37:31 +01:00
Samuel Berthe 4d3d3d5960 doc 2026-03-23 01:01:51 +01:00
Samuel Berthe 88e58ee4d3 chore: increase version number to 1.2.0 v1.2.0 2026-03-23 00:56:49 +01:00
Samuel BertheandGitHub 617dab4eaa feat(skills): adding samber/lo, samber/ro, samber/mo, samber/hot, samber/slog-xxx (#3)
* feat(skills): adding samber/lo, samber/ro, samber/mo, samber/hot, samber/slog-xxx

* fix after review
2026-03-23 00:53:23 +01:00
Samuel BertheandGitHub b05a007624 chore(ci): claude code job for skills maintenance (skills covering libraries only) (#2) 2026-03-22 22:21:02 +01:00
Samuel BertheandGitHub d0f69ca0f6 Refactor skills section in README
Removed redundant skill descriptions and adjusted formatting.
2026-03-22 19:29:40 +01:00
Samuel BertheandGitHub 3a0db0c864 Refactor skills section in README.md
Removed redundant description of skills and adjusted formatting for clarity.
2026-03-22 19:28:55 +01:00
Samuel BertheandGitHub 45fb6bb8a7 Replace image in README with new asset
Updated image in README and adjusted dimensions.
2026-03-22 19:26:48 +01:00
Samuel Berthe 07038776cb Merge Skill/Name and Cmd/Ultrathink/Overridable columns in README tables 2026-03-22 19:25:54 +01:00
Samuel BertheandGitHub 39f443f1a8 Update skills section in README.md
Added new skill indicators and updated the skills table.
2026-03-22 19:18:41 +01:00
Samuel BertheandGitHub a1e755980c Update README with installation instructions
Added usage instructions for installing with skills CLI.
2026-03-22 18:33:04 +01:00
Samuel Berthe 8689fc90a4 chore(ci): add ClawHub publish workflow and script
- Add clawhub-publish.sh to publish all skills with version > 0.0.0
- Refactor workflow to use the shared script
- Add WIP skills with version 0.0.0 (skipped by publish)
v1.1.0
2026-03-22 16:24:10 +01:00
Samuel Berthe fe55d9e692 chore(ci): use different clouder to bypass rate limits 2026-03-22 16:05:55 +01:00
Samuel BertheandGitHub 24674f41da chore/publish clawhub (#1)
* chore: add clawhub config

* chore(ci): publish to clawhub
2026-03-22 15:43:48 +01:00
Samuel BertheandGitHub 2622557971 Simplify usage instructions in README
Removed unnecessary instructions for forking and copy-pasting skills.
2026-03-22 04:17:14 +01:00
Samuel Berthe aa976ab424 fix(ci): inject secret into snyk-agent-scan 2026-03-22 01:48:09 +01:00
Samuel Berthe 2a7a39aa36 chore:remove skillsafe scan 2026-03-22 01:39:47 +01:00
Samuel Berthe 20a750a4c3 fix(dependabot): fix dependabot config 2026-03-22 00:31:33 +01:00
Samuel BertheandGitHub 845c7c7990 Change Dependabot update interval from weekly to monthly 2026-03-22 00:25:43 +01:00
Samuel Berthe a927023572 initial commit 2026-03-22 00:11:10 +01:00