feat(devin): run the edit hooks on apply_patch edits
Maintainer antworten meist innerhalb von 1 Tag
@ryzizub arbeitet bereits daran.
Seit 06.11.2026.
Bewertung
Dieses Issue wurde noch nicht bewertet.
Beschreibung
Description
Under Devin, a GPT model with the Codex tools setting edits files through apply_patch rather than edit and write. DevinTranslator names apply_patch in the edit matcher, so the hook fires, but apply_patch is a freeform tool: the model emits the patch text directly instead of JSON, so the payload carries no file_path. analyze.sh and format.sh read .tool_input.file_path, find nothing and exit 0. Dart files edited that way are never analyzed or formatted, and nothing says so at runtime.
The compat script can close this the way codex_compat.dart and copilot_compat.dart already do: fan out per file. The grammar is in the Devin binary, and it is the same envelope Copilot's fan-out already parses:
begin_patch: "*** Begin Patch" LF
add_hunk: "*** Add File: " filename LF add_line+
delete_hunk: "*** Delete File: " filename LF
update_hunk: "*** Update File: " filename LF change_move? change?
change_move: "*** Move to: " filename LF
Its tool prompt also says "You MUST always use the absolute path when specifying the target file", so no working directory is needed — which matters, because a Devin hook payload carries no cwd.
Requirements
-
devinCompatScriptre-runs the hook script once per file named by an*** Add File:,*** Update File:or*** Move to:header, withtool_nameset toWritefor an added file andEditotherwise, andtool_input.file_pathset to that path - Accept the patch text whether it arrives as a bare
tool_inputstring or inside an object, since which one Devin sends has not been captured yet - Fall through to current behaviour when the payload matches neither, so a wrong guess cannot regress anything
- Tests pin both payload shapes
Additional Context
Found while verifying #81. The real-session test on #95 confirmed the edit, write and exec payloads but could not reach apply_patch: the default model has no such tool, and the GPT models that do are behind a Pro plan.
To capture the real payload, someone on Pro can run devin -p "<prompt asking for an apply_patch edit of a .dart file>" --model gpt-6-astra-low against the installed config and log the stdin of a PostToolUse hook matching .*.
- Vorherrschende Sprache
- Dart
- Sterne
- 3
- Forks
- 0
- Ø Merge
- 2 T. 4 Std.
- Gemergte PRs (30 T.)
- 40
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus VeryGoodOpenSource/vgv_ai_cli
-
feature
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 35/100
VeryGoodOpenSource/vgv_ai_cli#142 ·
Maintainer antworten meist innerhalb von 1 Tag
-
feature
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 45/100
VeryGoodOpenSource/vgv_ai_cli#141 ·
Maintainer antworten meist innerhalb von 1 Tag
-
feature
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
VeryGoodOpenSource/vgv_ai_cli#140 ·
Maintainer antworten meist innerhalb von 1 Tag
-
feature
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 55/100
VeryGoodOpenSource/vgv_ai_cli#139 ·
Maintainer antworten meist innerhalb von 1 Tag
-
feature
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
VeryGoodOpenSource/vgv_ai_cli#138 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in VeryGoodOpenSource/vgv_ai_cli
Ähnliche Issues
-
ci/cd
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
SchweizerischeBundesbahnen/journey-maps-client-flutter#356 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Vinillian/book_tracker#208 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Codeheat
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
fossasia/badgemagic-app#2048 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 64/100
-
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 76/100
Maintainer antworten meist innerhalb von 2 Tagen