I no longer write replies to inquiry emails. GAS and Claude Code prepare the drafts for me.
How much time do you spend replying to inquiry emails?
I realized the draft was already done. That is how I work now.The AI doesn't send them on its own. It just puts them in the drafts folder.Since I am the one who sends them, it's not scary.
How much time I used to spend on every inquiry reply
I honestly counted the steps it takes to send one reply.
"Check what the question is," "read the sender's tone," "think about the wording," "rewrite it," "check for typos," "send it"—there are 6 steps. The one that takes the most time is "thinking about the wording." Deciding on a clever way to respond, a tone that isn't too polite, and making sure not to write anything unnecessary.
Come to think of it, it wasn't rare for me to spend 10 minutes on a single email.
"Thinking about the reply took longer than actually sending it."
I think many people can relate to this feeling. The current system automates only this "thinking about the wording" part. It doesn't send anything. It is strictlyjust sitting in the drafts folder.
When an email arrives in Gmail, GAS starts running

GAS (Google Apps Script) is a system provided for free by Google that automates Gmail and spreadsheets. It's not just for people who can write code; anyone with a Google account can use it.
I set this GAS up as a "watchman." Every time a new email arrives, it starts running automatically.
The mechanism is simple.GAS is watching for new emails. When it detects an unread email, it extracts the subject and body and passes them to the next process. You don't need to write code to set the "trigger"; you just specify "run every 15 minutes" from the management screen.
The actual code looks like this. Even if you can't read it, just look at what it's doing.
// 新着メールを検索する(最新1件を取得)
function checkAndDraft() {
var threads = GmailApp.search('is:inbox is:unread', 0, 1);
if (threads.length === 0) return; // 新着なければ終了
var message = threads[0].getMessages()[0];
var subject = message.getSubject(); // 件名を取り出す
var body = message.getPlainBody(); // 本文を取り出す
// Claude Code に返信ドラフトを生成させる
var draft = generateDraft(subject, body);
// Gmail の下書きとして保存(送信はしない)
GmailApp.createDraft(message.getFrom(), 'Re: ' + subject, draft);
}GmailApp.search is a command that means "check the unread inbox." createDraft is a command that means "save to the drafts folder."It's not 'send', so it doesn't get sent. This is the important point.
GASのトリガー設定(管理画面で設定):
- 実行する関数: checkAndDraft
- 実行のタイミング: 時間主導型
- 時間の間隔: 15分おき(または1時間おき)The "trigger" can be set from the management screen without writing code. If you set it to "every 15 minutes," a draft will be created within 15 minutes of the email arriving.
Claude Code reads the context and writes a reply draft

Once GAS extracts the email subject and body, the next step isClaude Code reads the context. Claude Code is an AI that can generate a reply when you provide it with text. It doesn't just see the fact that "an email arrived"; it reads the content and constructs the text.
The tone of the reply and the standard closing phrases are written in advance as an 'instruction sheet (prompt).' This instruction sheet serves as an order form for Claude.
function generateDraft(subject, body) {
var prompt =
"以下のメールに対して、丁寧なビジネストーンで返信してください。\n" +
"返信の末尾に『何かご不明な点があればお気軽にご連絡ください』を添えてください。\n\n" +
"件名: " + subject + "\n" +
"本文: " + body;
// Claude Code の呼び出し口に指示書を渡して返信文を生成
var response = callClaudeCode(prompt);
return response;
}The content of the prompt is the instruction sheet for Claude. If you change the 'in a polite business tone' part to 'in a casual style,' the atmosphere of the resulting reply will change.Because you can adjust the writing style with the prompt, you can also switch it depending on the industry or the recipient.
'Please reply in a polite business tone. After answering the recipient's question, please add that they should feel free to contact you if they have any further questions.'
This single sentence becomes a 'work order' for Claude. If you get a strange reply, you just need to change the instructions.The task of checking and sending, including this adjustment, remains in my own hands.
It's just in the drafts. Whether to send it or not is up to me.

When you open the draft folder, the reply is already prepared.
In the Gmail draft section, a reply is waiting with the subject line 'Re: Regarding your question about ○○'.The AI will not send it on its own. It is just in the drafts. You read the text yourself, and if there are no issues, you press the send button. If you don't like it, you edit it. If you think it's unusable, you delete it.
I chose this design because I wanted to leave room for verification.
'The AI writes it, but I am the one who sends it. I chose this design because I wanted to leave room for verification.'
Whether to send it or not is up to me. If this breaks, this mechanism cannot be used. But it is designed so that it doesn't break. Because I have only written the command createDraft (save draft), the code structure does not allow for sending. It's not just 'it seems safe,' it's safe because I am using that specific command.
The fact that the act of 'checking and sending' remains serves as a guarantee of quality.
If you would like to try running this design on your own Gmail, please consult with me.
We can start by talking about 'How can we automate our inquiry handling?'
→ [Click here for inquiries]
It has changed from 'writing a reply' to 'checking and sending'
If I list the previous steps, they were: 'Open → Read → Think → Write → Edit → Send'.
Now it is: 'Open → Read → Send'.
The steps have been halved. But the quality of the reply has not changed. In fact, because I check while thinking with my own head, I have become more likely to notice oversights.By changing from 'writing a reply' to 'checking and sending', email correspondence has changed from 'manual labor' to 'decision-making work'.
Before I knew it, a draft was ready. I think this feeling is the reality of this mechanism.
I would like you to try it once to see if this design suits your inquiry handling. The combination of GAS and Claude Code can be broken down to a level that even non-engineers can set up.Semi-automated is a term that refers to 'automation that leaves room for human verification.'
For another way to use GAS × Gmail, please see this article as well.
→ [The story of how I built a system to send mass emails with Gmail using GAS]
#GmailAutomation #GAS #ClaudeCode #BusinessAutomation #EmailHandling
