المطورون
عقد أتمتة CLI
أنشئ برامج نصية موثوقة باستخدام JSON ذي إصدار ومدخلات حتمية ورموز خطأ وخروج مستقرة.
- --json
- --yes
- schema_version: 1
{
"schema_version": 1,
"ok": true,
"command": "project.bindings",
"result": { "bindings": [] }
}{
"schema_version": 1,
"ok": false,
"command": "operation.start",
"error": {
"code": "input_required",
"message": "...",
"details": {}
}
}المرجع
حالة الأتمتة في لمحة
successاكتمل الأمر بنجاح أو أُلغي اختيار تفاعلي قبل بدء العمل.input_requiredلم يتوفر إدخال مطلوب أثناء التنفيذ غير التفاعلي.operation_failedوصلت العملية إلى حالة نهائية فاشلة أو مجهضة.المرجع
رموز الخروج والخطأ المستقرة
استخدم حالة العملية للمعالجة العامة ورمز خطأ JSON للاسترداد المحدد.
| الخروج | الرمز المستقر | المعنى |
|---|---|---|
0 | success | اكتمل الأمر بنجاح أو أُلغي اختيار تفاعلي قبل بدء العمل. |
1 | internal_failure / command_failed | حدث فشل غير متوقع أو فشل على مستوى الأمر. |
2 | invalid_usage | الوسائط أو استخدام الأمر غير صالح. |
3 | authentication_failed | المصادقة مفقودة أو منتهية أو مرفوضة. |
4 | input_required | لم يتوفر إدخال مطلوب أثناء التنفيذ غير التفاعلي. |
5 | local_failure | فشل ملف أو أداة أو إعداد أو إجراء نظام ملفات محلي. |
6 | gateway_failure | تعذر الوصول إلى البوابة أو أعادت استجابة غير صالحة. |
7 | remote_rejection | رفضت الخدمة البعيدة طلباً صالحاً. |
8 | operation_failed | وصلت العملية إلى حالة نهائية فاشلة أو مجهضة. |
130 | interrupted | تمت مقاطعة العملية؛ ولا يُجهض عمل الخادم المقبول تلقائياً. |
نتائج الأوامر
الحقول التي يعيدها كل أمر
تُضاف الحقول فقط ضمن الإصدار 1. على المستهلكين تجاهل الحقول التي لا يعرفونها.
| الأمر | حقول النتيجة | ملاحظات |
|---|---|---|
login / status | api_url, user_id, credential_source | بيانات المصادقة دون كشف الرمز. |
logout | api_url, stored_token_removed, environment_authentication_active | يبلغ عن إزالة الرمز المحفوظ وبقاء مصادقة البيئة. |
project.bind | binding | cancelled, path | يعيد الرابط أو نتيجة إلغاء المستخدم. |
project.forget | path, removed[], cancelled | يحدد الروابط المحذوفة والإلغاء. |
project.bindings | bindings[] | يعيد كل الروابط المحلية المطابقة. |
project.sync | binding, mode, path, preview, applied, summary, media[], cancelled | يتضمن وضع المعاينة أو التطبيق والملخص وتغييرات الوسائط والإلغاء. |
operation.start | cancelled, path, project_id, operation_id, status, lifecycle_status, detached, output_target, remove_track, sources_accepted, required_credits, available_credits, outputs[], applied_tracks, skipped_tracks, removed_tracks | يحدد العملية وما إذا كان التنفيذ قد انفصل. |
operation.watch | operation_id, project_id, status, lifecycle_status, progress_status, failures[], local_output_pending | يبلغ عن دورة الحياة والتقدم والأخطاء والمخرجات المحلية المعلقة. |
operation.apply | cancelled, path, operation_id, project_id, status, output_target, remove_track, partial, outputs[], applied_tracks, skipped_tracks, removed_tracks | يبلغ عن المخرجات المكتوبة وإجراءات المسارات وحالة النتيجة الجزئية. |
الإدخال الحتمي
قد يظل --json يطلب إدخالاً على stderr. أضف --yes لتعطيل المطالبات ووفّر كل اختيار غير حتمي عبر الخيارات أو الإعداد أو متغيرات البيئة المحمية.
subft --json --yes operation start PATH --lang de --project-id PROJECT_ID --detach
الإلغاء والنتائج الجزئية
ينتهي الإلغاء التفاعلي بالرمز 0 وcancelled: true قبل اعتماد العمل. ينتهي Ctrl-C بالرمز 130 دون إجهاض عمل الخادم المقبول. مع --yes تتطلب المخرجات غير المكتملة --allow-partial ويظل الخروج غير صفري بعد تطبيق المسارات المتاحة.
subft --json --yes operation apply OPERATION_ID PATH --allow-partial