nessie

إعداد منفّذ عن بُعد

ثبّت حاسوبًا واقرنه وأدره ليعمل مع وكلاء Nessie.

يربط المنفّذ جهازًا تتحكم به بـ Nessie. ثبّته تحت حساب نظام التشغيل الذي ينبغي أن تُستخدم ملفاته وبرامجه. لا تحتاج إلى Node.js ولا إلى نسخة من المصدر (checkout).

macOS

تتطلب واجهة سطر الأوامر macOS 15 أو أحدث على معالجات Apple Silicon:

brew install unlikeotherai/tap/nessie-executor

من أجل تطبيق Nessie الكامل لسطح المكتب، أو المنفّذ المستقل مع نافذة الأذونات المحلية:

brew install --cask unlikeotherai/tap/nessie
brew install --cask unlikeotherai/tap/nessie-executor-app

اختر الواجهة التي تريد استخدامها. شغّل مشرفًا واحدًا لكل إقران. وفي تطبيق المنفّذ، يتحكم Settings → Open Nessie Executor when I log in في التشغيل التلقائي.

Debian وUbuntu

استخدم مستودع APT الموقّع على Debian 12 أو أحدث، أو Ubuntu 22.04 أو أحدث، على معمارية x86_64:

sudo apt-get update
sudo apt-get install -y curl ca-certificates
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://packages.nessie.works/nessie-executor.asc | sudo tee /etc/apt/keyrings/nessie-executor.asc >/dev/null
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/nessie-executor.asc] https://packages.nessie.works/apt stable main" | sudo tee /etc/apt/sources.list.d/nessie-executor.list >/dev/null
sudo apt-get update
sudo apt-get install nessie-executor

Fedora وRocky Linux وAlmaLinux

استخدم مستودع RPM الموقّع على Fedora، أو Rocky Linux أو AlmaLinux 9 أو أحدث، على معمارية x86_64:

sudo curl -fsSL https://packages.nessie.works/nessie-executor.repo -o /etc/yum.repos.d/nessie-executor.repo
sudo dnf install nessie-executor

تتطلب خدمات الخلفية في Linux نظام systemd. وتتضمن الحزم وقت التشغيل، ويُثبّت APT أو DNF برنامجي Git وtmux بوصفهما تبعيات.

منفّذ Windows

ثبّت المنفّذ المستقل الموقّع باستخدام WinGet:

winget install --exact --id UnlikeOtherAI.NessieExecutor

افتح Nessie Executor من قائمة ابدأ أو من علبة النظام. تعمل الاتصالات الجديدة للفرق بوصفها حسابك الذي سجّلت الدخول به إلى Windows. ويوفّر المثبّت أيضًا مشرف حساب الخدمة المستقل. ولا تعمل برامج الطرفية التفاعلية إلا في اتصال بجلسة المستخدم، حيث تتوفر بيانات تسجيل دخولها.

إقران فريق

شغّل واجهة سطر الأوامر بحسابك العادي، من دون sudo:

nessie-executor login --api nessie --workspace "/path/to/work"

من أجل خادم Nessie الخاص بك، استبدل nessie بعنوان URL لواجهة API عبر HTTPS. ويبدأ الزر Add team في المنفّذ المكتبي التدفق نفسه.

  1. انسخ الرمز المكوّن من ثماني خانات الظاهر على الجهاز.
  2. في Nessie، افتح Admin › Computers › Add a computer. ألصق الرمز، واختر المؤسسة والفريق ونطاق الوصول، وراجع البصمة.
  3. أكّد على الجهاز المؤسسة والفريق اللذين يدّعيهما.
  4. تأكّد من أن المنفّذ متصل، وراجع إمكاناته في Nessie، ثم امنح الوكلاء المقصودين صلاحية الوصول إليه.

تنتهي صلاحية الرموز بعد عشر دقائق، وتعمل مرة واحدة فقط. كرّر login أو Add team لإقران فريق آخر. ولكل اتصال مفتاح جهازه الخاص، ومجلداته، وقواعد أوامره، وخدمة بدء تشغيله الخاصة به.

