
Datasette Agent는 Datasette에서 SQLite 데이터를 탐색하고 분석하도록 돕는 AI 어시스턴트입니다. 사용자가 데이터에 대해 질문하면 SQL을 작성하고 실행해 답을 찾고, 테이블이나 전체 데이터베이스를 살펴 사용자가 놓쳤을 수 있는 패턴을 찾을 수 있습니다.1
datasette-agent 0.3a0의 핵심 변화는 이 흐름이 “읽기”에서 “쓰기”로 확장됐다는 점입니다. 이제 에이전트는 데이터베이스 변경 작업을 제안할 수 있고, 사용자가 승인하면 실제 쓰기 SQL을 실행할 수 있습니다.
핵심은 쓰기 기능이 아니라 승인 흐름이다
새로 추가된 execute_write_sql 도구는 데이터베이스에 쓰기 작업을 수행합니다. 중요한 점은 바로 실행하지 않는다는 것입니다. 도구는 실행 전에 사용자 승인을 요청하고, 사용자가 승인한 뒤에야 데이터베이스를 변경합니다.2
이 차이는 큽니다. 읽기 쿼리의 실수는 잘못된 답변으로 끝날 수 있지만, 쓰기 쿼리의 실수는 데이터 자체를 바꿀 수 있습니다. 따라서 AI가 “무엇을 할지 제안”하고 사람이 “실행 여부를 결정”하는 구조가 이 기능의 안전장치입니다.
이 기능은 Datasette의 기존 권한 모델과도 연결됩니다. Datasette 1.0a31은 필요한 권한을 가진 사용자가 데이터베이스에 쓰기 SQL을 실행할 수 있게 했고, execute-write-sql 권한이 있는 사용자는 데이터베이스 액션에서 “Execute write SQL”을 사용할 수 있습니다.3 즉 datasette-agent 0.3a0의 쓰기 기능은 별도의 우회로라기보다, Datasette가 제공하는 권한 체계 위에서 작동하는 확장으로 이해하는 편이 적절합니다.
터미널에서도 승인 기반 작업이 가능해졌다
0.3a0은 datasette agent chat 터미널 모드도 개선했습니다. 이제 CLI 환경에서도 승인이 필요한 도구를 사용할 수 있으며, --root, --yes, --unsafe 옵션이 추가됐습니다.4
이 옵션들은 편리하지만 신중하게 써야 합니다. --yes는 사용자 질문을 자동 승인하고, --unsafe는 root 실행과 자동 승인을 함께 켭니다.4 테스트용 데이터베이스나 쉽게 되돌릴 수 있는 로컬 실험에서는 유용할 수 있지만, 중요한 데이터베이스에서는 승인 절차를 약화시키는 선택입니다.
CLI 사용성을 위한 개선도 있습니다. 도구가 Datasette 화면용 HTML뿐 아니라 datasette agent chat CLI 표시용 일반 텍스트 대안을 제공할 수 있게 됐습니다.4 덕분에 터미널에서도 도구 결과를 더 자연스럽게 확인할 수 있습니다.
어떻게 적용해야 할까
datasette-agent 0.3a0은 AI 데이터 도구가 단순한 질의응답 보조 도구에서, 승인된 변경까지 돕는 운영 도구로 이동하고 있음을 보여줍니다. 여기에 datasette-agent-charts 같은 플러그인을 붙이면 시각화와 분석용 추가 도구도 에이전트에 연결할 수 있습니다.1
다만 쓰기 권한을 AI 어시스턴트와 함께 사용할 때의 원칙은 분명합니다.
중요한 데이터에서는 자동 승인을 피한다.
필요한 사용자에게만 쓰기 권한을 부여한다.
먼저 복사본이나 테스트 데이터베이스에서 실행해 본다.
AI가 만든 SQL을 승인 전에 확인한다.
결론적으로 datasette-agent 0.3a0의 가치는 “AI가 데이터베이스를 마음대로 고친다”가 아닙니다. 더 정확히는 “AI가 변경 작업을 준비하고, 사람의 승인 아래 실행한다”입니다. 생산성을 높이려면 이 승인 경계를 유지하는 것이 가장 중요합니다.
1Datasette Agent: an AI assistant for Datasette to help explore and analyze data in SQLite
2GitHub - datasette/datasette-agent: An LLM-powered agent for Datasette
이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.
