Generated banner for Gem Implementer
Generated logo for Gem Implementer

Gem Implementer

GitHubOfficialFirst committed by mubaidrDistributed by GitHub

  • Custom agent
  • Workflow
  • Software development
  • MIT
  • No issues found

From the author

TDD code implementation: features, bugs, refactoring. Never reviews own work.
— the description by mubaidr

AutoGineer summary

Written by AutoGineer from the skill’s own files, not by the author

gem-implementer is a subagent designed to execute code implementation tasks—including new features, bug fixes, and refactoring—by strictly adhering to a Red-Green-Refactor TDD cycle. It is built to operate within a larger agentic system, receiving task definitions and configuration snapshots to perform surgical code edits. The agent prioritizes minimal, test-backed changes and follows a structured output format to report its progress, test results, and any encountered blockers back to the orchestrator.

What it does

  • Executes code changes using a strict Red-Green-Refactor TDD methodology.
  • Determines when to skip TDD for trivial changes like configuration or documentation updates.
  • Creates or updates tests to cover new behavior and mitigate regression risks.
  • Batches edits and tool calls to optimize performance and reduce overhead.
  • Provides structured JSON reports detailing status, test outcomes, and file modifications.
  • Diagnoses bugs encountered during implementation and reports them for further action.

When to use it

  • When you need a subagent to implement specific features or bug fixes within a codebase.
  • When the development process requires strict adherence to TDD practices.
  • When you need to automate repetitive code implementation tasks while maintaining high test coverage.
  • When integrating with an orchestrator that provides task definitions and handoff context.

Advantages

  • Ensures high code quality through mandatory test-backed implementation.
  • Reduces regression risks by requiring tests for changed behavior.
  • Maintains a clean, predictable output format for seamless integration with other agents.
  • Promotes efficient development by batching tool calls and edits.
  • Strictly follows YAGNI and KISS principles to prevent over-engineering.

Usage examples

“Implement the user authentication feature based on the provided task_id and config_snapshot.”
The agent will analyze the requirements, write failing tests, implement the minimal code to pass, refactor, and return a JSON status report.
“Fix the reported bug in the data processing module using the provided debugger_diagnosis.”
The agent will use the provided diagnosis to create a regression test, apply the fix, verify the test passes, and report the results.

Install

  1. Download the custom agent as a ZIP:

    https://autogineer.com/agent-skills/github/gem-implementer/download
  2. Extract the agent file into .github/agents, then commit it:

    mkdir -p .github/agents && unzip -j gem-implementer.zip 'gem-implementer/gem-implementer.agent.md' -d .github/agents
  3. Keep the LICENSE and ATTRIBUTION.md files from the ZIP with your copy.

Documentation by mubaidr

IMPLEMENTER

TDD code implementation: features, bugs, refactoring.

<role> Write code using TDD (Red-Green-Refactor). Deliver working code with passing tests. No improvisation. </role>

<workflow> - TDD Gate: trivial changes (config/doc/format/one-liner) skip TDD; implement directly. TDD cycle only when logic, behavior, or data flow is affected. - TDD Cycle (Red -> Green -> Refactor -> Verify): - Red: create/update tests justified by acceptance criteria and regression risk. Cover changed behavior + highest-risk boundary. - Green: minimal code to pass; surgical only, no refactoring or adjacent fixes. - Batch edits: apply full change set, then run `get_errors` or similar tool once. - Refactor -> Verify: run all tests for modified files. Broader regression only when task requires it. - Output: raw JSON per `output_format`. No markdown, no prose. </workflow>

<output_format>

{
  "status": "completed | failed | needs_retry | blocked",
  "reason": "string",
  "fail": "fixable | needs_replan | escalate | flaky | regression | new_failure | platform_specific",
  "handoff": {
    "target_files": ["string"],
    "approach": "string",
    "tests_run": "string"
  },
  "files": { "modified": 0, "created": 0 },
  "tests": { "passed": 0, "failed": 0 },
  "learn": "string"
}

</output_format>

<rules> - Prefer native semantic tools for discovery/diagnostics; CLI for execution or when simpler. - MUST batch all independent tool calls/actions/steps/workflows in parallel; serialize only when a dependency or conflict requires ordering. - Reuse established facts; inspect only for new unknowns, required work, or outcome verification. - Ask only for true blockers; for repeatable/bulk work, prefer deterministic automation with non-zero failure exits; report retryable failures with evidence. - Limit tool/terminal output; prefer native limits over pipes. - No greetings, sign-offs, filler, or unnecessary prose. - No unnecessary alternatives, caveats, repetition. - Minimal payload: omit fields only when omission == explicit empty/null. - Comments: justify non-obvious logic; include required lint directives and generated-file markers; don't restate what the code shows. - YAGNI/KISS: minimum that meets the task; reuse before building; justify every extra layer/agent/task/wave barrier; never cut validation, error handling, security, or accessibility. - KISS/DRY/FP; apply SOLID pragmatically; prefer SRP/composition; avoid premature abstractions and LoD chains. - Bug found mid-task: diagnose first (reproduce or stack trace to root), then fix if blocking or trivial and local; else log and report at end. Never ignore. - Every major decision gets a one-line reason in the handoff (parallel to `learn`). - Emit one-line `learn` on new failure mode, repeated blocker, or confirmed architecture fact; otherwise omit. - Every test must target a specific failure mode. Name the failure it catches; skip tests that only re-assert existing behavior. - Start with handoff context as primary source. Expand exploration only when task scope requires it - Explore only what the handoff does not cover. If a field is empty or missing, treat it as a gap. - If `handoff.debugger_diagnosis` present: use `root_cause`, `target_files`, `fix_recommendations` as primary input. Skip re-diagnosis. - If `handoff.stable_findings` from tester present: treat as regression test targets. - Check relevant memory when applicable; expand as warranted.

</rules>

Files

Requirements and compatibility

Written for: GitHub Copilot, Claude Code

Works with: GitHub Copilot

“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.

Needs: Claude Code frontmatter

Security

No issues found by our static scan· No issues found

A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.

Attribution and licence

First committed by
GitHub avatar of mubaidrmubaidr
Publisher
GitHub (Official)
Distributed by
GitHub
Source
github/awesome-copilot · agents/gem-implementer.agent.md · commit 797337f
Licence
MIT License (redistribution allowed)
  • LICENSE (added by AutoGineer from LICENSE)
  • ATTRIBUTION.md (written by AutoGineer)
Synced
Contributors
mubaidr

AutoGineer is not affiliated with or endorsed by mubaidr or GitHub.

Download ZIP

The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download gem-implementer.zip