# What Kind of Feedback Does the Reviewer Agent Provide in the `/apply` Pipeline?

> Discover the dual-layered feedback from the reviewer agent in the /apply pipeline. Get machine-readable edits and narrative suggestions to improve your job application documents.

- Repository: [Mads Lorentzen/ai-job-search](https://github.com/MadsLorentzen/ai-job-search)
- Tags: api-reference
- Published: 2026-08-29

---

**In the `/apply` pipeline, the reviewer agent delivers dual-layered feedback consisting of Part A (machine-readable JSON edit operations) and Part B (narrative suggestions for strategic content improvements), which the drafter agent processes to refine job application documents.**

The `MadsLorentzen/ai-job-search` repository implements a sophisticated multi-agent workflow where the `/apply` command orchestrates collaboration between a drafter and reviewer agent. According to the source code in [`.claude/commands/apply.md`](https://github.com/MadsLorentzen/ai-job-search/blob/main/.claude/commands/apply.md), the reviewer operates as a second Claude-Code instance that critiques drafts produced by the primary drafter. This feedback architecture ensures mechanical precision for text replacements while enabling high-level editorial guidance for tone, relevance, and completeness.

## The Dual-Layered Feedback Architecture

The reviewer agent's output is explicitly divided into **two distinct parts** that serve complementary functions in the refinement process. This separation allows the drafter to handle deterministic changes automatically while applying human judgment to strategic rewrites.

### Part A – Structured JSON Edits

Part A consists of a **JSON array containing concrete edit operations** that specify exact text replacements. Each object in the array includes three fields: the target `file`, the `old_string` to locate, and the `new_string` to insert.

The drafter applies these edits automatically using the `Edit` tool without rereading the files, as the operations are deterministic and intended to be applied verbatim. This structured approach ensures that mechanical corrections—such as formatting fixes, typo corrections, or specific phrasing adjustments—are executed precisely without ambiguity.

### Part B – Narrative Content Suggestions

Part B provides **free-form, higher-level guidance** that cannot be expressed as simple text replacements. This narrative feedback directs the drafter to manually rewrite or augment content using editorial judgment. All suggestions must comply with the "NO unverified company claims" rule defined in [`.claude/skills/job-application-assistant/03-writing-style.md`](https://github.com/MadsLorentzen/ai-job-search/blob/main/.claude/skills/job-application-assistant/03-writing-style.md), requiring independent verification via `WebFetch` or `WebSearch` before inclusion.

The narrative feedback typically falls into three categories:

- **Company/department-specific angles** – Guidance on weaving verified research into the cover-letter opening or motivation paragraph to demonstrate genuine interest.
- **Action-oriented reframing** – Instructions to rewrite passive or generic phrasing in the CV profile, cover-letter opening, or bullet points using stronger, results-driven language.
- **Missing (gap) identification** – Direction to acknowledge genuine skill gaps without stuffing invented keywords, ensuring honest representation of qualifications.

## Implementation in the Source Code

The reviewer agent's role is codified across several key files in the repository. The [`.claude/commands/apply.md`](https://github.com/MadsLorentzen/ai-job-search/blob/main/.claude/commands/apply.md) file defines the workflow mechanics, specifying how the drafter must parse and act on both Part A and Part B feedback.

The skill files in `.claude/skills/job-application-assistant/` provide the behavioral constraints. According to [`03-writing-style.md`](https://github.com/MadsLorentzen/ai-job-search/blob/main/03-writing-style.md), the reviewer must enforce verification requirements before suggesting company-specific claims. The [`04-job-evaluation.md`](https://github.com/MadsLorentzen/ai-job-search/blob/main/04-job-evaluation.md) file notes that the reviewer also researches the company and feeds that intelligence back into the application strategy.

As documented in [`README.md`](https://github.com/MadsLorentzen/ai-job-search/blob/main/README.md), the architecture uses a "token-efficient reviewer dispatch" pattern to minimize context window usage while maximizing feedback quality. The [`SETUP.md`](https://github.com/MadsLorentzen/ai-job-search/blob/main/SETUP.md) file lists the reviewer critique as a mandatory step in the application preparation workflow, confirming its integral role in the pipeline.

## Summary

- The reviewer agent in the `/apply` pipeline provides **two-part feedback**: structured JSON edits (Part A) and narrative suggestions (Part B).
- **Part A** uses deterministic `old_string`/`new_string` pairs applied automatically via the `Edit` tool for mechanical corrections.
- **Part B** requires manual implementation by the drafter and covers strategic improvements including company angles, active phrasing, and honest gap acknowledgment.
- All company claims suggested in Part B must be **independently verified** using `WebFetch` or `WebSearch` before inclusion.
- The workflow is defined in [`.claude/commands/apply.md`](https://github.com/MadsLorentzen/ai-job-search/blob/main/.claude/commands/apply.md) and constrained by skill files governing writing style and job evaluation standards.

## Frequently Asked Questions

### How does the drafter agent apply Part A feedback differently from Part B?

The drafter applies Part A feedback automatically using the `Edit` tool, which executes the JSON-specified text replacements verbatim without requiring file rereading. In contrast, Part B feedback requires the drafter to manually rewrite content, exercising editorial judgment to incorporate the narrative suggestions while ensuring all new claims pass independent verification.

### What happens if the reviewer suggests a specific fact about the target company?

According to [`.claude/skills/job-application-assistant/03-writing-style.md`](https://github.com/MadsLorentzen/ai-job-search/blob/main/.claude/skills/job-application-assistant/03-writing-style.md), the drafter must verify every company claim via `WebFetch` or `WebSearch` before inclusion. The reviewer may suggest angles or topics to research, but the drafter cannot insert unverified information, even if suggested by the reviewer agent.

### Why is the feedback split into two parts rather than a single response?

The dual-layer design separates **mechanical precision** from **strategic creativity**. Part A ensures deterministic, error-free text operations, while Part B allows for nuanced editorial guidance that requires human-like judgment. This separation prevents the drafter from blindly applying complex suggestions that need contextual adaptation, while automating simple corrections that do not require reinterpretation.

### Where is the reviewer agent spawned in the codebase?

The reviewer agent is spawned and orchestrated within [`.claude/commands/apply.md`](https://github.com/MadsLorentzen/ai-job-search/blob/main/.claude/commands/apply.md), which defines the `/apply` workflow. The [`README.md`](https://github.com/MadsLorentzen/ai-job-search/blob/main/README.md) describes this as a token-efficient dispatch pattern, and [`SETUP.md`](https://github.com/MadsLorentzen/ai-job-search/blob/main/SETUP.md) confirms the critique step as a standard component of the job application preparation process.