nessie-executor teams
nessie-executor permissions --executor <executor-id>
nessie-executor permissions --executor <executor-id> --allow-all --deny "git push *"
nessie-executor permissions --executor <executor-id> --allow "git *,pnpm *"

كل الأوامر مسموحة افتراضيًا، رهنًا بفحوص السلامة البنيوية؛ وقائمة المنع المحلية تتغلّب على قائمة السماح. تُخزَّن أذونات المجلدات والأوامر على هذا الجهاز وحده، ولا يمكن تغييرها من خلال Nessie. وتتحكم Nessie في الأشخاص والوكلاء الذين يستطيعون استخدام الاتصال داخل فريقهم. أوقف الخدمة المحلية قبل تغيير الأذونات، ثم شغّلها من جديد.

يمكن للوكلاء أيضًا تشغيل Codex وGemini وClaude أو صدفة أو أي برنامج آخر مثبَّت في طرفية تفاعلية على هذا الجهاز، بالقدر الذي تسمح به قواعد الأوامر هذه؛ ولا يُفعَّل شيء آخر. ويجب أن تكون هذه البرامج مثبّتة ومسجَّلة الدخول تحت الحساب نفسه، ويحتاج macOS وLinux إلى tmux. ولبرنامج الطرفية صلاحيات حساب نظام التشغيل، ومجلده ليس صندوقًا معزولًا (sandbox). ويحتاج command.run المعزول بشكل منفصل إلى بيئة التشغيل الضيفة.

بدء التشغيل والحالة والتحديثات

يفعّل login التفاعلي بدء التشغيل التلقائي بعد تأكيد الإقران. وعلى macOS يبدأ وكيل launchd ذلك الفريق عند تسجيل دخولك. أما على Linux فتُبقي خدمة مستخدم systemd مع خاصية lingering الاتصال قائمًا عبر تسجيل الخروج وإعادة التشغيل.

nessie-executor status
nessie-executor enable <executor-id>
nessie-executor disable <executor-id>

يوقف disable الخدمة دون حذف إقرانها أو أذوناتها. وفي جلسة تعمل في المقدمة، عطّل خدمتها أولًا، ثم استخدم nessie-executor daemon --executor <executor-id>. وتستخدم الإقرانات التي أُنشئت بخيار --state-dir صريح إشرافًا في المقدمة.

سجلات واجهة سطر الأوامر على Mac موجودة في ~/Library/Logs/NessieExecutor/<executor-id>.log. وسجلات Linux متاحة عبر journalctl --user -u nessie-executor@<executor-id>.

حدّث باستخدام مدير الحزم لديك:

brew upgrade nessie-executor
sudo apt-get update && sudo apt-get install --only-upgrade nessie-executor
sudo dnf upgrade nessie-executor

على Windows، استخدم winget upgrade --exact --id UnlikeOtherAI.NessieExecutor. وأعد تشغيل كل خدمة لواجهة سطر الأوامر بـ disable ثم enable بعد التحديث. وتعيش مفاتيح الإقران الخاصة بواجهة سطر الأوامر وأذوناتها المحلية في ~/.local/state/nessie-executor/. أما تطبيقات سطح المكتب فتحفظ حالتها في مجلد بيانات التطبيقات الخاص بالحساب. ويقع الاثنان خارج الحزمة المثبَّتة، فتحافظ عمليات التحديث عليهما.

لإزالة البرنامج، عطّل كل خدمات واجهة سطر الأوامر، أو أوقف إعداد تسجيل الدخول في التطبيق واخرج منه، ثم أزله عبر مدير الحزم نفسه. ويحتفظ الإلغاء بحالة الإقران. Disconnect أو Delete المنفّذ في Nessie لإلغاء الوصول؛ فحذف الملفات المحلية وحدها لا يلغي سجل الخادم.

لتفاصيل الإعداد المحلي، راجع ضوابط المنفّذ المحلية.