Skip to main content
FB.
Scale Intermediate 38 min 🇬🇧 EN FR ai-agentsharness-engineeringcontext-engineeringcode-reviewciteam-workflow

From code to merge: organizing agent workflows as a team

Dev With AI talk guide: agent harnesses, local checks, AI reviews, bounded corrections and results tied to the right commit. Examples and slides.

Jump to summary
• Updated Oct 15, 2026
Florian Bruniaux

Written by Florian Bruniaux

AI Founding Engineer at Méthode Aristote, 13 years scaling engineering teams from developer to CTO. Builds open-source developer tools, see what else I've shipped.

What you'll set up

  • ✓ Organize checks across the workstation, repository, CI and team
  • ✓ Consolidate reviews and verify proposed corrections
  • ✓ Bound agents’ attempts and tie results to the commit being merged
  • ✓ Choose an improvement and measure its effect on the team’s work

Prerequisites

  • → Understand pull requests, tests and the role of CI

Agents produce code and pull requests in parallel. Someone still has to understand the change, verify its behavior and decide whether to integrate it. This is the problem I presented on October 12, 2026 at Dev With AI, at the Forum des Images in Paris, in my talk “Coder plus vite avec l’IA, livrer mieux en équipe : du code au merge”, about coding faster with AI and delivering better as a team.

I currently work as AI Founding Engineer at Méthode Aristote. My focus is harness and context engineering: the information agents receive, their tools, their permissions and the checks that govern their work. My AI background began in 2017 with NLP, machine learning and big data; since 2025, I have worked daily with generative AI and coding agents.

This guide follows the talk’s argument and develops the explanations I gave on stage. It separates our practices, the workflow we are trying to organize and simplified examples. It does not present the whole target harness as already deployed or its benefits as measured.

For the other talks from the day: read the Dev With AI conference synthesis, with the full illustrated report in English and French.

Lire ce guide en français · Download the 18 content slides, without speaker notes (English PDF)

The 18 content slides appear alongside the explanations, including the agenda and resources. The cover, my bio and the photograph of my workstation are omitted. The slides are translated into English, retaining the original layout, diagrams and numbering. Click a slide to open it at full size.

TL;DR

I want to check early, organize review and know when to stop corrections. Producing more PRs helps only when verification and decisions can keep up.

I start with local checks suited to the change and a PR people can understand. I treat reviewers’ feedback as proposals to verify against the current code. After a correction, I inspect the new diff and the results for that commit. Required tests and a human decision remain necessary in the workflow presented here.

Recurring problems drive harness improvements. To decide what deserves to stay, I look at human effort, waiting, rework, quality after delivery and costs, including failed attempts.

Four stages: check early, organize review, decide on the merge and improve the harness.
Slide 2. The talk follows four stages: early checks, organized review, the merge decision and learning from the work performed.

1. Where work accumulates after code generation

Recaps stay visible. Open the sections you want to explore further.

At a glance

Producing more PRs can increase waiting in review or CI. I look for where work stops, separating active work from waiting.

Read the details, examples and slides

When several sessions produce PRs faster than the team can verify them, PRs pile up. An additional session can increase output without reducing delivery time. The question becomes: what is waiting, and who can unblock the next step?

Work and waiting need separate records. A PR may wait for someone to become available, then require time to read the diff, reconstruct the context and discuss a correction. CI may wait for a runner, then consume compute while executing tests. A retry adds compute and may require another review. These activities have different causes and costs.

Review and CI can proceed in parallel. But when a necessary check is missing, the merge decision waits. Counting commits or open PRs alone hides this downstream work.

On a recent PR, I therefore look for the points where progress stopped: missing context, a missing test result, an unavailable reviewer or a correction that needed rework. These are more useful for choosing an improvement than the number of active sessions.

Coding faster moves the cost to verification opens my Engineering the Review Loop series: it connects these queues to delivery measures and separates attempt cost from the cost of accepted work.

Parallel sessions produce PRs. Human review and CI each involve waiting and work before the merge decision.
Slide 6. Waiting for a reviewer, reading code, waiting for a runner and running compute are different activities to track.

2. The four harness layers and local checks

At a glance

The harness connects the workstation, repository rules, checks and coordination. Local verification prepares the PR and remains complementary to mandatory CI tests.

Read the details, examples and slides

I use harness to mean the instructions, tools and checks that govern agents, together with their permissions and budgets. Its operation also depends on organization: who reviews, who answers questions and who decides?

