Repository navigation
Arabic automation
كل ما تفعله الأزرار هو أمر له معرّف، مثل capture.fullscreen أو doc.export. النافذة وأداة سطر الأوامر وقناة التحكم وخادم MCP تستدعي القائمة نفسها. ما تستطيع نقره تستطيع كتابته في سكربت. بعض الأوامر بلا زر بعد. تلك في آخر هذه الصفحة.
screenit-cli يُبنى بجانب التطبيق (cargo build --release -p screenit-cli) ويُضمَّن عند تجهيز إصدار.
screenit-cli commands --ids
screenit-cli exec capture.fullscreen
screenit-cli exec doc.export '{"path":"C:\\Users\\Public\\shot.png"}'exec يطبع نتيجة JSON. الحقول غير المعروفة تُرفض ولا يُطبَّق شيء. المعاملات السيئة تُرجع خطأ. لا تُسقط العملية.
screenit-cli run '[["capture.fullscreen",{}],["doc.export",{"path":"shot.png"}]]'ما دام screenit.exe مفتوحًا فهو يستمع على 127.0.0.1 ومنفذ مؤقت. %LOCALAPPDATA%\screenIt\control.json يحتوي port وtoken وpid. كل طلب يجب أن يحمل هذا الرمز. الطلبات تُنفَّذ على خيط الواجهة، فتتحدث النافذة فورًا. تنتهي مهلة الرد بعد 60 ثانية.
$c = Get-Content "$env:LOCALAPPDATA\screenIt\control.json" | ConvertFrom-Json
$tcp = [System.Net.Sockets.TcpClient]::new("127.0.0.1", $c.port)
$w = [System.IO.StreamWriter]::new($tcp.GetStream()); $w.AutoFlush = $true
$r = [System.IO.StreamReader]::new($tcp.GetStream())
$w.WriteLine((@{ id = 1; token = $c.token; method = "engine.execute";
params = @{ command = "capture.fullscreen"; params = @{} } } | ConvertTo-Json -Depth 5 -Compress))
$r.ReadLine()طريقتان مهمتان:
| الطريقة | الغرض |
|---|---|
engine.commands |
تسرد كل أمر: المعرّف، والتسمية، ومسار القائمة، والاختصار، ووصف المعاملات، وهل يجب أن يكون هناك مستند مفتوح. |
engine.execute |
تشغّل أمرًا واحدًا. الجسم: {"command","params"}. |
screenit-cli serve يتكلم JSON نفسه، كائنًا في كل سطر على stdin/stdout، في جلسة بلا واجهة وبلا رمز. screenit-cli mcp يقدّم الأوامر نفسها أدوات Model Context Protocol على stdio، لوكيل يستدعي screenIt مباشرة.
مواصفات البروتوكول في docs/control-protocol.md داخل المستودع.
هذه تعمل. ليست في شريط الالتقاط ولا في المحرر.
| الأمر | ماذا يفعل |
|---|---|
capture.scroll.begin و.add_frame و.finish و.cancel
|
لقطة تمرير تُضم الإطارات فيها. |
capture.freehand وcapture.multi_area وcapture.fixed وcapture.last_region
|
أشكال تحديد أخرى، وتكرار المستطيل السابق. |
capture.preset.save و.list و.delete و.run
|
إعدادات التقاط مسماة، منها التأخير وهل يُفتح المحرر. |
doc.export بمسار .jpg أو .gif أو .bmp أو .tif أو .webp أو .pdf
|
يسطّح المستند المفتوح إلى تلك الصيغة. زر المحرر نفسه يطلب PNG دائمًا. |
image.border وimage.shadow وimage.edges وimage.reflection وimage.spotlight وimage.watermark وimage.perspective وimage.pagecurl وimage.fade وimage.canvas وimage.trim وimage.combine
|
إطار، وظل، وحافة ممزقة، وانعكاس، وضوء مسلط، وعلامة مائية، ومنظور، وطي صفحة، وما يتصل بها. |
image.grayscale وimage.invert وimage.sepia وimage.blur وimage.pixelate وimage.sharpen وimage.resize وimage.rotate وimage.flip_horizontal وimage.flip_vertical
|
تعديلات على البكسلات. |
editor.smart_redact |
يجد البريد والهاتف وأرقام البطاقات (Luhn) وعناوين IP والروابط وعباراتك، ثم يبكسلها أو يموّهها. الجودة تتبع التعرّف على النص. |
image.remove_background |
إزالة خلفية حسب اللون ابتداءً من الزوايا. ليس نموذج تقسيم. |
video.trim وvideo.cut وvideo.combine وvideo.gif وvideo.from_images
|
قص أو قطع أو دمج تسجيلات، أو GIF متحركة، أو MP4 من صور. القص يعيد الترميز. |
record.devices |
يسرد الكاميرات وأجهزة التسجيل ذات الصلة. |
settings.get وsettings.set وsettings.reset وsettings.open
|
قراءة ملف الإعدادات وكتابته. |
ocr.info |
يبلّغ عن محرك التعرّف النشط واللغات المثبّتة. |
مرّر المعاملات JSON. screenit-cli commands يطبع نص المعاملات لكل معرّف. المستند الناقص يُرجع خطأ من الأوامر التي تطلب مستندًا، مثل doc.export قبل أي التقاط.
screenIt 0.2.14 · Windows 10 (1903+) and Windows 11 · MIT or Apache-2.0