Claude Code স্থানীয় শেল থেকে Google Workspace CLI (gws) কমান্ড চালাতে পারে। এটি gws-এ প্রমাণীকৃত Google অ্যাকাউন্ট ব্যবহার করে। অনুমোদিত অ্যাকাউন্ট-মালিক Drive, Sheets, Docs ও Gmail-এর প্রতিটিতে একটি করে নিরাপদ রেকর্ড দিয়ে সংযোগ যাচাই করতে পারেন। আগে অ্যাকাউন্ট ও দেওয়া অনুমতি নিশ্চিত করুন। এই নির্দেশিকা 20 অক্টোবর 2026-এ পরীক্ষা করা CLI রিপোজিটরির নথিভুক্ত ইন্টারফেস অনুসরণ করে। BIG CHANGE কোনো টুল ইনস্টল করেনি বা কোনো অ্যাকাউন্টে প্রবেশ করেনি।

বড় পরিবর্তন

  • কী বদলেছে: বর্তমান gws CLI, Google Workspace API পদ্ধতিগুলোকে শেল কমান্ড হিসেবে দেয়, যা Claude Code চালাতে পারে। একটি প্রমাণীকৃত অ্যাকাউন্ট দিয়ে একাধিক কাজের পরিষেবায় পৌঁছানো যায়, তবে প্রকৃত অনুমতি ও এজেন্টের শেল ব্যবহারের অধিকার প্রযোজ্য।
  • কেন গুরুত্বপূর্ণ: যে সংযোগ দিয়ে এজেন্ট নির্বাচিত ফাইল বা বার্তা দেখতে পারে, সেটি তার OAuth পরিসরের অন্য ডেটাতেও পৌঁছাতে পারে। আরও কাজ দেওয়ার আগে অ্যাকাউন্ট-মালিক টার্মিনাল ও Claude Code-এর অল্প কিছু জানা ফল মিলিয়ে দেখতে পারেন।
  • যা খেয়াল করবেন: সেটআপ বদলালে ইনস্টল করা CLI-এর তৈরি কমান্ড ও সেশনে কার্যকর অনুমতির নিয়ম পরীক্ষা করুন। CLI এখনো 1.0-এর আগের সংস্করণ; সরু উদাহরণ-কোয়েরি বা ফিল্ড মাস্ক পুরো অ্যাকাউন্টের অনুমতি কমায় না।

সংযোগের আগে

সংবেদনশীল উপাদানবিহীন আলাদা, অনুমোদিত Google পরীক্ষামূলক অ্যাকাউন্ট এবং OAuth কনফিগার করার অধিকার আছে এমন Cloud প্রকল্প ব্যবহার করুন। চারটি API ও চাওয়া অনুমতি গ্রহণযোগ্য কি না প্রশাসককে জিজ্ঞেস করুন। অনন্য নামের একটি বিদ্যমান Drive ফাইল, ছোট ঘরসীমায় জানা মানের স্প্রেডশিট, এক ট্যাবের ছোট সাধারণ-টেক্সট Google Doc এবং নিরাপদ Gmail বার্তা প্রস্তুত রাখুন। Gmail-এর জন্য বার্তার RFC Message-ID নিন Show original থেকে। এই মূল উপাদানগুলোর সঙ্গে CLI ফল মিলিয়ে দেখবেন। যাচাইগুলো কিছু তৈরি বা পাঠায় না।

নিয়ন্ত্রিত কম্পিউটারে Claude Code ইনস্টল করুন। gws ইনস্টল করুন আপনার OS-এর জন্য রিপোজিটরির প্রকাশিত সংস্করণ থেকে অথবা Node.js 18 বা পরের সংস্করণ থাকলে নথিভুক্ত কমান্ড ব্যবহার করুন:

Terminal
npm install -g @googleworkspace/cli
gws --version
gws --help
gws auth login --help

ইনস্টল করা CLI ও Claude Code-এর সংস্করণ ব্যক্তিগতভাবে লিখে রাখুন। CLI এখনো 1.0-এর আগের পর্যায়ে, আর এর কমান্ড Google-এর API অনুসন্ধান নথি থেকে তৈরি হয়। উদাহরণ চালানোর আগে ইনস্টল করা সহায়িকা ও নিচের পদ্ধতির স্কিমা দেখুন।

1. সীমিত OAuth লগইন কনফিগার করুন

