AI 개발, 인간과 AI를 위한 통합된 워크플로우가 필요하다!
최근 AI 에이전트(AI Agents)를 위한 문서화 및 도구 개발이 증가했지만, 인간 개발자를 위한 배려는 부족하다는 지적이 제기됨
AI 에이전트 전용 문서(AGENTS.md)나 MCP(Model Control Program) 서버 대신, README.md 파일과 CLI(Command-Line Interface) 도구를 활용하는 것이 더 효과적임
AI=true와 같은 플래그(Flag)를 사용하여 워크플로우를 분리하는 것은 지양하고, AI와 인간 모두에게 유용한 인터페이스를 제공해야 함
AI 에이전트의 컨텍스트 윈도우(Context Window) 문제와 인간의 정보 과부하(Mental Overload) 문제를 모두 고려하여 도구를 설계해야 함
AI 에이전트 중심의 문서화와 인간 개발자
논의에서는 AI 에이전트의 성능 향상을 위해 문서화(Documentation)의 중요성이 강조되지만, 인간 개발자를 위한 문서화는 소홀히 취급되는 경향을 지적한다. 특히, AI 에이전트가 특정 파일(AGENTS.md)을 참조하도록 하는 방식은 인간 개발자가 해당 정보를 접근하기 어렵게 만든다. 따라서, README.md 파일과 같이 인간과 AI 모두가 쉽게 접근할 수 있는 위치에 문서를 배치하는 것이 중요하다고 강조한다. 이는 지속 가능한 개발(Sustainable Development)을 위한 핵심 요소이다.
CLI(Command-Line Interface)의 재발견
글쓴이는 GUI(Graphical User Interface)나 MCP(Model Control Program) 도구보다 CLI(Command-Line Interface)를 선호하며, 그 이유로 스크립트 가능성, 조합성, 텍스트 기반 인터페이스를 꼽는다. CLI는 인간 개발자와 AI 에이전트 모두에게 동일한 방식으로 접근 가능하며, 자동화(Automation)를 위한 유연성을 제공한다. 특히, CLI는 AI 에이전트의 컨텍스트 윈도우(Context Window) 문제를 해결하고, 인간 개발자의 정보 과부하를 줄이는 데 기여한다.
AI=true 플래그(Flag)의 문제점
글쓴이는 AI=true와 같은 플래그를 사용하여 AI와 인간의 워크플로우를 분리하는 방식에 대해 비판적인 시각을 보인다. 이러한 방식은 AI 에이전트에게만 특화된 기능을 제공하여, 인간 개발자가 해당 기능을 활용하기 어렵게 만든다. 대신, --quiet와 같은 옵션을 사용하거나, 정보 과부하(Mental Overload)를 최소화하는 설계를 통해 AI와 인간 모두에게 유용한 도구를 개발해야 한다고 주장한다. 이는 개발 생산성(Development Productivity) 향상에 기여한다.
테스트(Test)와 출력(Output)의 중요성
글쓴이는 테스트의 실행 속도와 실패 시 명확한 출력의 중요성을 강조하며, 이는 AI 에이전트와 인간 개발자 모두에게 유익하다고 말한다. 특히, 테스트 결과가 간결하고 문제 해결에 도움이 되는 출력을 제공하는 것이 중요하다. 이는 AI 에이전트의 컨텍스트 윈도우(Context Window)를 효율적으로 활용하고, 인간 개발자의 디버깅(Debugging) 시간을 단축하는 데 기여한다. 테스트 주도 개발(TDD)의 중요성을 시사한다.