一键导入
add-go-test
// Write or extend Go unit tests in this repo. Use when the user asks to add or update Go tests.
// Write or extend Go unit tests in this repo. Use when the user asks to add or update Go tests.
Update Authgear email templates using the correct source files, translation files, and commit order. Use when editing email wording, email structure, or subject lines.
Draft or update detailed implementation plans for authgear-server specs, design changes, and docs/plans files. Use when Codex needs to turn a spec or outdated plan into a concrete implementation plan with exact files, exact methods, runtime call flow, compatibility requirements, test coverage, and atomic commit steps.
Write end-to-end (e2e) tests for authgear-server. Use when the user asks to write, add, or create e2e tests. The tests live in e2e/tests/ and are YAML-driven.
Set up a fresh authgear-server development environment from scratch. Use when onboarding a new contributor, setting up a new machine, or when the user says "set up local dev from scratch" / "first-time setup". Covers the asdf + Homebrew install path on macOS; Nix users should follow CONTRIBUTING.md directly.
Full pipeline for adding a new Site Admin API feature — from OpenAPI spec through implementation plan to working service. Use when adding a new endpoint or filling in real data for an existing stub.
Guidelines for updating or designing pages in the portal React frontend (portal/src). Covers component conventions, link rendering rules, i18n patterns, and common pitfalls.
| name | add-go-test |
| description | Write or extend Go unit tests in this repo. Use when the user asks to add or update Go tests. |
| argument-hint | <package or behavior> |
Follow this skill when adding Go tests.
Always inspect existing *_test.go files in the package first. This repo uses different testing styles in different packages:
Convey (BDD-style): Many packages use github.com/smartystreets/goconvey. Identified by import . "github.com/smartystreets/goconvey/convey" and test structure like:
func TestFoo(t *testing.T) {
Convey("description", func() {
// assertions here
So(result, ShouldEqual, expected)
})
}
Standard testing.T: Some packages use plain *testing.T with manual assertions.
When in doubt, use Convey if the package has any imports of it. Convey provides better error messages and matches the repo's BDD conventions.
*_test.go files first to identify the testing style being used.go test on the affected package. If the change crosses packages or touches shared code, run the narrowest broader test set that proves the change is safe.So() assertions for consistency with the package style, not manual if statements.