অনুমোদিত Cloud প্রকল্পে Drive, Sheets, Docs ও Gmail API চালু করুন। OAuth-এর শ্রোতা নির্ধারণ করুন এবং Desktop app ক্লায়েন্ট তৈরি করুন। অ্যাপ External এবং পরীক্ষায় থাকলে নির্বাচিত অ্যাকাউন্টকে পরীক্ষামূলক ব্যবহারকারী হিসেবে যোগ করুন। ডাউনলোড করা ক্লায়েন্ট JSON নথিতে উল্লিখিত ~/.config/gws/client_secret.json স্থানে রাখুন অথবা GOOGLE_WORKSPACE_CLI_CONFIG_DIR দিয়ে বেছে নেওয়া আলাদা ডিরেক্টরি ব্যবহার করুন। ডিরেক্টরিটি Claude প্রকল্পের বাইরে এবং শুধু অ্যাকাউন্ট-মালিকের জন্য উন্মুক্ত রাখুন।

লগইনের আগে ব্যক্তিগতভাবে দেখুন GOOGLE_WORKSPACE_CLI_TOKEN বা GOOGLE_WORKSPACE_CLI_CREDENTIALS_FILE নির্ধারিত আছে কি না, যার মধ্যে .env ফাইলের সেটিংও পড়ে। সংরক্ষিত OAuth পরিচয়-তথ্যের আগে এই উৎসগুলো প্রযোজ্য হয়। মানগুলো দেখাবেন না বা Claude Code-কে পরিচয়-তথ্যের ফাইল পড়তে বলবেন না। পরিষ্কার পরিবেশ ও নির্ধারিত ক্লায়েন্ট কনফিগারেশন ব্যবহার করুন।

স্পষ্টভাবে এই চারটি পরিসর চাইুন:

Terminal
gws auth login --scopes 'https://www.googleapis.com/auth/drive.metadata.readonly,https://www.googleapis.com/auth/spreadsheets.readonly,https://www.googleapis.com/auth/documents.readonly,https://www.googleapis.com/auth/gmail.readonly'
gws auth status

অ্যাকাউন্ট নির্বাচন ও সম্মতি নিজেই সম্পন্ন করুন। নির্দিষ্ট সংস্করণের CLI সোর্সে openid, userinfo.email এবং userinfo.profile পরিচয়-পরিসরও যোগ হয়। ব্যক্তিগতভাবে সম্মতি ও gws auth status -এর অ্যাকাউন্ট, অনুমতি ও টোকেনের বৈধতা আপনার উদ্দেশ্যের সঙ্গে মিলিয়ে দেখুন; অনুপস্থিত স্ট্যাটাস ফিল্ড যাচাইহীন থাকবে। অ্যাকাউন্ট ভুল হলে বা অপ্রত্যাশিত বিস্তৃত অনুমতি থেকে গেলে থামুন। লগইনের তালিকায় পরিষেবা বাছা শুধু বিকল্প ছাঁকে; এতে এই চারটি শুধু-পড়ার পরিসর নির্ধারিত হয় না।

পরিসর উদাহরণ-অনুরোধের চেয়ে বড়। Drive মেটাডেটা অনুমতি ব্যবহারযোগ্য ফাইলগুলোর মেটাডেটা পড়তে পারে; Sheets ও Docs-এর শুধু-পড়ার অনুমতি ব্যবহারযোগ্য স্প্রেডশিট ও নথি কভার করে; Gmail-এর শুধু-পড়ার অনুমতি মেইলবক্সের বিষয়বস্তু পড়তে পারে। নাম, ID, ঘরসীমা, কোয়েরি ও ফিল্ড মাস্ক প্রতিটি উত্তর সীমিত করে, টোকেনের ক্ষমতা নয়। শেল টুল স্থানীয় পরিচয়-তথ্যেও পৌঁছাতে পারে; গোপন ফাইল-পথ বা প্রম্পটের নির্দেশ এগুলোকে বিচ্ছিন্ন রাখে না।

2. সীমিত পড়ার কমান্ড সরাসরি চালান

প্রথমে প্রতিটি পদ্ধতি দেখুন gws schema drive.files.list দিয়ে এবং অন্য পদ্ধতির জন্য সংশ্লিষ্ট স্কিমার নাম ব্যবহার করুন। ইনস্টল করা সংস্করণে প্যারামিটার আলাদা হলে তৈরি হওয়া --help সহায়িকা দেখুন। নিচের কমান্ডগুলো Bash-এর একক উদ্ধৃতিচিহ্ন ব্যবহার করে; অন্য শেলের জন্য উদ্ধৃতি সচেতনভাবে বদলান। শুধু পরীক্ষার শনাক্তকারী ও নাম বদলান। একবারে একটি কমান্ড চালান এবং প্রকৃত উত্তর বা ত্রুটি টোকেন বা সংবেদনশীল উপাদান ছাড়া ব্যক্তিগতভাবে রাখুন।