In Harness engineering for coding agent users (April 2, 2026), Birgitta Böckeler distinguishes guides before action and sensors after action. Either can use deterministic tools or model judgment. Instructions guide; tests and reviews supply feedback. Maintainability, architecture and behavior need different controls. Human steering remains necessary; passing agent-written tests alone does not establish intended behavior.

For the layer shared by the team, my article on the AI instruction system at Aristote explains common sources, ownership and drift checks. It develops the organizational side of context engineering.

To choose what belongs in context, the L0-to-L5 context engineering playbook starts from the observed problem: missing information, irrelevant rules or behavior that needs checking. It distinguishes persistent constraints from procedures loaded for a task. These context capabilities complement the four harness layers below; the two frameworks describe different things.

I read it as four layers, from bottom to top:

LayerWhat it containsWhat the team needs to find
WorkstationTools and local configurationThe means to work and run checks
RepositoryShared instructions and testsThe common rules for the change
ExecutionLocal tests and review, CI checks and previews, PR reviewsWhat ran, on which version, with what result
CoordinationSessions, queues, budgets and responsibilitiesWhat is waiting and who needs to act
Four harness layers: workstation, repository, execution of checks, and coordination of sessions, budgets and responsibilities.
Slide 7. Checks run in several places; coordination makes their results and responsibilities usable by the team.

Check on the workstation before asking for another review

Locally, I read the diff and run the checks relevant to the change. Finding an error here may avoid a correction push, a CI retry and another request to the reviewer. The talk illustrates this possible rework; it does not quantify savings.

Local execution uses the workstation’s CPU and RAM. Several worktrees, builds and test suites can exhaust those resources. A review orchestrated from the workstation may also call a billed remote model: “started locally” does not mean “free” or “executed entirely on this machine.”

When several worktrees coexist, Worktree Sweep, one of my personal projects, inventories working branches and local files to help identify what needs preserving. Its macOS MVP remains read-only: it does not delete worktrees.

Local checks prepare the PR. They do not replace mandatory CI tests. A draft PR can be opened early; before marking it ready for review, explain the change, the tests performed and what remains to be checked.

Local diff review and tests, followed by mandatory CI checks and review results on the PR.
Slide 8. The arrow represents possible rework after an error is found late. It is not a curve of measured savings.

3. An understandable PR, appropriate checks and a choice of reviewers

At a glance

A useful PR explains the problem and the checks that ran. Verification depends on the change’s risk; in the workflow presented, a person retains the merge decision.

Read the details, examples and slides

The description should make the problem understandable before someone works through the entire diff. It serves people and agents. In my workflow, the summary explains the change to the team; a collapsible “AI et détails” section collects the technical context that a PR-reading skill retrieves.

In the Aristote example shown in the talk, pulling dependency changes caused AI configuration synchronization to fail. Installed dependencies were out of date. The fix updates them before synchronization. This summary explains the trigger and the expected outcome; the details can then show the hooks and checks.

A useful description gives the problem, the behavior after the change, the checks actually executed, their results and remaining limits. A list of tests or a comment saying “it works” is not sufficient evidence of behavior.

For adaptable starting templates, my Claude Code Plugins project includes PR descriptions, review requests and merge checklists. These help structure the work; each PR still needs its own checks and results.

Aristote PR 4248: a translated summary for the team, an AI and details section for agents, tests performed and limits.
Slide 9. English translation of the original PR excerpt. The summary explains the synchronization fix; the details give agents context. The description does not replace verification.

Start with what the change could break

ChangeObservable checkDecision to clarify
Button or interfacePresence, visibility, click and mobile renderingIs the journey readable and usable?
Shared componentEnd-to-end journeys on affected pagesWhich pages and uses could be affected?
Access rightsAllowed and denied access, through the UI and APIWho should be able to do what, on which data?

An agent, a person or both can perform these roles. The agent needs the risk to check, the expected result and the necessary tools. A person can add cases, replay the journey and resolve an uncertain business rule.

Present in the DOM does not mean visible, readable or functional. For a button, inspect the rendering and test the expected action. A shared component may affect several pages despite a short diff. For access rights, hiding a button does not secure the API: the server must also reject an unauthorized request.

A test written but not run remains a check to perform. These targeted checks supplement the team’s usual controls.

