auth:* কমান্ডগুলো API-র সাথে কথা বলতে CLI যে ক্রেডেনশিয়াল ব্যবহার করে তা পরিচালনা করে। ক্রেডেনশিয়াল লোকালি ~/.so-me/config.json-এ (so-me-dev বাইনারির জন্য ~/.so-me-dev/config.json) সংরক্ষিত থাকে।
প্রতিটি কমান্ড গ্লোবাল ফ্ল্যাগ
--api-key <key>, --api-url <url>, --json (ডিফল্ট), --table ও --verbose গ্রহণ করে। SOME_API_KEY ও SOME_API_URL এনভায়রনমেন্ট ভ্যারিয়েবল সংরক্ষিত ক্রেডেনশিয়ালের চেয়ে অগ্রাধিকার পায়। বিস্তারিত জানতে CLI ওভারভিউ দেখুন।auth:login
API-র সাথে প্রমাণীকরণ করুন। আপনি সরাসরি একটি API কী দিতে পারেন, অথবা তা বাদ দিয়ে ব্রাউজার-অনুমোদিত ডিভাইস প্রভিশনিং শুরু করতে পারেন। Auth.md গাইড-এ ডিভাইস এন্ডপয়েন্ট এবং আলাদা MCP OAuth ফ্লো নথিভুক্ত আছে।API কী দিয়ে লগইন
--api-key দিলে CLI কীটি লোকাল কনফিগে সংরক্ষণ করে (গ্লোবাল --api-url ফ্ল্যাগও দিলে সেটিসহ) এবং সার্ভারের সাথে যোগাযোগ না করেই বেরিয়ে যায়।
আউটপুট
ব্রাউজার-অনুমোদিত ডিভাইস প্রভিশনিং
--api-key বাদ দিলে CLI /auth/device/code ও /auth/device/token ব্যবহার করে ডিভাইস অথোরাইজেশন ওয়ার্কফ্লো শুরু করে। এই JSON এন্ডপয়েন্টগুলো ব্যবহারকারীর অনুমোদনের পর একটি API কী প্রভিশন করে; এগুলো MCP OAuth টোকেন এন্ডপয়েন্ট থেকে আলাদা:
1
ডিভাইস কোডের অনুরোধ করুন
CLI API থেকে একটি ডিভাইস কোড চায় এবং একটি ভেরিফিকেশন URL ও একবার-ব্যবহারযোগ্য ইউজার কোড প্রিন্ট করে। কোডটি কত মিনিট বৈধ থাকবে তাও জানায়।
2
URL খুলে কোড দিন
CLI স্বয়ংক্রিয়ভাবে আপনার ব্রাউজার খোলার চেষ্টা করে (যথাসাধ্য)। না খুললে প্রিন্ট করা URL নিজে খুলুন, তারপর দেখানো কোডটি দিন।
3
অনুমোদনের জন্য অপেক্ষা করুন
আপনি ব্রাউজারে অনুমোদন দেওয়ার সময় CLI API পোল করে। অনুমোদিত হলে এটি অনুমোদিত ইমেইল নিশ্চিত করে এবং তৈরি হওয়া API কী স্বয়ংক্রিয়ভাবে সংরক্ষণ করে।
আউটপুট
so-me auth:login আবার চালান।
auth:status
বর্তমান প্রমাণীকরণের অবস্থা দেখান, মাস্ক করা API কী ও কনফিগার করা API URL সহ। এটি শুধু লোকাল পরীক্ষা — সংরক্ষিত কনফিগ পড়ে, সার্ভারে যায় না।আউটপুট
Workspace লাইনটি তখনই দেখানো হয় যখন একটি ডিফল্ট ওয়ার্কস্পেস কনফিগার করা থাকে। কোনো ক্রেডেনশিয়াল সংরক্ষিত না থাকলে কমান্ডটি জানায় যে আপনি প্রমাণীকৃত নন এবং auth:login-এর দিকে নির্দেশ করে।
আউটপুট (লগইন করা নেই)
auth:whoami
বর্তমান API কী সার্ভারের বিপরীতে যাচাই করুন এবং প্রমাণীকৃত ব্যবহারকারী ও অর্গানাইজেশন প্রিন্ট করুন। শুধু লোকাল কনফিগ পড়াauth:status-এর বিপরীতে এই কমান্ড API-তে (/v1/settings/profile ও /v1/settings/organization) যায় এবং কী প্রত্যাহার করা হয়ে থাকলে সাথে সাথে ব্যর্থ হয়।
উদাহরণ
user ও organization কী-র অধীনে একত্র করা আছে:
auth:logout
লোকাল কনফিগ ফাইল মুছে সংরক্ষিত ক্রেডেনশিয়াল সরিয়ে দিন।আউটপুট