Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add VPDPersonal/Aspid.FastTools --skill aspid-editor-componentgit clone --depth 1 https://github.com/VPDPersonal/Aspid.FastToolsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/vpdpersonal/aspid.fasttools/aspid-editor-component)<a href="https://agentmods.dev/skills/vpdpersonal/aspid.fasttools/aspid-editor-component"><img src="https://agentmods.dev/badge/skills/vpdpersonal/aspid.fasttools/aspid-editor-component/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/vpdpersonal/aspid.fasttools/aspid-editor-component"><img src="https://agentmods.dev/badge/skills/vpdpersonal/aspid.fasttools/aspid-editor-component.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00077 | $0.01501 |
| Opus 5.5 | $0.00031 | $0.00600 |
| Sonnet 5.5 | $0.00015 | $0.00300 |
| Haiku 4.5 | $0.00008 | $0.00150 |
Grade A, and why
aspid-editor-component scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 78 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Internal editor component
PKG = Aspid.FastTools/Packages/tech.aspid.fasttools. Components are internal to Aspid.FastTools.Editor and
visible to the assemblies in PKG/Editor/Scripts/AssemblyInfo.cs (Aspid.Ids, Aspid.MVVM editors, tests) - changing an
existing component's members can break those packages.
Read and mirror, in full, before writing:
PKG/Editor/Scripts/VisualElements/Internal/Components/AspidContainers/AspidBox*.cs- theme + status only;.../Components/AspidDividingLines/- own style structs inStyles/, oneSet<Property>per[UxmlAttribute];.../Components/AspidLabels/- child components, nested preset. Its extensions lackSetLabelFontStyleandSetLineDirection: do not copy that gap;.../Internal/Styles/-ThemeStyle,StatusStyle,InlineStyle<T>,AspidStyles;- the component's sheet in
PKG/Editor/Resources/UI/Components/Aspid-FastTools-Aspid<Name>.uss.
Files
Components/<Group>/Aspid<Name>.cs, Aspid<Name>Preset.cs, Aspid<Name>Extensions.cs, optional
Styles/Aspid<Name><Property>Style.cs, plus the .uss and every .meta. Namespace
Aspid.FastTools.UIElements.Editors.Internal with // ReSharper disable once CheckNamespace.
A path from the package root may have at most 123 characters (the Asset Store Validator limit is 140, counted from
Aspid/FastTools/; scripts/check-package-files.mjs checks it). For a long component name, shorten the component part
of the style struct names instead of using the pattern above: AspidAnimatedDotsBackground has
AspidAnimatedDotsSizeStyle, AspidHoverGradientOverlay has AspidHoverOverlayColorStyle.
Preset and Extensions are skipped only when there is nothing to configure (AspidSwitch is a BaseField<bool>,
AspidWindowFooter takes one constructor flag) or the element is a child that its owner configures through the
owner's style struct (AspidHoverGradientOverlay inside AspidInspectorHeader / AspidGradientButton).
Rules
[UxmlElement(libraryPath = "Aspid/FastTools", visibility = LibraryVisibility.Hidden)] internal sealed partial class(hidden, so the element does not show in the UI Builder Library of a consumer project); a parameterless constructor for UXML; all constructors chain to(…, Aspid<Name>Preset preset).- Load only the component's own sheet:
this.AddStyleSheetFromResources(StyleSheetPath). The palette and.aspid-fasttools-background*come from the host root'sAddAspidThemeStyleSheets(); only standalone roots (AspidWindowFooter,InspectorNotice) call it themselves. A themed background =.AddClass(AspidStyles.BackgroundStyle) .AddClass(AspidStyles.BackgroundRoundedState). - Theme and status always reuse
ThemeStyle/StatusStyle; create style structs after children and the sheet exist (their constructors apply the class immediately). A component-owned property (size, direction…) gets its own style struct shaped likeAspidLabelSizeStyle:CustomStyleProperty<string>--aspid-fasttools-metrics-<name>,InlineStyle<Type>, class constants,GetClasswith an empty-class guard forNone. - Preset: mutable struct, public fields, setters that assign and return
this,static Defaultbuilt by chaining. A nested component preset must be a field, not an auto-property, or its setters modify a copy. - Extensions: one
Set<Property>per[UxmlAttribute], returning the concrete element type. - USS: style against
aspid-fasttools-theme--*/aspid-fasttools-status--*(added by the style structs), use the shared palettevar(--aspid-colors-*)/var(--aspid-icons-*)so theme overrides work, own classesaspid-fasttools-<block>[__<element>][--<modifier>], own custom properties--aspid-fasttools-{colors|prop|metrics|icons}-<name>. No inlinestyle.*for anything a theme should control. A new colour goes intoAspid-FastTools-Default-Dark.ussas a token, never as a literal in a component sheet, with a light value inAspid-FastTools-Default-Light.uss(DefaultPaletteTokenTestschecks it). Text needs 4.5:1: add the pair toscripts/check-contrast.mjsand run it. - UI drawn inside a regular Inspector (drawers, fields, notices) sits on Unity's own background: colour it with
var(--unity-colors-*), not the dark palette. A built-in icon takesvar(--unity-icons-*)where Unity has one; otherwise keep thed_icon and override it under.aspid-fasttools-skin--light, whichAddAspidThemeStyleSheets()sets on the light skin —resource()does not pick the skin variant. Its IMGUI twin picks the same Unity colours byEditorGUIUtility.isProSkin(seeInspectorNoticeGUI), andEditorGUIUtility.IconContenttakes the plain icon name, since it adds thed_prefix on the dark skin itself.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago Changed · +8 lines 61fc09ea745c
- 17d ago Changed · +13 lines 2115eff1a71d
- 20d ago First seen · 57 lines · 77 tokens per session scan A 6242e0b50396
aspid-editor-component is a skill published in the GitHub repository VPDPersonal/Aspid.FastTools (24 stars, last pushed today), licensed MIT. It adds 77 tokens to every session and 1,501 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-26.
Other skills, from other repositories
test-designing-guide
Provides test design methodology for Unity projects. Use this skill whenever designing test cases from requirements or specifications, including selecting test techniques, deriving test cases, and formatting them. Even for small features, load this skill to ensure test design rigor.
test-writing-guide
Provides guidelines for writing test code for Unity projects. Make sure to use this skill whenever writing, creating, editing, or modifying test code files (files under Tests/). This includes implementing new tests, fixing test failures, adding test cases, or any task that results in test code changes. Even for small…
edit-scene
Creates and modifies Unity scene and prefab files. Use this skill whenever creating, editing, or modifying .unity scene files or .prefab prefab files. This includes adding GameObjects, building uGUI hierarchies, wiring up components, and any task that results in changes to .unity or .prefab files.
run-tests
Provides guidelines for running Unity tests using the rununitytests tool. Make sure to use this skill whenever running, executing, or re-running tests on the Unity editor. This includes verifying implementations, debugging test failures, running specific test assemblies, or any task that involves the rununitytests…
resolve-diagnostics
Resolves IDE diagnostics (inspections and analyzer findings) at the warning or higher severity level for a given set of files, then applies the solution's code style. Use this skill when a workflow's refactoring step calls for resolving diagnostics, or when the user asks to fix warnings, inspections, or static…
unity-yaml-editing-guide
Provides guidelines for directly editing Unity YAML-serialized asset files for Unity projects. Make sure to use this skill whenever creating, editing, or modifying simple YAML asset files (ScriptableObjects, Materials, etc.) via Edit/Write tools without going through the Unity Editor. This includes adjusting…