নাম দিয়ে Drive ফাইল খুঁজুন। JSON-এর \u0027 Drive অনুসন্ধান অভিব্যক্তির অ্যাপোস্ট্রফি এস্কেপ করে এবং Bash-এর উদ্ধৃতি অক্ষুণ্ণ রাখে:

Terminal
gws drive files list --params '{"pageSize":5,"q":"trashed = false and name = \u0027GWS connection check\u0027","fields":"files(id,name,mimeType),nextPageToken,incompleteSearch"}'

ফেরত আসা ID ও নাম Drive ফাইলের সঙ্গে মিলিয়ে দেখুন। মিল না পাওয়া বা incompleteSearch কাঙ্ক্ষিত ফাইলে প্রবেশাধিকার প্রমাণ করে না।

প্রকৃত স্প্রেডশিট ID ও ট্যাবের নাম দিয়ে জানা ঘরগুলো পড়ুন:

Terminal
gws sheets spreadsheets values get --params '{"spreadsheetId":"SPREADSHEET_ID","range":"Sheet1!A1:C3","fields":"range,majorDimension,values"}'

ফেরত আসা মান স্প্রেডশিটের সঙ্গে তুলনা করুন। Google শেষের ফাঁকা ঘর বাদ দিতে পারে, তাই জানা অ-ফাঁকা মান প্রস্তুত রাখুন।

ছোট পরীক্ষার Doc-এর প্রথম ট্যাব পড়ুন:

Terminal
gws docs documents get --params '{"documentId":"DOCUMENT_ID","includeTabsContent":false,"fields":"documentId,title,body(content(paragraph(elements(textRun(content)))))"}'

ID, শিরোনাম ও জানা লেখা মিলিয়ে দেখুন। সীমিত উত্তরটি অন্য ট্যাব, মন্তব্য বা পুরো নথির কাঠামো পরীক্ষা করে না।

Gmail-এ বিদ্যমান বার্তার RFC Message-ID দিয়ে খুঁজুন, তারপর ফেরত আসা Gmail ID ব্যবহার করে দুটি হেডার চাইুন:

Terminal
gws gmail users messages list --params '{"userId":"me","maxResults":1,"q":"rfc822msgid:MESSAGE_ID_FROM_SHOW_ORIGINAL","fields":"messages(id,threadId),nextPageToken,resultSizeEstimate"}'
gws gmail users messages get --params '{"userId":"me","id":"GMAIL_MESSAGE_ID","format":"metadata","metadataHeaders":["Message-ID","Subject"],"fields":"id,threadId,payload(headers)"}'

ফেরত আসা Message-ID ও নিরাপদ বিষয় মূল বার্তার সঙ্গে মিলিয়ে দেখুন। প্রথম কল বার্তার ID দেয়, হেডার নয়। দ্বিতীয়টি হেডারের মেটাডেটা চায়, বার্তার মূল অংশ নয়। প্রথম উত্তর ফাঁকা হলে দ্বিতীয় যাচাই করা যায় না। Gmail-এর সংকীর্ণ মেটাডেটা OAuth পরিসর এখানে ব্যবহৃত অনুসন্ধান-কোয়েরি অনুমোদন করে না; স্পষ্ট Gmail শুধু-পড়ার অনুমতি করে।

3. অনুমতি চাওয়ার বার্তাসহ Claude Code দিয়ে আবার করুন

একই অনুমোদিত অ্যাকাউন্ট কনফিগারেশন দিয়ে নিজের নিয়ন্ত্রিত প্রকল্পে Claude Code চালু করুন। /permissions-এ কার্যকর মোড ও শেলের নিয়ম দেখুন। Manual (যাকে default ও বলা হয়) এবং প্রকৃত শেল টুলের জন্য Ask নিয়ম ব্যবহার করুন; বড় অনুমতি বা নিয়ম এড়ানোর ব্যবস্থা প্রতিষ্ঠানের নীতি অনুযায়ী সমাধান করুন। gws * বা শেল মোড়কের জন্য সামগ্রিক অনুমোদন এড়ান। প্রতিটি প্রস্তাবিত কমান্ড পুরো দেখুন এবং শুধু কাঙ্ক্ষিত সীমিত পড়ায় অনুমতি দিন।

