Skip to main content

screenshot

Take a screenshot of the game window (OpenChaos.exe). Use when the user asks to see the game screen, or when you need to see what's currently rendered. Never take screenshots proactively — only when the user explicitly asks or confirms. Trigger when: user says "скрин", "screenshot", "покажи что на экране", "сделай скрин", "что сейчас видно", "скринь", "сфоткай", "покажи экран", or when you suggest taking a screenshot and the user agrees.

معلومات المصدر

المستودع
UltimaBeaR/OpenChaos
آخر نشاط في المصدر
٣ أبريل ٢٠٢٦ في ٢٢:١٨
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
٨
التفرعات
٤

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
screenshot
description
Take a screenshot of the game window (OpenChaos.exe). Use when the user asks to see the game screen, or when you need to see what's currently rendered. Never take screenshots proactively — only when the user explicitly asks or confirms. Trigger when: user says "скрин", "screenshot", "покажи что на экране", "сделай скрин", "что сейчас видно", "скринь", "сфоткай", "покажи экран", or when you suggest taking a screenshot and the user agrees.
# Screenshot — capture the game window ## When to use - User **explicitly** says "сделай скрин", "screenshot", "скринь" — just do it - You **think** a screenshot would help but user didn't ask — ask first: "Сделать скриншот?" - **Never take screenshots without permission** ## Capture command ```bash powershell -c " Add-Type -AssemblyName System.Windows.Forms Add-Type -AssemblyName System.Drawing Add-Type @' using System; using System.Runtime.InteropServices; public class ScrCap { [DllImport(\"user32.dll\")] public static extern bool SetProcessDPIAware(); [DllImport(\"user32.dll\")] public static extern bool IsIconic(IntPtr hWnd); [DllImport(\"user32.dll\")] public static extern bool ShowWindow(IntPtr hWnd, int nCmdShow); [DllImport(\"user32.dll\")] public static extern bool SetForegroundWindow(IntPtr hWnd); [DllImport(\"dwmapi.dll\")] public static extern int DwmGetWindowAttribute(IntPtr hwnd, int attr, out RECT rect, int size); [StructLayout(LayoutKind.Sequential)] public struct RECT { public int Left, Top, Right, Bottom; } } '@ [ScrCap]::SetProcessDPIAware() | Out-Null \$proc = Get-Process OpenChaos -ErrorAction SilentlyContinue if (-not \$proc) { Write-Host 'OpenChaos not running'; exit 1 } \$hwnd = \$proc.MainWindowHandle if ([ScrCap]::IsIconic(\$hwnd)) { [ScrCap]::ShowWindow(\$hwnd, 9) | Out-Null } [ScrCap]::SetForegroundWindow(\$hwnd) | Out-Null Start-Sleep -Milliseconds 300 \$rect = New-Object ScrCap+RECT [ScrCap]::DwmGetWindowAttribute(\$hwnd, 9, [ref]\$rect, [Runtime.InteropServices.Marshal]::SizeOf(\$rect)) | Out-Null \$w = \$rect.Right - \$rect.Left; \$h = \$rect.Bottom - \$rect.Top \$bmp = New-Object System.Drawing.Bitmap(\$w, \$h) \$g = [System.Drawing.Graphics]::FromImage(\$bmp) \$g.CopyFromScreen(\$rect.Left, \$rect.Top, 0, 0, (New-Object System.Drawing.Size(\$w, \$h))) \$g.Dispose() \$stream = [System.IO.File]::Create('C:\WORK\OpenChaos\_CLAUDE_SCREEN.png') \$bmp.Save(\$stream, [System.Drawing.Imaging.ImageFormat]::Png) \$stream.Close(); \$bmp.Dispose() Write-Host 'OK' " 2>&1 ``` **If PowerShell complains about duplicate type `ScrCap`** — change `ScrCap` to `ScrCap2`, `ScrCap3`, etc. (types persist per PowerShell session). ## After capturing 1. Read the screenshot: `Read` tool on `c:\WORK\OpenChaos\_CLAUDE_SCREEN.png` 2. Show the user a clickable link: `[screenshot](_CLAUDE_SCREEN.png)` 3. Describe what you see 4. File is overwritten each time, gitignored ## Technical details - `SetProcessDPIAware()` — required for correct coordinates on scaled displays - `DwmGetWindowAttribute(hwnd, 9)` — real window bounds without shadow - `IsIconic` + `ShowWindow(9)` — restores if minimized - `CopyFromScreen` — works with OpenGL (unlike PrintWindow)
عرض على GitHub