Unity Console Skills
Work with the Unity console - capture logs, write messages, and debug your project.
Operating Mode
- Approval: 只读 skill(
console_get_logs/console_get_stats,标SkillMode.SemiAuto)直接执行;其余 skill(console_start_capture/console_stop_capture/console_clear/console_log/console_export/console_set_pause_on_error/console_set_collapse/console_set_clear_on_play,默认SkillMode.FullAuto)需用户 grant,grant 后一步执行返结果。 - Auto / Bypass: 直接执行。
- 本模块不含 Delete / PlayMode / Reload / RiskLevel=high 类 skill —— 没有
IsForbiddenInSemi拦截,不需要 Bypass 才能跑的高危操作。
DO NOT (common hallucinations):
console_filterdoes not exist → useconsole_get_logswithfilterparameterconsole_readdoes not exist → useconsole_get_logsconsole_writedoes not exist → useconsole_log- Do not confuse with
debug_get_logs—console_get_logsreads captured buffer,debug_get_logsreads all console entries
Routing:
- For compilation errors specifically → use
debugmodule'sdebug_check_compilation - For error stack traces → use
debugmodule'sdebug_get_stack_trace - For console settings (collapse, clear-on-play) →
console_set_collapse/console_set_clear_on_play(this module)
Skills Overview
| Skill | Description |
|-------|-------------|
| console_start_capture | Start capturing logs |
| console_stop_capture | Stop capturing logs |
| console_get_logs | Get captured logs |
| console_clear | Clear console |
| console_log | Write log message |
| console_set_pause_on_error | Enable or disable Error Pause in Play mode |
| console_export | Export console logs to a file |
| console_get_stats | Get log statistics (count by type) |
| console_set_collapse | Set console log collapse mode |
| console_set_clear_on_play | Set clear on play mode |
Skills
console_start_capture
Start capturing Unity console logs.
No parameters.
console_stop_capture
Stop capturing logs.
No parameters.
console_get_logs
Get Unity Console logs (reads existing console history directly; if console_start_capture is active, returns captured buffer with timestamps instead).
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| type | string | No | "All" | All / Error / Warning / Log |
| filter | string | No | null | Substring content filter |
| limit | int | No | 100 | Max results |
Returns (two shapes depending on mode):
- Capture mode (
console_start_captureactive):{count, logs: [{type, message, time}], source: "capture"}—timeformattedHH:mm:ss.fff - Direct mode (default, reads Unity Console history):
{count, logs: [{type, message, file, line}], source: "console"}—typeisError/Warning/Log,file/linefrom Unity'sLogEntry
console_clear
Clear the Unity console.
No parameters.
console_log
Write a custom log message.
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| message | string | Yes | - | Log message |
| type | string | No | "Log" | Log/Warning/Error |
console_set_pause_on_error
Enable or disable Error Pause in Play mode.
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| enabled | bool | No | true | Enable or disable error pause |
Returns: { success, enabled }
console_export
Export console logs to a file. Uses captured buffer when console_start_capture is active; otherwise reads directly from Unity Console history (no setup needed).
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| savePath | string | No | "Assets/console_log.txt" | File path to save logs |
Returns: { success, path, count, source }
console_get_stats
Get log statistics (count by type). Uses captured buffer when console_start_capture is active; otherwise reads directly from Unity Console history.
No parameters.
Returns (two shapes depending on mode):
- Capture mode (buffer present, i.e.
console_start_capturewas called or buffer is non-empty):{success, total, source: "capture", logs, warnings, errors, exceptions, asserts} - Direct mode (no capture buffer, reads Unity Console history):
{success, total, source: "console", logs, warnings, errors}—exceptions/assertsare not reported in direct mode (folded intoerrors)
console_set_collapse
Set console log collapse mode.
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| enabled | bool | Yes | - | Enable or disable collapse mode |
Returns: { success, setting, enabled }
console_set_clear_on_play
Set clear on play mode.
| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| enabled | bool | Yes | - | Enable or disable clear on play |
Returns: { success, setting, enabled }
Example Usage
import unity_skills
# Start capturing logs before play mode
unity_skills.call_skill("console_start_capture")
# Enter play mode
unity_skills.call_skill("editor_play")
# ... gameplay generates logs ...
unity_skills.call_skill("editor_stop")
# Get all captured logs
logs = unity_skills.call_skill("console_get_logs")
for log in logs['logs']:
print(f"[{log['type']}] {log['message']}")
# Get only errors
errors = unity_skills.call_skill("console_get_logs", type="Error")
if errors['count'] > 0:
print(f"Found {errors['count']} errors!")
# Write custom log
unity_skills.call_skill("console_log",
message="AI Agent: Task completed",
type="Log"
)
# Write warning
unity_skills.call_skill("console_log",
message="AI Agent: Performance issue detected",
type="Warning"
)
# Clear and stop
unity_skills.call_skill("console_clear")
unity_skills.call_skill("console_stop_capture")
Best Practices
- Start capture before play mode for runtime logs
- Filter by Error to quickly find problems
- Use custom logs to mark AI agent actions
- Clear console before starting new capture session
- Stop capture when done to free resources
Exact Signatures
Exact names, parameters, defaults, and returns are defined by GET /skills/schema or unity_skills.get_skill_schema(), not by this file.
Scan to join WeChat group