Loading...
Loading...
Read-only scene, project and script analysis for AI context
npx skill4agent add besty0728/unity-skills unity-perceptionBefore calling any skill in this module: if you are about to call a skill with parameters guessed from its name or description, STOP — read this file (or fetch its schema via) first. If you already have the parameter definitions from recommend/schema, you may proceed straight to dryRun.GET /skills/recommend?includeSchema=true
Mode = SkillMode.SemiAutoReadOnly = truescene_analyzescene_summarizescene_health_checkscene_component_statsscene_find_hotspotsscene_tag_layer_statsscene_performance_hintsscene_diffhierarchy_describescene_contextscene_spatial_queryscene_materialsscene_contract_validateproject_stack_detectscript_analyzescript_dependency_graphscene_dependency_analyzesavePathDirectory.CreateDirectoryFile.WriteAllTextImportAssetMutatesAssets = trueReadOnlymutatesAssetssavePathscene_export_reportOperation = Analyze | ExecuteMutatesAssets = trueSkillMode.FullAutoIsForbiddenInSemiperception_analyzeperception_scanperception_describescene_contexteditor_get_contextscene_analyzescene_health_checkscene_contract_validatescene_component_statsscene_find_hotspotsproject_stack_detectscene_*project_*editor_get_contextscene_find_objectsgameobject_findscript_dependency_graph| Skill | Use | Key parameters |
|---|---|---|
| Combined scene + project analysis | |
| Read-only health report | |
| Structured scene summary | |
| Component and facility stats | |
| Deep hierarchy / large group / empty node hotspots | thresholds + |
| Tag/layer usage | none |
| Prioritized optimization hints | none |
| Skill | Use | Key parameters |
|---|---|---|
| Capture or compare lightweight snapshots | |
| Return text hierarchy tree | |
| Export hierarchy, components, references | |
| Save markdown scene report | |
| Analyze impact / dependency graph in-scene | |
onsavePathis a write, not an output option. Supplying it creates the directory, writes the markdown report and imports it as a project asset, which is why the skill is flaggedscene_dependency_analyzerather thanmutatesAssets. OmitReadOnlyand you get the same analysis in the response (savePath,analysis) with nothing touched on disk — that is the form to use for a pure "what depends on this" question. Only passmarkdownwhen the user actually asked for a file, and expectsavePathin the response naming it.savedTo
| Skill | Use | Key parameters |
|---|---|---|
| Detect pipeline, input, UI, packages, tests, folders | none |
| Analyze one MonoBehaviour / ScriptableObject / user class by class name | |
| N-hop dependency closure for one script class name | |
| Skill | Use | Key parameters |
|---|---|---|
| Find objects near a point or object | |
| Summarize scene materials and shaders | |
| Validate default roots/tags/layers/UI EventSystem conventions | |
scene_summarizescene_analyzescene_health_check| Skill | Best for | Typical output focus |
|---|---|---|
| Fast overview | object counts, hierarchy depth, top components |
| Broad diagnosis | summary + findings + warnings + recommendations + next-skill hints |
| Hygiene / red flags | missing scripts, duplicate names, deep hierarchy, empty nodes, hotspot-style findings |
scene_contexthierarchy_describe| Skill | Best for | Output style |
|---|---|---|
| Human-readable tree | text tree, lightweight |
| AI coding context | structured hierarchy + components + references + optional code dependencies |
scene_dependency_analyzescript_dependency_graph| Skill | Scope | Use when |
|---|---|---|
| Scene object references | ask "who depends on this object if I delete or disable it" |
| Script class dependency closure | ask "which scripts do I have to touch to change this feature" |
scene_summarizesceneNamestatstopComponentsscene_analyzesummarystatsfindingswarningsrecommendationssuggestedNextSkillsscene_health_checksummaryfindingshotspotssuggestedNextSkillsscene_contextobjectsreferencescodeDependenciesrootPathincludeValues=trueincludeCodeDeps=truescene_export_reportsavedTosavePath = "Assets/Docs/SceneReport.md"maxDepth = 10maxObjects = 500| Need | Best first skill |
|---|---|
| Quick scene overview | |
| Full diagnosis | |
| Suspicious hierarchy or clutter | |
| Safe-to-delete / impact question | |
| AI coding context export | |
| Script reading order | |
| Render/input/UI stack detection | |
import unity_skills
summary = unity_skills.call_skill("scene_summarize", includeComponentStats=True)
health = unity_skills.call_skill("scene_health_check", issueLimit=50)
context = unity_skills.call_skill("scene_context", maxDepth=6, maxObjects=120)
report = unity_skills.call_skill("scene_export_report", savePath="Assets/Docs/SceneReport.md")GET /skills/schemaunity_skills.get_skill_schema()