Skip to main content
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 URL-ও নির্দিষ্ট করতে পারেন:
স্ক্রিপ্ট ও CI/CD-র জন্য API কী প্রমাণীকরণ সুপারিশ করা হয়। কী সংরক্ষণের বিকল্প হিসেবে SOME_API_KEY এনভায়রনমেন্ট ভ্যারিয়েবল সেট করতে পারেন।

ব্রাউজার-অনুমোদিত ডিভাইস প্রভিশনিং

--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 কী স্বয়ংক্রিয়ভাবে সংরক্ষণ করে।
আউটপুট
ডিভাইস ফ্লো সফল হলেও আপনার প্ল্যান API কী তৈরি করতে না পারলে CLI এর বদলে একটি সতর্কতা প্রিন্ট করে। API অ্যাক্সেসের জন্য Standard, Advanced বা Lifetime প্ল্যান দরকার। নিজে একটি কী তৈরি করুন এবং শেষ করতে so-me auth:login --api-key <key> চালান।
কোড মেয়াদোত্তীর্ণ হলে বা আপনি সম্পন্ন করার আগেই অথোরাইজেশন টাইমআউট হলে ডিভাইস ফ্লো নন-জিরো কোডে বেরিয়ে যায়। নতুন করে শুরু করতে 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

লোকাল কনফিগ ফাইল মুছে সংরক্ষিত ক্রেডেনশিয়াল সরিয়ে দিন।
আউটপুট