Checks for an interface, a shared component and access rights, with complementary roles for AI and people.
Slide 10. The change determines the risks to check. The roles are complementary, and the usual tests remain required.

Make the need for review visible

The talk proposes two GitHub label names: Review AI and Review Human. They are examples for routing review, not evidence of a routing system deployed everywhere.

A mechanical, bounded change covered by tests may receive AI review within a scope authorized by the team. Access rights, private data, payments, business calculations and poorly understood consequences require a person’s review. A small PR can have large consequences. When in doubt, involve a person; after a push that changes the scope, reassess that choice.

The label helps the team find PRs waiting for them and helps an agent select those it may process or prepare. A GitHub filter triggers nothing by itself: a workflow must actually use it. The label does not authorize merging. Required checks still apply and, in this workflow, a person decides whether to integrate the change.

Review AI and Review Human labels, selection criteria and GitHub filters for open PRs awaiting review.
Slide 11. Example labels for routing review. A filter does not start automation, and a label does not authorize merging.

4. Consolidate three reviews and verify suggested fixes too

At a glance

I gather feedback to check each finding, group duplicates and retain disagreements. A reviewer can identify the right defect and suggest the wrong fix, so both need checking.

Read the details, examples and slides

At Aristote, we defined a trio: CodeRabbit, Marc Hugon’s FriendlyReviewer and Claude as a native review agent. The native Claude agent is separate from the Claude bot operating on GitHub. In the workflow described in the talk, CodeRabbit and FriendlyReviewer work remotely on an already pushed commit; coordination happens from the workstation.

All three readers need to examine the same version and comparison base. We also need to know what they actually covered. On the PR used in the talk, CodeRabbit reported excluding Markdown, although our skills are written in Markdown. A reviewer’s name therefore does not guarantee that every file was read.

That PR presented the setup and GitHub reviews. It demonstrated neither a complete execution of the local trio nor a measured benefit. More readers are useful only if their feedback can be acted on.

Process feedback together

The workflow presented in the talk as /tech:pr-feedbacks organizes three steps:

  1. Collect all feedback on the PR.
  2. Validate each finding against current code, group duplicates and expose disagreements.
  3. Correct the accepted problems, using several agents or models as needed, then rerun the relevant tests and reviews.

This is a custom workflow I am describing, not a standard command bundled with review tools.

A finding may concern an old version, lack context or conflict with another proposal. Several identical comments are not several bugs. The coordinator maintains the link between each problem, the decision and the correction, and checks that the changes remain coherent with each other.

For the human reviewer, the synthesis must preserve disagreements, limits and decisions still needed. A rejected finding deserves a verifiable reason. A correction that has been started needs a result, not just the name of the agent assigned to it.

To evaluate another reader’s contribution, When an independent reviewer earns its place proposes a comparison on the same diff. Operating a multi-reviewer system safely develops roles, permissions and degraded outcomes. Their protocols do not establish that our trio has already passed that evaluation.

CodeRabbit, FriendlyReviewer and Claude examine the same version. The pr-feedbacks skill collects, validates and coordinates fixes for their findings.
Slide 12. Three readers feed one review to consolidate. Each finding needs verification, and fixes need fresh results afterward. FriendlyReviewer: friendlyreviewer.fr.

A correct diagnosis can produce the wrong fix

On an Aristote PR, CodeRabbit identified a test that accepted any error. The diagnosis was useful; the suggestion nevertheless used the same expected message for cases that required different messages.

Here is the talk’s simplified example, not the PR’s exact cases or messages:

CaseAssertion too vagueFix too generalExpected behavior in this example
Missing documentAn error occursMessage is “Refusé” (denied)“Introuvable” (not found)
Forbidden accessAn error occursMessage is “Refusé” (denied)“Refusé” (denied)

The vague assertion can pass because the code fails for the wrong reason. The suggestion adds precision but gets the first case wrong. Assertions need to match the expected behavior, then the tests need to run again.

There are therefore two decisions to verify: the reported problem and the proposed correction. If the expected behavior is unknown, the agent needs a human decision. After the fix, the new diff and results must be reviewed.

Two simplified cases, a missing document and forbidden access: a vague assertion, an overly general suggestion, then a distinct expected error for each case.
Slide 13. A simplified example of the mechanism encountered in PR 4252. The bot’s diagnosis and proposed fix need separate verification.

5. Bound corrections, read CI and tie results to the right commit

At a glance

