Comments 5
О, вы отказались от YAML: вижу, что формат развивается в правильном направлении! :-)
Я бы ещё предложил убрать include_leading_blank_lines, include_trailing_blank_lines и уникальные коды, которыми помечены управляющие строки. Это можно сделать, помечая все строки, содержащие код, каким-нибудь символом (например, >):
# Summary: Refactor the calculator module to enhance the `add` function
# and remove deprecated code.
#
# Plan:
# 1. Import the `List` type for type hinting.
# 2. Update the `add` function to also handle summing a list of numbers.
# 3. Remove the unused `get_pi` function.
AP 3.0
FILE
src/calculator.py
INSERT_AFTER
snippet
>import math
content
>from typing import List
REPLACE
anchor
>def add(a, b):
snippet
>return a + b
content
># New implementation supports summing a list
>if isinstance(a, List):
> return sum(a)
>return a + b
DELETE
snippet
>
>def get_pi():
> return 3.14Сначала так и хотел сделать. Ломается, если сам код будет содержать в начале строки этот же символ. Мысленный эксперимент: попробуйте применить ap-патч к ap-патчу.
Ещё сделаю отдельный пост про версию 3.0, и почему были выбраны именно такие решения, а не какие-нибудь другие.
Не знаю насчёт IDE, но консольные агенты вообще не так работают. Они именно что копят весь диалог, помнят свои правки, если они приняты пользоватклем, помнят неудачи, команды выполненные и их вывод, например, тесты, логи или скриншоты.
В общем, автору нужно попробовать несколько и если уж не один не подойдёт, то свой написать агент 😁. Поддержку формата в него встроить, ну либо взять aider, Gemini cli или ещё какой опенсорсный агент и добавить в него поддержку своего формата.
ИИ в IDE против декларативных патчей ap: почему плагины не всегда могут то, что нам нужно