সাধারণ ভাষায় Claude Code-কে বলুন, একই পরীক্ষার লক্ষ্য ব্যবহার করে উপরের পাঁচটি কমান্ড প্রস্তাব করতে এবং আপনার অনুমতির সিদ্ধান্তের পর একে একে চালাতে। পরিচয়-তথ্য পড়া, কোয়েরি বড় করা বা লেখা ছাড়াই আউটপুট বা ত্রুটি জানাতে বলুন। প্রতিটি ফল সরাসরি ফল ও মূল বস্তু দুটোর সঙ্গেই মিলিয়ে দেখুন। প্রকল্পের নির্দেশ কাজ বোঝাতে পারে, কিন্তু কার্যকর টুল অনুমতি ও OAuth অধিকারই প্রবেশাধিকার ঠিক করে।

পরিষেবা

দুই পথেই কাজ শেষ হওয়ার প্রমাণ

Drive

একই ফাইল ID ও নাম; অনুসন্ধান সম্পূর্ণ।

Sheets

প্রত্যাশিত ট্যাব, সীমা ও জানা ঘরের মান।

Docs

প্রত্যাশিত ID, শিরোনাম ও প্রথম ট্যাবের লেখা।

Gmail

তালিকা পরীক্ষার বার্তা খুঁজে পায়; মেটাডেটা পড়ার ফল তার Message-ID ও বিষয়ের সঙ্গে মেলে।

সংস্করণ, প্রমাণীকৃত অ্যাকাউন্ট, প্রকৃত অনুমতি, লক্ষ্য ID, সরাসরি ফল, Claude-এর ফল ও ত্রুটি ব্যক্তিগত যাচাইপত্রে লিখুন। ব্যর্থ অনুরোধ, সফল কিন্তু ফাঁকা উত্তর এবং যাচাইকৃত বস্তু আলাদা ফল। চারটি পরিষেবা দুই পথেই যাচাই হলেই শেষ করুন।

কোনো যাচাই ব্যর্থ হলে

লগইনে Access blocked ত্রুটির অর্থ হতে পারে যে পরীক্ষার অ্যাকাউন্ট OAuth অ্যাপের পরীক্ষামূলক ব্যবহারকারীর তালিকায় নেই। API বা পরিসরের ত্রুটিতে অনুমোদিত পুনরায় সম্মতি চাওয়ার আগে চালু API, নির্বাচিত অ্যাকাউন্ট ও প্রকৃত অনুমতি নিশ্চিত করুন। তালিকা ফাঁকা হলে সঠিক লক্ষ্য, কোয়েরি ও অ্যাকাউন্ট দেখুন। ইনস্টল করা সহায়িকা উদাহরণ থেকে আলাদা হলে আগে বর্তমান পদ্ধতির স্কিমা নিন। Claude Code ডেটা বদলানো বা প্রবেশাধিকার বাড়ানোর কমান্ড দিলে অনুমতির বার্তায় প্রত্যাখ্যান করে সীমিত পড়ায় ফিরুন।

CLI রিপোজিটরি ব্যবহার করতে অর্থপ্রদত্ত প্যাকেজ লাগে না। অ্যাকাউন্ট বা Workspace পরিকল্পনা, Cloud কোটা এবং Claude Code পরিকল্পনা বা API ব্যবহারে খরচ হতে পারে। সংগৃহীত বিষয়বস্তু Claude Code-এ কনফিগার করা প্রদানকারী প্রক্রিয়া করতে পারে, তাই অনুমোদিত অসংবেদনশীল পরীক্ষার ডেটাই ব্যবহার করুন। CLI জানায়, এটি Google-এর আনুষ্ঠানিকভাবে সমর্থিত পণ্য নয় এবং 1.0-এর আগের পরিবর্তনের বিষয়ে সতর্ক করে। BIG CHANGE কর্মক্ষমতা বা সামঞ্জস্য পরীক্ষা করেনি। কিছু লেখা, পাঠানো বা অ্যাকাউন্ট বদলানোর আগে থামুন। Claude-এর আলাদা Google Workspace অ্যাড-অন অন্য পথে অনুমোদন নিয়ে খোলা ফাইল সম্পাদনা বোঝায়।