Corrections have an objective, a budget and a stopping condition. I distinguish a failed test from one that never ran and tie results to the commit checked.

Read the details, examples and slides

An agent correcting code after review or CI needs an objective, an allowed number of attempts and a budget set before it starts. Otherwise, a new attempt may only repeat the previous one.

Designing a bounded review loop develops the controller contract, counters and failure cases. A green review is not a merge gate adds revision-bound results and branch policy. Both distinguish a proposed control from behavior verified in a repository.

SituationExpected next step
Objective reachedHand over the change and results for review and decision
Observable progress and remaining budgetContinue a correction within the agreed scope
Same error without progress, missing decision or exhausted budgetHand over the attempts, blocker and known person to contact
Correction loop with three outcomes: objective reached, another attempt when progress and budget allow, or a handoff when blocked.
Slide 14. Stopping should leave an actionable result or blocker. Stopping the agent does not validate the PR.

A useful handoff explains what was attempted, what remains unknown and the next possible action. An exhausted budget does not prove a bug. If the agent runs inside a CI job, that job’s status depends on its role; mandatory tests must still produce their own results.

Red CI first needs a diagnosis

I start by reading the logs. Two cases from the talk show why:

  • The test ran and found an incorrect calculation. Correct the code, then retest.
  • The test never started because a dependency was missing. Restore the environment, then execute the test. The calculation has not yet been verified.

If the expected result is itself unclear, clarify the business rule. If the job result is missing, retrieve it. Automatically requesting a code change whenever a red cross appears mixes these situations together.

Two failed CI runs: an executed test finds an incorrect calculation; another test never starts because a dependency is missing.
Slide 15. An error in tested behavior calls for a code fix; a test that never started first calls for restoring the environment.

Results stay attached to the tested version

Commit A was tested and reviewed. The agent pushes a correction: commit B. Successes on A remain results for A; they do not prove the behavior of B’s changes. The previous review does not automatically cover what changed.

Commit A tested and reviewed, a correction pushed as B, then verification of required tests on B and of the A-to-B diff before merging.
Slide 16. After a push, identify the checks to repeat on the version that will be integrated.

Before merging B, I inspect what changed between A and B, which tests ran on B, their results and the version actually reviewed. I repeat the checks affected by the change, plus those required by the team. Not everything necessarily needs repeating, but what remains covered and what needs rechecking must be explicit.

A running, skipped or canceled test is not a passed test. This does not prove a bug; a result is missing. An exemption follows the team’s rules. A useful PR record brings together the commit, checks and results, review coverage, open questions and human agreement.

6. Turn recurring problems into tested controls

At a glance

A recurring error needs a precise case and a correction to its cause in code, tests or instructions. Its effect then needs checking on that case and on subsequent changes.

Read the details, examples and slides

Correcting a PR resolves the current case. When the same error, false alert or wasted effort returns, we also need to examine what caused it.

I open an issue containing the precise case, expected result and linked PR. Depending on the cause, the response may be a missing regression test, a clearer instruction or additional context for the reviewer. A new instruction is not always the best response.

The talk’s example is a mishandled empty list: fix the code, add a test for that case and clarify the instruction if it contributed to the problem. Then replay the case and the other affected behaviors. A correction that handles an empty list but breaks a nonempty one has not met the need.

The next check happens on later PRs. Does the problem return? Does the new rule produce false alerts or extra work? It must be possible to revise it, shorten it or remove it when it does not help.

Installing a rule does not demonstrate a benefit. The harness evolves with the code, tools and team. Its controls need their own verification cases and someone able to maintain them.

Diagnose and repair context drift, part 2 of my Context Engineering series, develops the loop of observing, locating the cause, repairing the source and replaying the case. It separates evidence that an instruction loaded from evidence that the agent followed it. This extends the maintenance approach without establishing that a complete self-learning loop has been tested.

Turn recurring review comments into tested controls then examines the control, its reserved positive and negative cases, its owner and its removal. It separates improvements to the author’s harness from improvements to the reviewer’s harness.

My ctxharness tool addresses part of this maintenance: finding facts that have become false between code and instructions, such as an outdated version or file path. These static checks complement behavioral cases. The article on portable agent configuration explains why an instruction being present, installed, loaded or invoked does not yet demonstrate that it is effective.

Recurring problem, GitHub issue, cause correction and case replay. An empty-list example adds a regression test and clarifies instructions when needed.
Slide 17. The issue preserves the case and expected result. Replay it, check other behaviors and follow later PRs.

