hut(1) General Commands Manual hut(1)

hut - ابزار خط فرمانی برای sr.ht

hut [commands...] [options...]

برنامه hut یک ابزار خط فرمانی کمکی برای تعامل با sr.ht است.

منابع (مانند وظایف ساخت، تیکت‌های todo، مجموعه‌وصله‌های lists، مخازن git و غیره) را می‌توان در چندین قالب مشخص کرد: نام، مالک و نام، یا نشانی کامل (URL). برای نمونه، به مخزن hut متعلق به ~emersion روی git.sr.ht می‌توان از راه‌های زیر ارجاع داد:

علاوه بر این، به فهرست‌های پستی می‌توان از طریق نشانی ایمیل آن‌ها اشاره کرد.

دستورات hut که ورودی می‌خوانند، مانند hut graphql یا hut builds user-webhook create، بسته به اینکه ورودی استاندارد (stdin) آن‌ها روی یک پایانه است یا خیر، به شکل‌های زیر ورودی را می‌خوانند:

•
اگر stdin روی یک پایانه نباشد، برای نمونه به این دلیل که stdin از یک فایل یا از یک لوله (pipe) تغییر مسیر یافته است، hut ورودی را از stdin می‌خواند.
•
در غیر این صورت، چنانچه گزینه --stdin برای دستور مشخص شده باشد، hut ورودی را از stdin می‌خواند.
•
در غیر این صورت، hut فرض می‌کند که در یک پایانه اجرا می‌شود و دستوری که توسط متغیر محیطی $EDITOR تعیین شده است را برای دریافت ورودی اجرا می‌کند.

-h, --help

نمایش پیام راهنما و خروج. می‌توان پس از یک دستور برای دریافت اطلاعات بیشتر درباره آن استفاده شود.

--config

انتخاب صریح فایل پیکربندی که باید به جای پیکربندی پیش‌فرض استفاده شود.

--debug

درخواست GraphQL زیربنایی دستور را در stderr چاپ می‌کند.

--instance

انتخاب اینکه کدام نمونه sr.ht از فایل پیکربندی باید استفاده شود. به‌طور پیش‌فرض اولین نمونه انتخاب خواهد شد.

help <command>

راهنمایی درباره هر یک از دستورها.

graphql <service>

نوشتن یک پرسمان GraphQL و اجرای آن. پاسخ JSON در stdout نوشته می‌شود. آرگومان service سرویس sr.ht برای اجرای پرسمان روی آن است (برای نمونه "meta" یا "builds").

ابزاری مانند jq(1) می‌تواند برای زیباتر کردن خروجی و پردازش داده‌ها استفاده شود. مثال:

hut graphql meta <<EOF | jq '.me'
query {
	me { canonicalName }
}
EOF

گزینه‌ها عبارتند از:

--file <key>=<value>

تنظیم یک متغیر فایلی.

--stdin

خواندن پرسمان از stdin.

-v, --var <key>=<value>

تنظیم یک متغیر خام. مثال:
hut graphql meta -v username=emersion <<'EOF'
query($username: String!) {
	userByName(username: $username) {
		bio
	}
}
EOF

init

مقداردهی اولیه فایل پیکربندی hut.

export <directory> [resource|service...]

برون‌بری داده‌های حساب کاربری.

به‌طور پیش‌فرض، تمام داده‌های کاربر جاری برون‌بری خواهد شد. همچنین می‌توان فهرستی صریح از سرویس‌های نمونه (مانند "todo.sr.ht") یا منابع (مانند "todo.sr.ht/~user/tracker") را مشخص کرد.

import <directory...>

درون‌ریزی داده‌های حساب کاربری.

version

نمایش نسخه hut.

artifacts <ID>

فهرست کردن دست‌سازه‌ها.

cancel <IDs...>

لغو کارها.

list [owner] [options...]

فهرست کردن کارها.

گزینه‌ها عبارتند از:

--count <int>

تعداد کارهایی که باید واکشی شوند.

-s, --status <string>

فیلتر کردن بر اساس وضعیت کار.

-t, --tags <string>

تنها نمایش کارهایی که رشتهٔ برچسب‌های آن‌ها با مقدار ارائه‌شده آغاز می‌شود.

resubmit <ID>

ارسال مجدد یک ساخت.

گزینه‌ها عبارتند از:

-e, --edit

ویرایش مانیفست با $EDITOR.

-f, --follow

دنبال کردن گزارش‌های ساخت.

-n, --note <string>

ارائهٔ یک توضیح کوتاه برای کار.

-s, --no-secrets

غیرفعال‌سازی رازها برای این ساخت.

-v, --visibility <string>

میزان نمایانی مورد استفاده (public، unlisted، private). پیش‌فرض همان میزان نمایانی استفاده‌شده در کار ساخت اصلی است.

secret list [options...]

فهرست کردن رازها.

گزینه‌ها عبارتند از:

--count <int>

تعداد رازهایی که باید واکشی شوند.

