Hig Project Context
raintree-technology/hig-doctor
Create or update a shared Apple design context document that other HIG skills use to tailor guidance.
Verify iOS app behavior on device or simulator via screenshots, UI hierarchy, and touch interactions.
$ npx skills add Infomaniak/desktop-kDrive --skill device-interaction -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Infomaniak/desktop-kDrive device-interaction --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/Infomaniak/desktop-kDrive.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/device-interaction .claude/skills/device-interaction && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "device-interaction" agent skill from https://github.com/Infomaniak/desktop-kDrive/tree/develop/.agents/skills/device-interaction into .claude/skills/device-interaction/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "device-interaction", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Infomaniak/desktop-kDrive/tree/develop/.agents/skills/device-interactionType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Infomaniak/desktop-kDrive --skill device-interaction -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Infomaniak/desktop-kDrive device-interaction --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Infomaniak/desktop-kDrive.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/device-interaction .agents/skills/device-interaction && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "device-interaction" agent skill from https://github.com/Infomaniak/desktop-kDrive/tree/develop/.agents/skills/device-interaction into .agents/skills/device-interaction/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "device-interaction", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Infomaniak/desktop-kDrive --skill device-interaction -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Infomaniak/desktop-kDrive device-interaction --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Infomaniak/desktop-kDrive.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/device-interaction .cursor/skills/device-interaction && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "device-interaction" agent skill from https://github.com/Infomaniak/desktop-kDrive/tree/develop/.agents/skills/device-interaction into .cursor/skills/device-interaction/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "device-interaction", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Infomaniak/desktop-kDrive.git --path .agents/skills/device-interaction--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Infomaniak/desktop-kDrive --skill device-interaction -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Infomaniak/desktop-kDrive device-interaction --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Infomaniak/desktop-kDrive.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/device-interaction .gemini/skills/device-interaction && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "device-interaction" agent skill from https://github.com/Infomaniak/desktop-kDrive/tree/develop/.agents/skills/device-interaction into .gemini/skills/device-interaction/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "device-interaction", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Infomaniak/desktop-kDrive device-interactionInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Infomaniak/desktop-kDrive --skill device-interaction -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Infomaniak/desktop-kDrive.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/device-interaction .github/skills/device-interaction && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "device-interaction" agent skill from https://github.com/Infomaniak/desktop-kDrive/tree/develop/.agents/skills/device-interaction into .github/skills/device-interaction/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "device-interaction", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Infomaniak/desktop-kDrive --skill device-interaction -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Infomaniak/desktop-kDrive device-interaction --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Infomaniak/desktop-kDrive.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/device-interaction .opencode/skills/device-interaction && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "device-interaction" agent skill from https://github.com/Infomaniak/desktop-kDrive/tree/develop/.agents/skills/device-interaction into .opencode/skills/device-interaction/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "device-interaction", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
device-interactionVerify iOS app behavior on device or simulator via screenshots, UI hierarchy, and touch interactions.
Device Interaction is an agent skill from Infomaniak/desktop-kDrive. Verify iOS app behavior on device or simulator via screenshots, UI hierarchy, and touch interactions.
Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Mobile, covering iOS development. It works with iOS. The repository describes itself as: :computer: Desktop Syncing Client for kDrive. The licence is GPL-3.0.
Read from SKILL.md and the folder at commit 1723c4a. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Device Interaction loads about 1.9k tokens when it runs. Until then it costs about 30 tokens; SKILL.md has 915 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from Infomaniak/desktop-kDrive at commit 1723c4a, republished under its GPL-3.0 licence (© Infomaniak). 915 words, ~1,893 tokens.
.claude/skills/device-interaction/SKILL.md (or your agent's skills folder).TRIGGER when: user asks to verify/test/check if the app works on device, after implementing a UI-affecting feature that needs device verification, user says "does it work", "test this", "check on device", user reports UI doesn't work as expected, need to debug touch/interaction issues. DO NOT TRIGGER when: user asks about unit tests only, build-only requests without device testing, code review without device testing, simulator configuration questions, changes that don't affect UI (e.g. comments, refactors, non-UI logic).
This is a SUBAGENT skill. Invoke it via the Agent tool when device verification is needed.
Agent tool:
- subagent_type: "general-purpose"
- description: "Verify login feature works"
- prompt: "Using the device-interaction skill, verify that the login feature works correctly on session <device-interaction-session>. Launch the app, capture screenshot and UI hierarchy, check that the login button is visible and tappable, and report if the implementation is working correctly."After implementing a UI-affecting feature, invoke this skill to verify the implementation works on a device.
DeviceInteractionStartSession (do this early, runs in the background)
→ DeviceInteractionInstallAndRun (after each code change; includes building)
→ DeviceEventSynthesize (interact + observe, repeatable)
→ DeviceInteractionEndSession (when done — keeping sessions open is resource-heavy)When opening a new device interaction session, pass a device identifier to select a device, or omit it to use the current destination. Pass any non-matching value to get a list of available targets.
commandLineArguments — arguments passed to the app at launch. Use $(inherited) as a token to preserve the scheme's existing arguments (e.g. ["$(inherited)", "--reset-state"] to add an extra argument at the end).environmentVariables — key/value pairs set in the app's environment at launch. Use "$(inherited)" as a key to preserve the scheme's existing environment variables (e.g. {"$(inherited)": "", "DEBUG_MODE": "1"}).Omit both parameters to leave the scheme's arguments and environment unchanged.
Prefer these parameters over editing the scheme directly. They are applied only for that one run and have no lasting effect on the user's configuration.
ALWAYS report UI issues that might be caused by code: overlapping or unreadable text, unexpectedly cropped image/text, wrong colors etc.
This tool allows performing an interaction and observing the state of a device.
The hierarchy files include calculated center positions for each element:
UIView {{100, 200}, {50, 30}}, center: {125.0, 215.0}
UIButton "Login" {{110, 205}, {30, 20}}, center: {125.0, 215.0}{100, 200} - origin position{50, 30} - width and heightcenter: {125.0, 215.0} - calculated center point (best for tapping)Always prefer the center coordinates for touch events.
The interactionCommand parameter accepts a command syntax:
| Command | Description |
|---|---|
t <x> <y> [duration] | Tap at coordinates with optional hold duration |
d <x> <y> | Double tap |
t <x1> <y1> f <x2> <y2> [duration] | Swipe from (x1,y1) to (x2,y2) |
b h/p/u/d [duration] | Hardware button: h=Home, p=Power, u=VolUp, d=VolDown |
sender keyboard kbd <text> | Type text; must be the last command in the chain — all content after kbd is taken verbatim (multiple spaces preserved). For special characters use \u{XXXX} Unicode escapes: \u{000A} (return/newline), \u{0009} (tab) |
w duration | Wait for a duration without any work |
orientation faceDown/faceUp/landscapeLeft/landscapeRight/portrait/portraitUpsideDown | Set device orientation |
Examples:
"t 100 200" - Tap at (100, 200)"d 200 300" - Double tap at (200, 300)"t 200 600 f 200 200 0.3" - Swipe up (scroll to the content below)"t 200 200 f 200 600 0.3" - Swipe down (scroll to the content above)"b h" - Press home button"b h b h" - Press home button twice to go to the app switcher"b h w 0 b h" - Wake and unlock a device (non-passcode devices only)"sender keyboard kbd hello world" - Type text with spaces"sender keyboard kbd hello world" - Type text preserving multiple spaces"sender keyboard kbd submit\u{000A}" - Type text then press Return/submit"w 0.3" - Wait for 0.3s"orientation landscapeLeft" - Rotate device to landscapeBefore any interaction, always capture and read the hierarchy (and screenshot). After any interaction, capture again and verify the result. For complex components (like toggles or switches), look at nested elements (like Switch or Slider) — nearby elements might correspond to the actual control. When done, report findings to the main agent.
When verifying, distinguish between these categories:
print statements in the relevant code may help diagnose the issue.© Infomaniak, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/device-interaction of Infomaniak/desktop-kDrive.
Open the folder on GitHubat commit 1723c4a
We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in Infomaniak/desktop-kDrive, which our catalogue first saw on October 7, 2026.
Device Interaction next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Device Interaction this skillInfomaniak/desktop-kDrive | 120 | 1 repos | ~1.9k | Automated safety check: Pass | GPL-3.0 | |
| Hig Project Contextraintree-technology/hig-doctor | 143 | 5 repos | ~1.2k | Automated safety check: Pass | MIT | |
| Hig Components Contentraintree-technology/hig-doctor | 143 | 5 repos | ~1.3k | Automated safety check: Pass | MIT | |
| iOS Simulator Skilln0an/VivaDicta | 131 | 1 repos | ~2.5k | Automated safety check: Pass | MIT | |
| Inspector Implementationipedro/Inspector | 170 | — | ~729 | Automated safety check: Pass | MIT | |
| Run iOS SimulatoriPlug2/iPlug2OOS | 158 | — | ~711 | Automated safety check: Pass | None |
raintree-technology/hig-doctor
Create or update a shared Apple design context document that other HIG skills use to tailor guidance.
raintree-technology/hig-doctor
Apple Human Interface Guidelines for content display components.
n0an/VivaDicta
21 production-ready scripts for iOS app testing, building, and automation.
ipedro/Inspector
A skill your agent uses when an agent needs to implement or modify the Inspector library itself — panel UI, hierarchy/runtime behavior, custom property models, macros, or Example-app dogfooding.
iPlug2/iPlug2OOS
Build and run an iPlug2 iOS app in the iOS Simulator. An agent skill from iPlug2/iPlug2OOS.
bitwarden/ios
Evaluates a bitwarden/ios "Update SDK to" PR against the sdk-swift commit range for compile-time, runtime and serialization breaking changes, maps affected symbols to iOS call sites, and applies…
Infomaniak/desktop-kDrive
Investigate kDrive crashes, Sentry issues, and application logs to produce source-grounded root cause analyses.
Infomaniak/desktop-kDrive
Generate a pull request title and a bilingual (French and English) description in a PR.md file, based on the git diff between the current branch and its base branch (develop by default).
Infomaniak/desktop-kDrive
Best practices and idiomatic patterns for SwiftUI. An agent skill from Infomaniak/desktop-kDrive.
Works with
Categories
Verify iOS app behavior on device or simulator via screenshots, UI hierarchy, and touch interactions. Device Interaction is an agent skill from Infomaniak/desktop-kDrive. Verify iOS app behavior on device or simulator via screenshots, UI hierarchy, and touch interactions.
Device Interaction fits situations like: tasks that involve iOS development.
Run `npx skills add Infomaniak/desktop-kDrive --skill device-interaction -a claude-code`. Or copy the skill folder (.agents/skills/device-interaction in Infomaniak/desktop-kDrive) into .claude/skills/device-interaction in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Infomaniak/desktop-kDrive --skill device-interaction -a codex`. Or copy the skill folder (.agents/skills/device-interaction in Infomaniak/desktop-kDrive) into .agents/skills/device-interaction in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Infomaniak/desktop-kDrive --skill device-interaction -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/device-interaction, .gemini/skills/device-interaction, .github/skills/device-interaction and .opencode/skills/device-interaction in your project.
SKILL.md names no scripts, command-line tools or credentials: Device Interaction is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Device Interaction is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.9k tokens (SKILL.md is roughly 7.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Device Interaction: Hig Project Context (raintree-technology/hig-doctor, 143 stars), Hig Components Content (raintree-technology/hig-doctor, 143 stars), iOS Simulator Skill (n0an/VivaDicta, 131 stars) and Inspector Implementation (ipedro/Inspector, 170 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Infomaniak (a GitHub organization) maintains it in Infomaniak/desktop-kDrive, which has 120 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 9, 2026.
Source: Infomaniak/desktop-kDrive on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.