7. Measure what the team gains and choose the next improvement

At a glance

I report faster delivery at Aristote without a measurement isolating the harness’s effect. To choose what comes next, I look at human effort, waiting, rework, post-delivery quality and failed-attempt costs.

Read the details, examples and slides

At Aristote, I observe a clear acceleration in delivery. In the talk, I describe our pace: a feature in a few hours, an epic in a few days. That is the pace I observe in our team. The talk does not provide a controlled comparison that attributes a quantified benefit to the reviewer trio or the whole harness.

Florian’s experience at Aristote: faster delivery, a feature in a few hours and an epic in a few days.
Slide 18. The pace I observe at Aristote, as presented in the talk: a feature in a few hours and an epic in a few days. This practitioner report does not measure a benefit attributable to the harness alone.

The question now is where we can save more time, with what quality and at what cost. Take consolidating bot comments before a person resumes the PR:

ObservationWhat we want to understand
Human time spent reading, sorting and resolving disagreementsDoes the agent reduce work or move it elsewhere?
Time between review request and mergeHow much is work, and how much is waiting?
Corrections and bugs after deliveryAre we reducing rework without letting more defects through?
Model and CI costsWhat is the total cost, including failed attempts?

To observe Claude Code sessions, I develop ccboard, a local dashboard. Its counters still need scrutiny: my article on three ways to measure AI usage examines their scope, possible double counting and the difference between API-equivalent cost and an invoice. A session dashboard does not by itself measure the quality of delivered work.

The article on cost per accepted task develops the accounting question: failed attempts and human corrections count too.

Two review-series parts clarify what can be measured: 5 AI code reviewers, 1 repository, and what developers did next analyzes a historical export closed on September 28; Testing Opus 5.5 as the code-review baseline proposes the next comparison. The first records visible actions without ranking quality; the second reports no new model run.

Waiting for a runner and reading comments need separate tracking. Before-and-after comparisons need similar PRs: a large functional change and a tiny mechanical correction do not make a useful comparison. Different outcomes can also come from a scope change or the people available.

When a harness adds cost without improving the result

Added on October 14, 2026, after the talk.

In Are Harnesses Worth the Cost?, Naresh Jain (October 13, 2026) compares Sol and Luna at low reasoning effort on one greenfield Java service, 10 attempts per condition and 178 identical external tests. Both conditions receive the brief and baseline repository instructions: “without harness” does not mean without context.

ModelWithout harnessWith harness
GPT-6 Sol10/10 accepted; ~$0.406/attempt10/10; ~$2.679/attempt
GPT-6 Luna3/10; ~$0.086/attempt10/10; ~$0.273/attempt

API-equivalent estimates exclude setup, maintenance and repairs. Small sample, unusually detailed brief, findings not generalizable to our PRs. Final-gate-only checking remains untested.

My article How to read a token-compression benchmark provides a reading checklist applicable here: matching tasks, versions and acceptance criteria, including failed attempts. It also explains why comparing complete configurations cannot attribute their difference to a single component. Its examples concern token reduction; they do not reproduce Jain’s experiment.

For the workflow in this guide, I take away a question to test on our changes: which checks prevent enough defects or rework to justify their cost? Another review or a test rerun after every edit needs a measure of what it contributes. Verification frequency and the checks required to accept a PR remain separate decisions.

The studied harness provides feedback while building a service; the talk’s setup also organizes reviews, responsibilities and merging within a team. Jain’s results therefore measure neither our reviewer trio nor our delivery pace. Testing our organization would require comparable PRs with the same acceptance criteria, accounting for rework and human effort, and attaching every result to the commit actually checked. I did not run that comparison as part of the talk.

The Luna/Astra pilot prepared without model calls

Our preparation status on October 14, 2026. A separate pilot plans 12 attempts on 3 frozen tasks: gpt-6-luna and gpt-6-astra, each at medium and xhigh. These identifiers come from the installed Codex client’s catalog. The 31 local tests and 6 isolation checks pass. Four client sessions use fixed responses from a local server; 12 confined evaluations use operator-written control submissions. Interruption disconnects the local stream and prevents continuation.

No benchmark model has been called; the budget remains undecided. Actual access, provider-applied effort, consumption, final counters after interruption, a hard limit during a response and a memory ceiling remain unverified. This preparation neither reproduces Jain’s Sol/Luna experiment nor measures gains from our review workflow. One attempt per task and configuration will qualify the pilot, not establish a ranking.

