Implement Feature

Implements a feature from its specification. Reads the spec, designs architecture, writes code and tests. Delegates to the Forja (Dev) agent

What Is Implement Feature?

The "Implement Feature" skill is a workflow orchestration tool designed to automate and streamline the process of implementing software features from well-defined specifications. This skill leverages the Forja (Dev) agent to interpret product requirements, architect solutions, write code, and produce comprehensive test coverage. By managing the entire implementation lifecycle—from initial specification handoff through to structured QA delivery—this skill ensures a disciplined and repeatable approach to feature development.

Why Use Implement Feature?

Modern software projects demand consistency, traceability, and efficiency as teams move from approved feature specifications to production-ready code. The "Implement Feature" skill addresses these needs by:

  • Reducing Human Error: Automating checklists and architectural decision records (ADRs) ensures nothing critical is omitted.
  • Accelerating Delivery: By delegating repetitive tasks and enforcing process, teams can focus on innovation rather than administration.
  • Improving Quality: Structured testing and handoff routines minimize defects and streamline QA.
  • Enhancing Collaboration: Clear handoff notes and documentation improve communication across development and QA teams.

Whether you are working in a fast-paced startup or a large-scale enterprise, this skill brings discipline and repeatability to feature implementation, directly improving product delivery timelines and reliability.

How to Get Started

Getting started with the "Implement Feature" skill requires a feature specification that has been reviewed and approved. The process is initiated via a simple command, with the option to reference a specific spec file if needed.

Basic Usage

To implement a feature by name:

/implement-feature user-authentication

To implement a feature with an explicit specification reference:

/implement-feature docs/specs/webhook-event-system.md

Upon execution, the skill orchestrates the end-to-end process, automatically involving the Forja (Dev) agent for the technical implementation. The output includes the source code, tests, architecture decisions, and QA handoff documentation.

Key Features

The "Implement Feature" skill encapsulates a comprehensive feature development workflow, including the following capabilities:

1. Verified Specification

Handoff

On invocation, the skill runs a SIGN IN checklist to ensure the feature spec is present, complete, and ready for implementation. This step prevents ambiguities and miscommunication later in the development process.

2. Architecture Design and

Documentation

If the feature requires significant architectural changes, the skill prompts the creation of an Architecture Decision Record (ADR). ADRs provide traceability and context for design choices, benefiting both current and future maintainers.

Example ADR:

## ADR-001:

Webhook Event System

## Status
Accepted

## Context
The system needs to notify external services via webhooks when certain events occur.

## Decision
Introduce an event dispatcher and webhook handler modules.

## Consequences
Modular event system improves extensibility but adds complexity to error handling.

3. Interface Definition and

Implementation

The skill defines clear interfaces and contracts before implementation. It then generates the necessary code in the src/ directory, adhering to the project’s coding standards.

Example Interface (Python):

class WebhookHandler:
    def send_event(self, event_type: str, payload: dict) -> bool:
        """Send a webhook event and return success status."""
        pass

4. Comprehensive

Testing

Unit and integration tests are created in the tests/ directory. The skill ensures that critical paths and edge cases are covered, supporting robust and maintainable codebases.

Example Unit Test (Python):

def test_send_event_success():
    handler = WebhookHandler()
    result = handler.send_event('user_signup', {'user_id': 123})
    assert result is True

5. Checklists and Quality

Gates

Key milestones are enforced through automated checklists:

  • Implementation Complete (TIME OUT 1): Confirms code and tests are complete and requirements met.
  • Pre-Delivery (TIME OUT 2): Validates readiness for QA, including documentation and test coverage.
  • SIGN OUT: Ensures all deliverables are present and the handoff is structured.

6. Structured QA

Handoff

The final output includes a summary of files changed, testing instructions, and any known limitations. This improves the downstream QA process and reduces back-and-forth communication.

Best Practices

  • Maintain Up-to-Date Specs: Always start with a clear, current feature specification to maximize automation benefits.
  • Review ADRs: For significant changes, scrutinize ADRs to ensure alignment with overall system architecture.
  • Test Coverage: Aim for comprehensive test coverage, especially for critical and edge-case scenarios.
  • Document Known Limitations: Clearly communicate any constraints or open issues in the QA handoff notes.
  • Iterative Feedback: Use output from the skill to inform product, design, and QA teams for continuous improvement.

Important Notes

  • The "Implement Feature" skill requires an approved and well-documented feature spec. Incomplete or ambiguous specs will hinder automation.
  • The skill is tightly integrated with the Forja (Dev) agent, which handles code generation and testing tasks.
  • Manual intervention may be necessary for highly complex features or when integrating with legacy systems.
  • Always verify that the implementation matches the acceptance criteria outlined in the specification.
  • Regularly update templates, checklists, and coding standards to ensure consistency as project requirements evolve.

By adopting the "Implement Feature" skill, teams can reliably convert specifications into production-ready code, increasing both productivity and quality across the software development lifecycle.