Agent skill · Audited from source
Openspec Apply Change
skill · VILA-Lab/FigMirrorLicence not declaredAudited 18 Oct 2026 · source 0a7231a8d795
Is it safe? Yes — SAFE, grade B (89/100). We read this skill's source at commit 0a7231a8d795 and found no filesystem, network or shell access and no hard-coded secrets. What it does: Implement tasks from an OpenSpec change. Use when the user wants to start implementing, continue implementation, or work through tasks.
Cite
Cite this page
ModelsAtlas. “Openspec Apply Change (VILA-Lab/FigMirror)”. Retrieved 18 Oct 2026. https://modelsatlas.com/skills/vila-lab/openspec-apply-change
5 skills are called “Openspec Apply Change”. You are viewing VILA-Lab/FigMirror.
- VILA-Lab/FigMirror★ 530✓SAFE
- fission-ai/openspec★ 73k✓SAFE
- fengshao1227/ccg-workflow★ 5.9k✓SAFE
- qixing-jk/all-api-hub★ 4.9k✓SAFE
- Chorus-AIDLC/Chorus★ 1.2k✓SAFE
Trust audit
Audit 0.4.1 · source read 18 Oct 2026
SAFE means nothing in the source contradicts what the skill says it does. Grade B is shared by 16,667 of 17,602 audited skills.
What the source does
- FilesystemNone observedNo reads or writes in the source
- NetworkNone observedNo outbound calls in the source
- ShellNone observedNo commands run in the source
- DependenciesPinnedNothing floats
- SecretsNone foundNo keys in source
Five audit layers
| Layer | What we check | Result | Findings |
|---|---|---|---|
L0 Provenance | Repo owner, licence, archive status, activity | PASS | 0 |
L1 Static source | Secrets, path traversal, supply chain, hidden code | NA | 0 |
L2 Instructions | Prompt injection, authority framing, hidden directives | PASS | 1 |
L3 Inventory | The files and declarations match the source | PASS | 0 |
L4 Sandbox | Run in isolation and watch behaviour | SKIPPED why | 0 |
Gates applied: no behavioural pass.
Findings (1)
LOWPrompt injectionprompt.transfer_instruction · docs/assets/icons/LICENSE-lucide.txt:21
airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-
- Why
- an instruction to move sensitive data to an outside destination
- Fix
- remove; a skill never needs the user's secrets off the machine
Audit 0.4.1 · source sha 0a7231a8d795 · 18 Oct 2026Report an issue or request a re-scan
Provenance
Who published it, and what the verdict is pinned to
- PublisherVILA-Lab GitHub organizationOwner of the repository this skill is read from
- Source folderVILA-Lab/FigMirror/.claude/skills/openspec-apply-changeThe exact folder we audited
- LicenceNot declaredAs the repository states it
- Commit pinned for this verdict0a7231a8d795A new audit runs when the source changes
- Repository statusNot archivedLast push 18 days ago
- Sandboxed runNot runSkills are read, not executed; layer L4 is skipped
What it tells the agent
Full source on GitHub ↗Its description: Implement tasks from an OpenSpec change. Use when the user wants to start implementing, continue implementation, or work through tasks.
--- name: openspec-apply-change description: Implement tasks from an OpenSpec change. Use when the user wants to start implementing, continue implementation, or work through tasks. license: MIT compatibility: Requires openspec CLI. metadata: author: openspec version: "1.0" generatedBy: "1.3.0" --- Implement tasks from an OpenSpec change. **Input**: Optionally specify a change name. If omitted, check if it can be inferred from conversation context. If vague or ambiguous you MUST prompt for available changes. **Steps** 1. **Select the change** If a name is provided, use it. Otherwise: - Infer from conversation context if the user mentioned a change - Auto-select if only one active change exists - If ambiguous, run `openspec list --json` to get available changes and use the **AskUserQuestion tool** to let the user select Always announce: "Using change: <name>" and how to override (e.g., `/opsx:apply <other>`). 2. **Check status to understand the schema** ```bash openspec status --change "<name>" --json ``` Parse the JSON to understand: - `schemaName`: The workflow being used (e.g., "spec-driven") - Which artifact contains the tasks (typically "tasks" for spec-driven, check status for others) 3. **Get apply instructions** ```bash openspec instructions apply --change "<name>" --json ``` This returns: - Context file paths (varies by schema - could be proposal/specs/design/tasks or spec/tests/implementation/docs) - Progress (total, complete, remaining) - Task list with status - Dynamic instruction based on current state **Handle states:** - If `state: "blocked"` (missing artifacts): show message, suggest using openspec-continue-change - If `state: "all_done"`: congratulate, suggest archive - Otherwise: proceed to implementation 4. **Read context files** Read the files listed in `contextFiles` from the apply instructions output. The files depend on the schema being used: - **spec-driven**: proposal, specs, design, tasks - Other schemas: follow the contextFiles from CLI output 5. **Show current progress** Display: - Schema being used - Progress: "N/M tasks complete" - Remaining tasks overview - Dynamic instruction from CLI 6. **Implement tasks (loop until done or blocked)** For each pending task: - Show which task is being worked on - Make the code changes required - Keep changes minimal and focused - Mark task complete in the tasks file: `- [ ]` → `- [x]` - Continue to next task **Pause if:** - Task is unclear → ask for clarification - Implementation reveals a design issue → suggest updating artifacts - Error or blocker encountered → report and wait for guidance - User interrupts 7. **On completion or pause, show status** Display: - Tasks completed this session - Overall progress: "N/M tasks complete" - If all done: suggest archive - If paused: explain why and wait for guidance **Output During Implementation** ``` ## Implementing: <change-name> (schema: <schema-name>) Working on task 3/7: <task description> [...implementation happening...] ✓ Task complete Working on task 4/7: <task description> [...implementation happening...] ✓ Task complete ``` **Output On Completion** ``` ## Implementation Complete **Change:** <change-name> **Schema:** <schema-name> **Progress:** 7/7 tasks complete ✓ ### Completed This Session - [x] Task 1 - [x] Task 2 ... All tasks complete! Ready to archive this change. ``` **Output On Pause (Issue Encountered)** ``` ## Implementation Paused **Change:** <change-name> **Schema:** <schema-name> **Progress:** 4/7 tasks complete ### Issue Encountered <description of the issue> **Options:** 1. <option 1> 2. <option 2> 3. Other approach What would you like to do? ``` **Guardrails** - Keep going through tasks until done or blocked - Always read context files before starting (from the apply instructions output) - If task is ambiguous, pause and ask before implementing - If implementation reveals issues, pause and suggest artifact updates - Keep code changes minimal and scoped to each task - Update task checkbox immediately after completing each task - Pause on errors, blockers, or unclear requirements - don't guess - Use contextFiles from CLI output, don't assume specific file names **Fluid Workflow Integration** This skill supports the "actions on a change" model: - **Can be invoked anytime**: Before all artifacts are done (if tasks exist), after partial implementation, interleaved with other actions - **Allows artifact updates**: If implementation reveals design issues, suggest updating artifacts - not phase-locked, work fluidly
Excerpt, first 4,709 characters of SKILL.md, verbatim from the audited commit. It is text from someone else’s repository, quoted so you can judge it before your agent reads it.
Install
Pinned to the audited commit 0a7231a
git clone https://github.com/VILA-Lab/FigMirror git -C FigMirror checkout 0a7231a8d795
The author documents no install command, so this uses the repository directly. Our verdict covers commit 0a7231a8d795 only.
Works in
The author has not said which agents this skill supports, and we have not tested it in any.
Audit history
Every audit, every source change
- ✓SAFE B 89 / 100
first audit · source
0a7231a8d795
Similar skills
VILA-Lab/FigMirror
FigMirror mirrors the visual style of a top-conference paper figure (NeurIPS / ICML / ICLR / Nature family) onto the user's own data. Takes dirty data plus a reference figure screenshot (cropped or uncropped),…
VILA-Lab/FigMirror
Archive a completed change in the experimental workflow. Use when the user wants to finalize and archive a change after implementation is complete.
VILA-Lab/FigMirror
Enter explore mode - a thinking partner for exploring ideas, investigating problems, and clarifying requirements. Use when the user wants to think through something before or during a change.
VILA-Lab/FigMirror
Propose a new change with all artifacts generated in one step. Use when the user wants to quickly describe what they want to build and get a complete proposal with design, specs, and tasks ready for implementation.
op7418/guizang-material-illustration
Generate Guizang-style material illustrations, labeled explanatory visuals, material-styled chart illustrations, and data-first editorial images from articles, notes, product concepts, workplace reports, creator posts,…
langgenius/dify
Use when writing or changing Vitest or React Testing Library tests under `web/` or `packages/dify-ui/`, or when the user explicitly requests frontend test strategy, including evaluation of an existing strategy. Do not…
Questions about Openspec Apply Change
What does the Openspec Apply Change skill do?
Is Openspec Apply Change safe to install?
What can Openspec Apply Change access on my machine?
How current is this page?
Sources
- github.com/VILA-Lab/FigMirror/tree/main/.claude/skills/openspec- — the audited source at commit 0a7231a8d795 and every finding aboveObserved · 18 Oct 2026
Spotted something wrong? Report a correction · Methodology
Keep going in your AI
Opens with this page as the source. We add nothing else to the prompt.
- What does the Openspec Apply Change skill do?
- Is Openspec Apply Change safe to install?
- What can Openspec Apply Change access on my machine?