Try one change on the next PR

I suggest returning to a recent PR with three questions: what went wrong, what took the most time and what do we change on the next PR?

Choose one action and the person who can act. If the team always asks “what did you test?”, have the agent preparing the PR record the checks run, their results and their limits. On the next PRs of the same type, look for fewer questions, less waiting and less rework without more bugs.

Keep what helps, adjust or abandon the rest. If the description becomes a wall of text, shorten it. If an additional review produces nothing actionable, inspect its coverage and the work it adds. Removing a required check to improve the delay does not demonstrate better delivery.

Return to a recent PR, choose one improvement for the next PR, then check waiting, rework and bugs.
Slide 19. Choose one observable change, then keep, adjust or abandon it according to its effects on later PRs.

Connect the merge to delivery and use

Journey from need and plan to code, tests, an explained PR, reviews and CI, then human decision, merge and delivery. Feedback after delivery improves the harness.
Slide 20. A view of the workflow to organize, whose capabilities are not necessarily all active. Feedback after delivery informs improvements.

The journey starts with a clarified need and a plan, followed by code and local tests. The PR makes the change understandable; reviews and CI provide results; the team decides whether to merge. Delivery and verification in use still remain. Merging does not mean the code has already been deployed and verified in production.

Bugs, feedback, time and costs inform the next iteration. I develop this connection with the whole team’s work in Lean and AI: work that reaches users. The harness requires technical skills to configure, test and automate, and organization to distribute work, review and decide.

Questions after the talk

At a glance

I distinguish feedback coordination from correction tasks. A complete self-learning loop has not been tested; the extensions described remain to be evaluated.

Read the details, examples and slides

Added on October 14, 2026, following questions received after the talk.

Does one agent process the feedback, or are responsibilities split?

The setup presented separates coordination from corrections. A coordinating agent gathers feedback, checks findings against current code and keeps track of the whole change. Accepted fixes can be assigned to several agents or models as needed. This does not require a new agent for every comment or every step.

The split depends on how the fixes relate to each other. Independent problems can be assigned separately; changes affecting the same files or business rule need closer coordination. A delegated task needs a confirmed problem, a defined scope and a result to verify. The coordinator then reviews the complete diff and results to check that the changes work together.

/tech:pr-feedbacks is the name used in the slides. In my current Aristote instructions, /tech:pr-feedback handles collection and reporting without making changes, while /tech:pr-reconcile handles authorized corrections within a bounded cycle. Separating these functions does not require a different agent for every step. The section on consolidating reviews explains the checks shared by these roles.

Have you tested a self-learning loop for recurring problems?

I have not yet tested a complete self-learning loop. The mechanism presented in the talk preserves the case in an issue, addresses its cause, reruns the relevant tests and observes subsequent PRs. It improves code, tests or harness instructions; it does not describe retraining the model.

Automation could propose a regression test or an instruction change based on an observed problem. The old and new versions would then need comparison on that case and other behaviors, followed by checks that the change reduces errors without creating false alerts. The change would need to remain versioned, reviewable and reversible. This is a possible extension, rather than a complete loop I have already tried.

The chapter on recurring problems develops this approach. My article on the team’s AI instruction system covers shared instruction maintenance and drift checks.

YSNK

  • Verification capacity matters. More PRs produced can mean more waiting.
  • Reviews need checking. Confirm the diagnosis and the fix against current code.
  • Correction has a limit. Set the objective, attempts and budget, then hand over useful facts.
  • Results concern a commit. After a push, inspect the diff and repeat the necessary checks.
  • Benefits concern the complete workflow. Track human effort, waiting, rework, quality and costs.

Sources and resources

Reading added on October 14, 2026 after documentary research:

Series for further reading

Tools and guides presented in the talk

Claude Code and Cowork guides, ccboard, CC Copilot Bridge, StarMapper, Search Console MCP and wt-sweep, with their links.
Slide 5. The tools and guides presented in the talk. The links below provide access without scanning the QR codes.
Questions and resources, with two QR codes linking to Florian Bruniaux’s portfolio and GitHub.
Slide 21. The closing question: in your team, where does progress stop between generated code and the merge?

The explanations are authored from the talk and my speaker notes. Raw notes and the working HTML are not distributed. Simplified examples remain identified; practices and the target setup remain distinct from measured results.