Skip to content
Back to skills

Agnostic Ai Gh Issue

ASecurity

Take one GitHub issue from branch to merged PR with TDD. Use when asked to work, fix, or implement an issue by number.

  • 22 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 5, 2026
ai-agentsgobashgitdocumentation

Security analysis

A100/100

Scanned October 5, 2026

npx -y skills add Chemaclass/agnostic-ai --skill agnostic-ai-gh-issue --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Agnostic Ai Gh Issue?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Agnostic Ai Gh Issue
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/chemaclass-agnostic-ai-gh-issue/badge)](https://www.skillsdirectory.com/skills/chemaclass-agnostic-ai-gh-issue)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: agnostic-ai-gh-issue
description: Take one GitHub issue from branch to merged PR with TDD. Use when asked to work, fix, or implement an issue by number.
argument-hint: "[issue-number]"
x-claude:
  allowed-tools: "Read, Edit, Write, Bash(gh *), Bash(git *), Bash(go *), Bash(make *), Bash(./agnostic-ai *)"
disable-model-invocation: false
---

# GitHub Issue Workflow

## Context

Read both the issue body **and every comment** as requirements input. Maintainer follow-ups frequently add scope, edge cases, or override the original description; when a later comment conflicts with the body, prefer the comment.

::target claude
!`gh issue view ${ARGUMENTS#\#} --json number,url,title,body,labels,assignees,state,comments 2>/dev/null || echo "Provide an issue number"`
::end

Read the issue first: `gh issue view <number> --json number,url,title,body,labels,assignees,state,comments`.

## Instructions

### Phase 1: Setup

1. **Parse the issue number** from the text passed after the skill name (strip `#` if present).

2. **Assign yourself if unassigned**:
   ```bash
   gh issue edit <number> --add-assignee @me
   ```

3. **Create a branch** from fresh `origin/main` based on the issue type:

   Check that the worktree is clean. Fetch `origin/main`, stop if local `main` has unpublished commits, then fast-forward it. Never discard local work.

   Determine the branch prefix from labels:
   - `bug` → `fix/`
   - `enhancement` → `feat/`
   - `documentation` → `docs/`
   - No label → `feat/` (default)

   Branch name format: `<prefix><issue-number>-<slug>`

   ```bash
   test -z "$(git status --porcelain)" || exit 1
   git fetch origin main
   git switch main
   test "$(git rev-list --count origin/main..main)" -eq 0 || exit 1
   git pull --ff-only
   git switch -c <branch-name>
   ```

### Phase 2: Design

4. **Design the implementation** before editing:
   - Explore the codebase to understand affected areas.
   - Identify files that need changes.
   - Respect adapter independence: `.agnostic-ai/rules/no-cross-adapter-imports.md`.
   - Honor the adapter skeleton: `.agnostic-ai/rules/adapter-pattern.md`.
   - Plan the TDD approach (what tests to write first).

5. **Keep a short implementation plan** with:
   - Summary of what the issue requires.
   - List of files to create/modify.
   - Test strategy (unit per package, integration under `tests/integration`).
   - Step-by-step implementation order.

### Phase 3: Implement

6. **Implement following TDD**:
   - Write failing tests first (`*_test.go` next to the code under test).
   - Implement minimum code to pass.
   - Refactor while keeping tests green.
   - Wrap returned errors per `.agnostic-ai/rules/error-wrapping.md`.
   - Follow `.agnostic-ai/rules/test-conventions.md` (use `t.TempDir()`, `testutil.Chdir`, behavior-named tests).

7. **Run the gate**: the pre-push checks in `.agnostic-ai/skills/pr-sweep/SKILL.md` step 5 (`make ci-local` and the rest), each checked by its own exit code, never through `| grep | head`. Fix every failure before continuing.

8. **Regenerate derived artifacts when touched**:
   - Edited `internal/config/config.go` struct tags → `go run ./cmd/schemagen` (see `.agnostic-ai/skills/regen-schema/SKILL.md`).
   - Edited specs under `.agnostic-ai/` or any adapter → `go run ./cmd/agnostic-ai sync` then `go run ./cmd/agnostic-ai sync --check` (see `.agnostic-ai/skills/run-sync-check/SKILL.md`).
   - Changed what a target writes → `.agnostic-ai/rules/capability-fixtures.md`.
   - Touched code reachable from `cmd/agnostic-ai-wasm` → rebuild the playground (see `.agnostic-ai/skills/playground-rebuild/SKILL.md`).

### Phase 4: Ship

9. **Docs and changelog** for user-visible changes, per `.agnostic-ai/rules/docs-sync.md` and `.agnostic-ai/agents/changelog-curator.md`.

10. **Review the final diff** for duplication, dead code, debug output, and naming drift. **Commit** per `.agnostic-ai/rules/conventional-commits.md`, GPG-signed, with `Related to #<issue-number>` in the body.

11. **Push and open the PR**. Write the body to a file (a short summary, decisions worth challenging, checks run, `Closes #<issue-number>`) and set `body_file` to its path.
    ```bash
    git push -u origin <branch-name>
    gh pr create --assignee Chemaclass --label "<bug|enhancement|documentation>" \
      --title "<type>(<scope>): <description>" --body-file "$body_file"
    ```

### Phase 5: Review and merge

12. **Review, gate, and merge** the PR with `.agnostic-ai/skills/pr-sweep/SKILL.md` steps 2 to 6.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…