원클릭으로
check-linters-before-commit
Before any commit, run linters, vet, tests, and build verification; do not commit until checks pass
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Before any commit, run linters, vet, tests, and build verification; do not commit until checks pass
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Index a folder's contents into the MemPalace semantic memory for search and retrieval. Use this skill whenever the user asks to "index a folder", "index a directory", "index memory", "mine a project into memory", "make a folder searchable", "embed a folder", "ingest code into the palace", or "index this directory for semantic search". Covers the full flow: model download, mempalace.yaml room configuration, mining, and verification via search. Also trigger when the user says "memory index", "index memory of folder", or asks how to make a project's code semantically searchable with pi-go's MemPalace.
Lazy senior dev mode — always pick the simplest solution that works. Use this skill whenever writing, refactoring, or reviewing code to keep changes minimal: prefer the standard library, native platform features, and already-installed dependencies over new code or dependencies. Trigger when the user says "ponytail", "keep it simple", "simplest thing that works", "don't over-engineer", "lazy mode", or asks to avoid unnecessary abstractions, boilerplate, or premature complexity. The best code is the code never written.
Go 1.24–1.26 coding guidelines for the dimetron/pi-go AI agent runtime. Use this skill whenever writing, reviewing, or refactoring ANY Go code in pi-go. This covers idiomatic style, error handling, concurrency, project layout, testing (table-driven, fuzz, benchmarks, synctest), new stdlib usage, golangci-lint v2 configuration, slog logging, and manual dependency injection with functional options. Always consult this skill before generating Go code for pi-go, even for small snippets, to ensure every output is idiomatic and modern.
Review code for quality, run linters, check test coverage, fix issues, and enforce gates. Save the final report to ./specs/issues/003-code-review-pi/PROMPT.md. Use before committing changes.
Deep design review of Go codebase — naming, structure, consistency, interfaces, error handling. Scores each dimension and provides actionable fixes.
Mine project files or conversations into the MemPalace memory system. Indexes source code and conversation history as searchable palace drawers with semantic embeddings and room assignment.
| name | check-linters-before-commit |
| description | Before any commit, run linters, vet, tests, and build verification; do not commit until checks pass |
| tools | bash, read, grep, find |
You are an expert at ensuring code quality by running linters and static analysis before committing changes.
Use this skill whenever the user asks to commit, prepare a commit, or check whether code is ready to commit. Run the checks before committing anything, and do not proceed with a commit until the required checks pass.
First, identify what files have changed:
git diff --name-only
git diff --cached --name-only
Run the full linting suite (uses .golangci.yml v2 config):
golangci-lint run ./...
This covers go vet, staticcheck, errcheck, errorlint, misspell, revive, and more. Falls back to go vet ./... only if golangci-lint is not installed.
Verify tests pass:
go test ./...
Ensure the code builds:
go build ./cmd/pi
All of the following must pass before reporting readiness or creating a commit:
golangci-lint run ./... exits with code 0 (no issues)go test ./... exits with code 0 (all tests pass)go build ./cmd/pi exits with code 0 (builds successfully)Report the status of each check:
## Pre-Commit Checks
| Check | Status | Notes |
|-------|--------|-------|
| Lint (golangci-lint) | ✅ PASS / ❌ FAIL | |
| Tests | ✅ PASS / ❌ FAIL | |
| Build | ✅ PASS / ❌ FAIL | |
**Result:** Ready to commit / Fix issues before committing
For each failing check:
Example:
## Issues Found
### Lint Failures
1. **internal/tools/reader.go:42** — `whitespace` rule: unnecessary trailing whitespace
- Fix: Remove trailing whitespace
2. **internal/agent/runner.go:78** — `errorlint` rule: non-wrapping error creation
- Fix: Wrap error with `fmt.Errorf("context: %w", err)`
golangci-lint run ./... first (most comprehensive, uses .golangci.yml)go vet ./... only if golangci-lint is not installed//nolint: directives with justificationgit diff --cached) and unstaged (git diff) changes