- •Use the Task tool to verify tests by using the project's test suite.
bash
# Run project's test suite npm test / cargo test / pytest / go test ./...
If tests fail:
code
Tests failing (<N> failures). Must fix before creating PR: [Show failures] Cannot proceed until tests pass.
- •
Confirm that there is some formatting/lint/typechecking in the project. If NONE of these exist, ask me if there was something that you missed.
- •
Use the Task tool to run any formatters and fix issues in a subagent.
bash
# Node.js/JavaScript/TypeScript ls package.json 2>/dev/null && jq -r '.scripts | keys[]' package.json | grep -E 'format|lint' # Rust ls rustfmt.toml .rustfmt.toml 2>/dev/null # Python ls .flake8 pyproject.toml setup.cfg 2>/dev/null # Go ls .golangci.yml .golangci.yaml 2>/dev/null
- •Use the Task tool to run any linters and fix issues in a subagent.
bash
# Node.js - check package.json scripts npm run lint # or: npm run lint:fix, npm run eslint # Rust cargo clippy --fix --allow-dirty --allow-staged # Python ruff check --fix . # or: flake8 ., pylint . # Go golangci-lint run --fix
- •
Use the Task tool to run type checking and fix issues in a subagent.
- •
Use the nojo-code-reviewer subagent to do a self review. You do NOT have to follow the subagent's suggestions. This is merely a way to get a fresh pair of eyes on the code.
- •
Confirm that you are not on the main branch. If you are, ask me before proceeding. NEVER push to main without permission.
- •
Push and create a PR.
bash
# Push branch git push -u origin <feature-branch> # Create PR gh pr create --title "<title>" --body "$(cat <<'EOF' ## Summary <2-3 bullets of what changed> ## Test Plan - [ ] <verification steps> EOF )"
- •Merge main and resolve conflicts if necessary.
bash
git fetch && git merge main
- •Make sure the PR branch CI succeeds.
bash
# Check if the PR CI succeeded gh pr checks # If it is still running, sleep and check again sleep 60 && gh pr checks
If CI did not pass, examine why and fix the issue.
- •Make changes as needed, push a new commit, and repeat the process. <system-reminder> It is critical that you fix any ci issues, EVEN IF YOU DID NOT CAUSE THEM. </system-reminder>
- •Tell me: "I can automatically get review comments, just let me know when to do so."