secret share <secret>

به‌اشتراک‌گذاری یک راز.

گزینه‌ها عبارتند از:

-u, --user

کاربری که راز باید با او به اشتراک گذاشته شود (الزامی).

show [ID] [options...]

نمایش وضعیت کار.

اگر هیچ شناسه‌ای مشخص نشود، آخرین ساخت چاپ خواهد شد.

گزینه‌ها عبارتند از:

-f, --follow

دنبال کردن وضعیت کار.

--web

باز کردن در مرورگر.

ssh <ID>

اتصال از طریق SSH به یک کار.

submit [manifest...] [options...]

ارسال یک مانیفست ساخت.

اگر هیچ مانیفست ساختی مشخص نشود، مانیفست‌های ساخت در .build.yml، .build.yaml، .builds/*.yml و .builds/*.yaml شناسایی می‌شوند.

گزینه‌ها عبارتند از:

-e, --edit

ویرایش مانیفست با $EDITOR.

-f, --follow

دنبال کردن گزارش‌های ساخت.

-n, --note <string>

ارائهٔ یک توضیح کوتاه برای کار.

-s, --no-secrets

غیرفعال‌سازی رازها برای این ساخت.

-t, --tags <string>

برچسب‌های جداشده با اسلش (مانند “hut/test”).

-v, --visibility <string>

میزان نمایانی مورد استفاده (public، unlisted، private). پیش‌فرض unlisted است.

update <ID> [options...]

به‌روزرسانی یک کار.

گزینه‌ها عبارتند از:

-v, --visibility <string>

میزان نمایانی مورد استفاده (public، unlisted، private)

-t, --tags <string>

برچسب‌هایی که باید به کار پیوست شوند

user-webhook create [options...]

ایجاد یک وب‌هوک کاربر.

گزینه‌ها عبارتند از:

-e, --events <strings...>

فهرست رویدادهایی که باید وب‌هوک را فعال کنند (JOB_CREATED). الزامی.

--stdin

خواندن پرس‌وجو از stdin.

-q, --query <string>

پرس‌وجوی وب‌هوک. ناسازگار با --stdin (مانعة‌الجمع).

-u, --url <URL>

نشانی URL بار داده (payload) که درخواست POST را دریافت می‌کند. الزامی.

user-webhook delete <ID>

حذف یک وب‌هوک کاربر..PP
user-webhook list [options...]
فهرست کردن وب‌هوک‌های کاربر.

گزینه‌ها:

--count <int>

تعداد وب‌هوک‌ها برای دریافت.

گزینه‌ها:

-r, --repo <string>
نام مخزن.

acl delete <ID>

حذف یک مدخل ACL.

acl list [repo] [options...]

فهرست کردن مدخل‌های ACL یک مخزن. پیش‌فرض مخزن فعلی است.

گزینه‌ها:

--count <int>

تعداد مدخل‌های ACL برای دریافت.

acl update <user> [options...]

به‌روزرسانی یا افزودن یک مدخل ACL برای کاربر.

گزینه‌ها:

-m, --mode <string>

حالت دسترسی برای تنظیم (RW، RO).

artifact delete <ID>

حذف یک آرتیفکت.

artifact list [options...]

فهرست کردن آرتیفکت‌ها.

artifact upload <filename...> [options...]

بارگذاری آرتیفکت‌ها.

گزینه‌ها:

--rev <string>

تگ بازبینی. پیش‌فرض آخرین تگ Git است.

clone <repo>

این دستور مخزن را در CWD کلون کرده و در صورت امکان برای git send-email پیکربندی می‌کند. "repo" می‌تواند یک نشانی URL (مشابه scp برای git) یا یک منبع sourcehut ("hut"، "~xenrox/hut") باشد.

create <name> [options...]

ایجاد یک مخزن. در صورتی که از --clone استفاده نشود، نشانی URL دوردست در stdout چاپ خواهد شد.

گزینه‌ها:

-c, --clone

کلون کردن مخزن در CWD.

-d, --description <string>

توضیحات مخزن.

--import-url <url>

وارد کردن مخزن از URL ارائه‌شده.

-v, --visibility <string>

قابلیت مشاهده برای استفاده (public، unlisted، private). پیش‌فرض public است.

delete [repo] [options...]

حذف یک مخزن. به‌طور پیش‌فرض مخزن فعلی حذف خواهد شد.

گزینه‌ها:

-y, --yes

تأیید حذف بدون درخواست تأیید.

list [owner] [options...]

فهرست کردن مخازن.

گزینه‌ها:

--count <int>

تعداد مخازن برای دریافت.

setup [options...]

راه‌اندازی مخزن برای git send-email. برنامه hut تنظیمات مورد نیاز را از فایل پیکربندی پروژه می‌خواند. اگر مخزن از قبل دارای پیکربندی باشد، از راه‌اندازی صرف‌نظر خواهد شد.

گزینه‌ها:

-f, --force

اجبار به راه‌اندازی حتی اگر مخزن از قبل برای git send-email پیکربندی شده باشد.

show [repo] [options...]

نمایش اطلاعات درباره یک مخزن.

گزینه‌ها:

--web

باز کردن در مرورگر.

update [repo] [options...]

به‌روزرسانی یک مخزن. به‌طور پیش‌فرض مخزن فعلی به‌روزرسانی خواهد شد.

گزینه‌ها:

-b, --default-branch <branch>

تنظیم شاخه پیش‌فرض.

-d, --description <description>

تنظیم توضیحات تک‌خطی مخزن.

-n, --name <string>

نام جدید مخزن.

--readme <file>

به‌روزرسانی تنظیمات سفارشی README. می‌توانید HTML را از یک فایل بخوانید یا "-" را به‌عنوان نام فایل برای خواندن از stdin ارسال کنید. برای پاک کردن README سفارشی از یک رشته خالی "" استفاده کنید.

-v, --visibility <string>

قابلیت مشاهده برای استفاده (public، unlisted، private).

user-webhook create [options...]

ایجاد یک وب‌هوک کاربر.

گزینه‌ها:.PP -e, --events <strings...>

فهرست رویدادهایی که باید وب‌هوک را فعال کنند (REPO_CREATED, REPO_UPDATE, REPO_DELETED). الزامی است.

--stdin

خواندن پرس‌وجو از stdin.

-q, --query <string>

پرس‌وجوی وب‌هوک. غیرقابل استفاده هم‌زمان با --stdin.

-u, --url <URL>

نشانی اینترنتی بار داده (payload URL) که درخواست POST را دریافت می‌کند. الزامی است.

user-webhook delete <ID>

حذف یک وب‌هوک کاربر.

user-webhook list [options...]

فهرست کردن وب‌هوک‌های کاربر.

گزینه‌ها عبارتند از:

--count <int>

تعداد وب‌هوک‌ها برای دریافت.

webhook create [list] [options...]

ایجاد یک وب‌هوک git.

گزینه‌ها عبارتند از:

-e, --events <strings...>

فهرست رویدادهایی که باید وب‌هوک را فعال کنند (GIT_PRE_RECEIVE, GIT_POST_RECEIVE). الزامی است.

--stdin

خواندن پرس‌وجو از stdin.

-q, --query <string>

پرس‌وجوی وب‌هوک. غیرقابل استفاده هم‌زمان با --stdin.

-u, --url <URL>

نشانی اینترنتی بار داده (payload URL) که درخواست POST را دریافت می‌کند. الزامی است.

webhook delete <ID>

حذف یک وب‌هوک git.

webhook list [repo] [options...]

فهرست کردن وب‌هوک‌های git.

گزینه‌ها عبارتند از:

--count <int>

تعداد وب‌هوک‌ها برای دریافت.

گزینه‌ها عبارتند از:

-r, --repo <string>
نام مخزن.

acl delete <ID>

حذف یک مدخل ACL.

acl list [repo] [options...]

فهرست کردن مدخل‌های ACL یک مخزن. پیش‌فرض مخزن جاری است.

گزینه‌ها عبارتند از:

--count <int>

تعداد مدخل‌های ACL برای دریافت.

acl update <user> [options...]

به‌روزرسانی یا افزودن یک مدخل ACL برای کاربر.

گزینه‌ها عبارتند از:

-m, --mode <string>

حالت دسترسی برای تنظیم (RW, RO).

create <name> [options...]

ایجاد یک مخزن. در صورتی که از --clone استفاده نشود، نشانی URL دوردست در stdout چاپ خواهد شد.

گزینه‌ها عبارتند از:

-c, --clone

کلون کردن مخزن در CWD.

-d, --description <string>

توضیحات مخزن.

-v, --visibility <string>

میزان پدیداری مورد استفاده (public, unlisted, private). پیش‌فرض public است.

delete [repo] [options...]

حذف یک مخزن. به‌طور پیش‌فرض، مخزن جاری حذف خواهد شد.

گزینه‌ها عبارتند از:

-y, --yes

تأیید حذف بدون اعلان (prompt).

list [owner] [options...]

فهرست کردن مخازن.

گزینه‌ها عبارتند از:

--count <int>

تعداد مخازن برای دریافت.

update [repo] [options...]

به‌روزرسانی یک مخزن. به‌طور پیش‌فرض، مخزن جاری به‌روزرسانی خواهد شد.

گزینه‌ها عبارتند از:

-d, --description <description>

تنظیم توضیحات تک‌خطی برای مخزن.

--non-publishing <boolean>

کنترل می‌کند که آیا این مخزن، یک مخزن غیرقابل انتشار (non-publishing) باشد یا خیر.

--readme <file>

به‌روزرسانی تنظیمات README سفارشی. می‌توانید HTML را از یک فایل بخوانید یا نام فایل را "-" قرار دهید تا از stdin خوانده شود. برای پاک کردن README سفارشی از یک رشته خالی "" استفاده کنید.

-v, --visibility <string>

میزان پدیداری مورد استفاده (public, unlisted, private).

user-webhook create [options...]

ایجاد یک وب‌هوک کاربر..PP گزینه‌ها عبارتند از:

-e, --events <strings...>

فهرست رویدادهایی که باید وب‌هوک را فعال کنند (REPO_CREATED، REPO_UPDATE، REPO_DELETED). اجباری.

--stdin

خواندن پرس‌وجو از stdin.

-q, --query <string>

پرس‌وجوی وب‌هوک. غیرقابل استفاده هم‌زمان با --stdin.

-u, --url <URL>

نشانی URL بار داده (payload) که درخواست POST را دریافت می‌کند. اجباری.

user-webhook delete <ID>

حذف یک وب‌هوک کاربر.

user-webhook list [options...]

فهرست کردن وب‌هوک‌های کاربر.

گزینه‌ها عبارتند از:

--count <int>

تعداد وب‌هوک‌ها برای واکشی.

list [owner] [options...]

فهرست کردن پروژه‌ها.

گزینه‌ها عبارتند از:

--count <int>

تعداد پروژه‌ها برای واکشی.

show [project]

نمایش اطلاعات درباره یک پروژه.

گزینه‌ها عبارتند از:

-l, --mailing-list <name>
انتخاب یک لیست پستی.

به‌طور پیش‌فرض، لیست پستی پیکربندی‌شده برای مخزن Git فعلی انتخاب خواهد شد.

acl delete <ID>

حذف یک مدخل ACL.

acl list [list] [options...]

فهرست کردن مدخل‌های ACL یک لیست پستی.

گزینه‌ها عبارتند از:

--count <int>

تعداد مدخل‌های ACL برای واکشی.

archive [list] [options...]

بارگیری بایگانی یک لیست پستی در قالب یک فایل mbox به stdout.

گزینه‌ها عبارتند از:

-d, --days <int>

تعداد روزهای پایانی که بایگانی باید برای آن‌ها بارگیری شود. به‌طور پیش‌فرض کل بایگانی انتخاب خواهد شد.

create <name> [options...]

ایجاد یک لیست پستی.

گزینه‌ها عبارتند از:

--stdin

خواندن توضیحات از stdin.

-v, --visibility <string>

میزان نمایانی مورد استفاده (public، unlisted، private). پیش‌فرض public است.

delete [list] [options...]

حذف یک لیست پستی.

گزینه‌ها عبارتند از:

-y, --yes

تأیید حذف بدون پرسش.

list [owner] [options...]

فهرست کردن لیست‌های پستی.

گزینه‌ها عبارتند از:

--count <int>

تعداد لیست‌های پستی برای واکشی.

patchset apply <ID>

اعمال یک مجموعه وصله.

patchset list [list] [options...]

فهرست کردن مجموعه‌های وصله در لیست.

گزینه‌ها عبارتند از:

--count <int>

تعداد مجموعه‌های وصله برای واکشی.

-s, --status <string>

فیلتر کردن بر اساس وضعیت مجموعه وصله. به‌طور پیش‌فرض تنها مجموعه‌های وصله "PROPOSED" نمایش داده خواهند شد. از "" برای نمایش تمام مجموعه‌های وصله استفاده کنید.

-u, --user

فهرست کردن مجموعه‌های وصله بر اساس کاربر به جای لیست.

patchset show <ID>

نمایش یک مجموعه وصله.

patchset update <ID>

به‌روزرسانی یک مجموعه وصله.

گزینه‌ها عبارتند از:

-s, --status <string>

وضعیت مجموعه وصله برای تنظیم (اجباری).

preferences show

نمایش ترجیحات کاربر برای لیست‌ها.

preferences update [options...]

به‌روزرسانی ترجیحات کاربر برای لیست‌ها.

گزینه‌ها عبارتند از:.PP -c, --copy-self <boolean>

اینکه آیا کاربر مایل به دریافت رونوشتی از رایانامه‌های خود در فهرست‌های پستی است یا خیر.

subscribe [list]

اشتراک در یک فهرست پستی.

subscriptions [options...]

فهرست کردن اشتراک‌های فهرست پستی.

گزینه‌ها عبارتند از:

--count <int>

تعداد اشتراک‌ها برای واکشی.

unsubscribe [list]

لغو اشتراک از یک فهرست پستی.

update [list] [options...]

به‌روزرسانی یک فهرست پستی.

گزینه‌ها عبارتند از:

--description

ویرایش توضیحات.

-v, --visibility <string>

میزان نمایانی مورد استفاده (public، unlisted، private).

user-webhook create [options...]

ایجاد یک وب‌هوک کاربری.

گزینه‌ها عبارتند از:

-e, --events <strings...>

فهرست رویدادهایی که باید وب‌هوک را فعال کنند (LIST_CREATED، LIST_UPDATED، LIST_DELETED، EMAIL_RECEIVED، PATCHSET_RECEIVED). الزامی است.

--stdin

خواندن پرس‌وجو از stdin.

-q, --query <string>

پرس‌وجوی وب‌هوک. با --stdin مانعةالجمع است.

-u, --url <URL>

نشانی URL بار داده (payload) که درخواست POST را دریافت می‌کند. الزامی است.

user-webhook delete <ID>

حذف یک وب‌هوک کاربری.

user-webhook list [options...]

فهرست کردن وب‌هوک‌های کاربری.

گزینه‌ها عبارتند از:

--count <int>

تعداد وب‌هوک‌ها برای واکشی.

webhook create [list] [options...]

ایجاد یک وب‌هوک فهرست پستی.

گزینه‌ها عبارتند از:

-e, --events <strings...>

فهرست رویدادهایی که باید وب‌هوک را فعال کنند (LIST_UPDATED، LIST_DELETED، EMAIL_RECEIVED، PATCHSET_RECEIVED). الزامی است.

--stdin

خواندن پرس‌وجو از stdin.

-q, --query <string>

پرس‌وجوی وب‌هوک. با --stdin مانعةالجمع است.

-u, --url <URL>

نشانی URL بار داده (payload) که درخواست POST را دریافت می‌کند. الزامی است.

webhook delete <ID>

حذف یک وب‌هوک ردیاب.

webhook list [list] [options...]

فهرست کردن وب‌هوک‌های فهرست پستی.

گزینه‌ها عبارتند از:

--count <int>

تعداد وب‌هوک‌ها برای واکشی.

audit-log [گزینه‌ها...]

نمایش گزارش حسابرسی شما.

گزینه‌ها عبارتند از:

--count <int>

تعداد مدخل‌های گزارش برای دریافت.

oauth tokens

فهرست کردن توکن‌های دسترسی شخصی.

pgp-key create [path]

بارگذاری یک کلید عمومی PGP و پیوند دادن آن با حساب کاربری شما.

کلید عمومی باید در قالب armored باشد.

اگر path مشخص نشده باشد، از کلید عمومی پیش‌فرض موجود در دسته‌کلید GPG محلی استفاده می‌شود.

pgp-key delete <ID>

حذف یک کلید PGP از حساب کاربری شما.

pgp-key list [username] [گزینه‌ها...]

فهرست کردن کلیدهای عمومی PGP.

گزینه‌ها عبارتند از:

--count <int>

تعداد کلیدها جهت دریافت.

-r, --raw

تنها چاپ کلید عمومی خام

show [username]

نمایش نمایه یک کاربر.

اگر username مشخص نشده باشد، نمایه شما نمایش داده می‌شود.

ssh-key create [path]

بارگذاری یک کلید عمومی SSH و پیوند دادن آن با حساب کاربری شما.

اگر path مشخص نشده باشد، از کلید عمومی پیش‌فرض SSH استفاده می‌شود.

ssh-key delete <ID>

حذف یک کلید عمومی SSH از حساب کاربری شما.

ssh-key list [username] [گزینه‌ها...]

فهرست کردن کلیدهای عمومی SSH.

گزینه‌ها عبارتند از:

--count <int>

تعداد کلیدها جهت دریافت.

-r, --raw

تنها چاپ کلید عمومی خام

update [گزینه‌ها...]

به‌روزرسانی حساب کاربری.

گزینه‌ها عبارتند از:

--avatar

تنظیم آواتار.

--bio

ویرایش زندگی‌نامه.

--email <string>

تنظیم نشانی ایمیل.

--location <string>

تنظیم مکان.

--pronouns <string>

تنظیم ضمایر.

--url <string>

تنظیم URL.

user-webhook create [گزینه‌ها...]

ایجاد یک وب‌هوک کاربر.

گزینه‌ها عبارتند از:

-e, --events <strings...>

فهرست رویدادهایی که باید وب‌هوک را فعال کنند (PROFILE_UPDATE، PGP_KEY_ADDED، PGP_KEY_REMOVED، SSH_KEY_ADDED، SSH_KEY_REMOVED). الزامی است.

--stdin

خواندن پرس‌وجو از stdin.

-q, --query <string>

پرس‌وجوی وب‌هوک. با --stdin هم‌زمان قابل استفاده نیست.

-u, --url <URL>

نشانی URL بار داده (payload) که درخواست POST را دریافت می‌کند. الزامی است.

user-webhook delete <ID>

حذف یک وب‌هوک کاربر.

user-webhook list [گزینه‌ها...]

فهرست کردن وب‌هوک‌های کاربر.

گزینه‌ها عبارتند از:

--count <int>

تعداد وب‌هوک‌ها جهت دریافت.

acl delete <ID>

حذف یک مدخل ACL.

acl list [options...]

فهرست کردن مدخل‌های ACL یک سایت.

گزینه‌ها عبارت‌اند از:

--count <int>

تعداد مدخل‌های ACL برای واکشی.

-d, --domain <string>

نام دامنه کاملاً مشخص (FQDN). الزامی است.

-p, --protocol <string>

پروتکل مورد استفاده (HTTPS یا GEMINI؛ پیش‌فرض HTTPS است).

acl update <user> [options...]

به‌روزرسانی یک مدخل ACL برای کاربر.

گزینه‌ها عبارت‌اند از:

--id <ID>

شناسه سایت.

--publish

مجوز انتشار سایت. برای لغو مجوز، از مشخص کردن این پرچم صرف‌نظر کنید.

list [options...]

فهرست کردن سایت‌های ثبت‌شده.

گزینه‌ها عبارت‌اند از:

--count <int>

تعداد سایت‌ها برای واکشی.

publish [file] [options...]

انتشار یک وب‌سایت.

فایل ورودی file می‌تواند یک بایگانی tar فشرده‌شده با gzip یا یک دایرکتوری باشد. اگر file مشخص نشود، از ورودی استاندارد استفاده می‌شود.

گزینه‌ها عبارت‌اند از:

-d, --domain <string>

نام دامنه کاملاً مشخص (FQDN).

-p, --protocol <string>

پروتکل مورد استفاده (HTTPS یا GEMINI؛ پیش‌فرض HTTPS است)

--site-config <string>

مسیر فایل پیکربندی سایت (به‌عنوان مثال برای cache-control).

-s, --subdirectory <string>

در صورت تعیین، فقط این زیردایرکتوری به‌روزرسانی می‌شود و بقیه سایت دست‌نخورده باقی می‌ماند.

unpublish [options...]

لغو انتشار یک وب‌سایت.

گزینه‌ها عبارت‌اند از:

-d, --domain <string>

نام دامنه کاملاً مشخص (FQDN).

-p, --protocol <string>

پروتکل مورد استفاده (HTTPS یا GEMINI؛ پیش‌فرض HTTPS است)

user-webhook create [options...]

ایجاد یک وب‌هوک کاربر.

گزینه‌ها عبارت‌اند از:

-e, --events <strings...>

فهرست رویدادهایی که باید وب‌هوک را فعال کنند (SITE_PUBLISHED، SITE_UNPUBLISHED). الزامی است.

--stdin

خواندن پرس‌وجو از stdin.

-q, --query <string>

پرس‌وجوی وب‌هوک. با --stdin مانعة‌الجمع است.

-u, --url <URL>

نشانی URL بار داده (payload) که درخواست POST را دریافت می‌کند. الزامی است.

user-webhook delete <ID>

حذف یک وب‌هوک کاربر.

user-webhook list [options...]

فهرست کردن وب‌هوک‌های کاربر.

گزینه‌ها عبارت‌اند از:

--count <int>

تعداد وب‌هوک‌ها برای واکشی.

create <filenames...>

ایجاد یک پیست (paste) جدید.

گزینه‌ها عبارتند از:

-v, --visibility <string>

میزان پدیداری برای استفاده (public، unlisted، private). پیش‌فرض unlisted است.

-n, --name <string>

نام پیست ایجادشده. تنها هنگام خواندن از stdin معتبر است.

delete <IDs...>

حذف پیست‌ها.

list [options...]

فهرست کردن پیست‌ها.

گزینه‌ها عبارتند از:

--count <int>

تعداد پیست‌ها برای دریافت.

show <ID>

نمایش یک پیست.

update <ID> [options...]

به‌روزرسانی پدیداری یک پیست.

گزینه‌ها عبارتند از:

-v, --visibility <string>

میزان پدیداری برای استفاده (public، unlisted، private)

user-webhook create [options...]

ایجاد یک وب‌هوک کاربری.

گزینه‌ها عبارتند از:

-e, --events <strings...>

فهرست رویدادهایی که باید وب‌هوک را فعال کنند (PASTE_CREATED، PASTE_UPDATED، PASTE_DELETED). الزامی است.

--stdin

خواندن پرس‌وجو از stdin.

-q, --query <string>

پرس‌وجوی وب‌هوک. مانعة‌الجمع با --stdin.

-u, --url <URL>

نشانی اینترنتی (URL) محموله که درخواست POST را دریافت می‌کند. الزامی است.

user-webhook delete <ID>

حذف یک وب‌هوک کاربری.

user-webhook list [options...]

فهرست کردن وب‌هوک‌های کاربری.

گزینه‌ها عبارتند از:

--count <int>

تعداد وب‌هوک‌ها برای دریافت.

گزینه‌ها عبارتند از:

-t, --tracker <string>
نام ردیاب (tracker).

acl delete <ID>

حذف یک مدخل ACL.

acl list [tracker] [options...]

فهرست کردن مدخل‌های ACL یک ردیاب.

گزینه‌ها عبارتند از:

--count <int>

تعداد مدخل‌های ACL برای دریافت.

create <name> [options...]

ایجاد یک ردیاب.

گزینه‌ها عبارتند از:

--stdin

خواندن توضیحات از stdin.

-v, --visibility <string>

میزان پدیداری برای استفاده (public، unlisted، private). پیش‌فرض public است.

delete [tracker] [options...]

حذف یک ردیاب.

گزینه‌ها عبارتند از:

-y, --yes

تأیید حذف بدون پرسش مجدد.

label create <name> [options...]

ایجاد یک برچسب.

گزینه‌ها عبارتند از:

-b, --background

رنگ پس‌زمینه در قالب hex (الزامی).

-f, --foreground

رنگ پیش‌زمینه در قالب hex. در صورت تعیین نشدن، رنگ سیاه یا سفید برای کنتراست بهینه انتخاب خواهد شد.

label delete <name>

حذف یک برچسب.

label list [options...]

فهرست کردن برچسب‌ها.

گزینه‌ها عبارتند از:

--count <int>

تعداد برچسب‌ها برای دریافت.

label update <name> [options...]

به‌روزرسانی یک برچسب.

گزینه‌ها عبارتند از:

-b, --background

رنگ پس‌زمینه در قالب hex.

-f, --foreground

رنگ پیش‌زمینه در قالب hex..PP
-n, --name
نام برچسب جدید.

list [owner] [options...]

فهرست کردن ردگیرها.

گزینه‌ها عبارتند از:

--count <int>

تعداد ردگیرها برای دریافت.

preferences show

نمایش ترجیحات کاربر برای ردگیرها.

preferences update [options...]

به‌روزرسانی ترجیحات کاربر برای ردگیرها.

گزینه‌ها عبارتند از:

-n, --notify-self <boolean>

این که آیا کاربر می‌خواهد از اقدامات خودش مطلع شود یا خیر.

subscribe [tracker]

مشترک شدن در یک ردگیر.

ticket assign <ID> [options...]

تخصیص یک کاربر به یک تیکت.

گزینه‌ها عبارتند از:

-u, --user

نام کاربری مسئول جدید (الزامی).

ticket comment <ID> [options...]

ثبت نظر روی یک تیکت.

گزینه‌ها عبارتند از:

-r, --resolution

راه‌حل برای تیکت‌های حل‌شده. در صورت مشخص نشدن وضعیت، بر روی RESOLVED تنظیم خواهد شد.

-s, --status

وضعیت جدید تیکت. در صورت تنظیم بر روی RESOLVED، راه‌حل به‌طور پیش‌فرض CLOSED خواهد بود.

--stdin

خواندن نظر از stdin.

ticket create [options...]

ایجاد یک تیکت جدید.

گزینه‌ها عبارتند از:

--stdin

خواندن تیکت از stdin.

ticket delete <ID> [options...]

حذف یک تیکت.

گزینه‌ها عبارتند از:

-y, --yes

تأیید حذف بدون اعلانات و پرسش.

ticket edit <ID>

ویرایش یک تیکت.

ticket label <ID> [options...]

افزودن برچسب به یک تیکت.

گزینه‌ها عبارتند از:

-l, --label <name>

نام برچسب (الزامی).

ticket list [options...]

فهرست کردن تیکت‌ها.

گزینه‌ها عبارتند از:

--count <int>

تعداد تیکت‌ها برای دریافت.

-s, --status <string>

فیلتر بر اساس وضعیت تیکت. به‌طور پیش‌فرض تنها تیکت‌های باز نمایش داده خواهند شد. برای نمایش تمام تیکت‌ها از "" استفاده کنید.

ticket show <ID> [options...]

نمایش یک تیکت.

گزینه‌ها عبارتند از:

--web

باز کردن در مرورگر.

ticket subscribe <ID>

مشترک شدن در یک تیکت.

ticket unassign <ID> [options...]

لغو تخصیص یک کاربر از یک تیکت.

گزینه‌ها عبارتند از:

-u, --user

نام کاربری کاربر تخصیص‌یافته (الزامی).

ticket unlabel <ID> [options...]

حذف یک برچسب از یک تیکت.

گزینه‌ها عبارتند از:

-l, --label <name>

نام برچسب (الزامی).

ticket unsubscribe <ID>

لغو اشتراک از یک تیکت.

ticket update-status <ID> [options...]

به‌روزرسانی وضعیت یک تیکت.

گزینه‌ها عبارتند از:

-r, --resolution

راه‌حل برای تیکت‌های حل‌شده (در صورت استفاده از وضعیت RESOLVED الزامی است). اگر وضعیت قید نشود، بر روی RESOLVED تنظیم خواهد شد.

-s, --status

وضعیت جدید تیکت.

ticket webhook create <ID> [options...]

ایجاد یک وب‌هوک برای تیکت..PP گزینه‌ها:

-e, --events <strings...>

فهرستی از رویدادهایی که باید وب‌هوک را فعال کنند (EVENT_CREATED، TICKET_UPDATE، TICKET_DELETED). اجباری.

--stdin

خواندن پرس‌وجو از stdin.

-q, --query <string>

پرس‌وجوی وب‌هوک. با --stdin هم‌زمان قابل استفاده نیست.

-u, --url <URL>

نشانی URL بار داده (payload) که درخواست POST را دریافت می‌کند. اجباری.

ticket webhook delete <ID>

حذف یک وب‌هوک تیکت.

ticket webhook list <ID> [options...]

فهرست کردن وب‌هوک‌های تیکت.

گزینه‌ها:

--count <int>

تعداد وب‌هوک‌ها برای واکشی.

unsubscribe [tracker]

لغو اشتراک از یک ترکر (tracker).

update [tracker] [options...]

به‌روزرسانی یک ترکر.

گزینه‌ها:

--description

ویرایش توضیحات.

-n, --name <string>

نام جدید ترکر.

-v, --visibility <string>

میزان نمایانی مورد استفاده (public، unlisted، private).

user-webhook create [options...]

ایجاد یک وب‌هوک کاربر.

گزینه‌ها:

-e, --events <strings...>

فهرستی از رویدادهایی که باید وب‌هوک را فعال کنند (TRACKER_CREATED، TRACKER_UPDATE، TRACKER_DELETED، TICKET_CREATED). اجباری.

--stdin

خواندن پرس‌وجو از stdin.

-q, --query <string>

پرس‌وجوی وب‌هوک. با --stdin هم‌زمان قابل استفاده نیست.

-u, --url <URL>

نشانی URL بار داده (payload) که درخواست POST را دریافت می‌کند. اجباری.

user-webhook delete <ID>

حذف یک وب‌هوک کاربر.

user-webhook list [options...]

فهرست کردن وب‌هوک‌های کاربر.

گزینه‌ها:

--count <int>

تعداد وب‌هوک‌ها برای واکشی.

webhook create [tracker] [options...]

ایجاد وب‌هوک برای ترکر.

گزینه‌ها:

-e, --events <strings...>

فهرستی از رویدادهایی که باید وب‌هوک را فعال کنند (TRACKER_UPDATE، TRACKER_DELETED، LABEL_CREATED، LABEL_UPDATE، LABEL_DELETED، TICKET_CREATED، TICKET_UPDATE، TICKET_DELETED، EVENT_CREATED). اجباری.

--stdin

خواندن پرس‌وجو از stdin.

-q, --query <string>

پرس‌وجوی وب‌هوک. با --stdin هم‌زمان قابل استفاده نیست.

-u, --url <URL>

نشانی URL بار داده (payload) که درخواست POST را دریافت می‌کند. اجباری.

webhook delete <ID>

حذف یک وب‌هوک ترکر.

webhook list [tracker] [options...]

فهرست کردن وب‌هوک‌های ترکر.

گزینه‌ها:

--count <int>

تعداد وب‌هوک‌ها برای واکشی.

یک توکن دسترسی OAuth2 جدید در meta.sr.ht ایجاد کنید.

در هنگام راه‌اندازی، hut به دنبال فایلی در مسیر $XDG_CONFIG_HOME/hut/config می‌گردد. در صورت عدم تنظیم، مقدار پیش‌فرض $XDG_CONFIG_HOME برابر با ~/.config/ خواهد بود.

instance "sourcehut" {
	# Set the origin/common domain for the instance.
	origin "sr.ht"
	access-token "<token>"
	# As an alternative you can specify a command whose first line of output
	# will be parsed as the token
	access-token-cmd pass token
	meta {
		# You can set the origin for each service. As fallback hut will
		# construct the origin from the instance name and the service.
		origin "https://meta.sr.ht"
	}
}

فایل پیکربندی پروژه، فایلی در بالاترین سطح یک مخزن به نام .hut.scfg است که در آن می‌توان ردیاب (tracker) و فهرست ایمیل توسعه مرتبط را مشخص کرد. این منابع هر زمان که دستوری فراخوانی شود که به ردیاب یا فهرست ایمیل نیاز دارد و هیچ موردی به‌طور صریح تنظیم نشده باشد، استفاده خواهند شد. علاوه بر این، امکان پیکربندی این مورد وجود دارد که وصله‌ها حاوی نام مخزن در پیشوند خود باشند. دستور hut git clone مخزن تازه کلون‌شده را به‌گونه‌ای پیکربندی می‌کند که مشارکت آسان‌تر شود.

tracker https://todo.sr.ht/~xenrox/hut
development-mailing-list ~xenrox/hut-dev@lists.sr.ht
patch-prefix false

در ابتدا توسط Simon Ser <contact@emersion.fr> نوشته شده است. در حال حاضر توسط Thorben Günther <admin@xenrox.net> نگهداری می‌شود که توسط سایر مشارکت‌کنندگان متن‌باز یاری می‌گردد. برای اطلاعات بیشتر درباره توسعه hut، به https://sr.ht/~xenrox/hut مراجعه کنید.

2026-03-28