🔍
CLI Command Finder
All 318 CLI commands on one page. The category pages list commands one category at a time — this searches across all 66 of them at once.
Check the Access column first
Only Public commands work in shipping builds. UserCheat and
ScriptCheat are cheat-only and become no-ops for players, so a mod that
depends on them will silently do nothing.
| Access | Commands | Works for players |
|---|---|---|
Public | 115 | Yes |
UserCheat | 109 | No |
ScriptCheat | 94 | No |
How to use this
- Search covers the command id, its display name, the description and the parameter names — so
entity_idfinds every command that takes one. - Category is a dropdown rather than chips because there are 66 of them.
- Access narrows to what you can actually ship. Start with
Public. - Hide Experimental drops the 52 commands tagged
Experimental; those can change or disappear between builds. - In the Parameters column,
*marks a required parameter.
Calling a command
Every command is invoked the same way, by id, with a parameter object:
await inzoi.cli.execute('appearance.beard', {
entity_id: 0, // optional
action: 'get', // optional
});
The CLI is a standalone integration layer, not tied to one host language. The same catalog is reachable from UI Mod JavaScript, Lua scripts and every other embedded runtime the game ships — each through its own invoke API. The parameter contracts below apply unchanged everywhere.
All commands
318 commands
Access
Category
| # | Description | ||||
|---|---|---|---|---|---|
| 1 | ambition.complete | entity_idambition_item_id* | Instantly completes a specific ambition item on the target character (cheat; no-op in shipping builds). Use ambition.get to find item ids. | ||
| 2 | ambition.get | entity_id | Returns the target character's ambition state: currently playing ambition item, current step, completed count, all-completed flag, and playable ambition item ids. | ||
| 3 | ambition.play | entity_idambition_item_id*guard | Starts (sets) a specific ambition item on the target character. Forced by default (valid id only); pass guard=true to require playability (age/condition/not-completed/not-already-playing). | ||
| 4 | appearance.beardExperimental | entity_idactionid | Manage beard. action=get (default): show current info. add: equip random. change: switch to different. remove: take off. | ||
| 5 | appearance.custom | entity_id | Open custom Zoi flow for the given entity. | ||
| 6 | appearance.eyebrowExperimental | entity_idactionid | Manage eyebrow. action=get (default): show current info. add/change: switch to random or specified eyebrow. Eyebrow always exists, so remove is not supported. | ||
| 7 | appearance.get_outfit_category | entity_id | Returns the character's current base outfit category and any active overlay outfits. | ||
| 8 | appearance.glassesExperimental | entity_idactionid | Manage glasses. action=get (default): show current info. add: equip random. change: switch to different. remove: take off. | ||
| 9 | appearance.glovesExperimental | entity_idactionid | Manage gloves. action=get (default): show current info. add: equip random. change: switch to different. remove: take off. | ||
| 10 | appearance.hairExperimental | entity_idactionid | Manage hairstyle. action=get (default): show current hair info. change: switch to random different hairstyle. Hair always exists, so add/remove are not supported. | ||
| 11 | appearance.hatExperimental | entity_idactionid | Manage hat. action=get (default): show current hat info. add: equip random hat. change: switch to different random hat. remove: take off. | ||
| 12 | appearance.jacketExperimental | entity_idactionid | Manage jacket. action=get (default): show current info. add: equip random. change: switch to different. remove: take off. | ||
| 13 | appearance.list_options | — | Returns available genders and growth steps with localized display names. | ||
| 14 | appearance.mustacheExperimental | entity_idactionid | Manage mustache. action=get (default): show current info. add: equip random. change: switch to different. remove: take off. | ||
| 15 | appearance.remove_outfit_category | entity_idcategory* | Removes an active outfit overlay for a specific category, reverting to the base outfit. Use appearance.get_outfit_category to see active overlays. | ||
| 16 | appearance.scan_garmentsExperimental | entity_id | List the character's currently equipped garments (Top, Bottom, Shoes, ...), with which slots have color/AI texture overrides. | ||
| 17 | appearance.scarExperimental | entity_idactionid | Manage face scar. action=get (default): show current info. add: apply random. change: switch to different. remove: remove scar. | ||
| 18 | appearance.scarfExperimental | entity_idactionid | Manage scarf. action=get (default): show current info. add: equip random. change: switch to different. remove: take off. | ||
| 19 | appearance.set_body_massExperimental | entity_idactionvalue | Get or set body mass ratio. -1.0 = very thin, 0.0 = standard, 1.0 = very fat. Use action=get to read current value. | ||
| 20 | appearance.set_body_shapeExperimental | entity_idactiongroupindexvalue | Adjust body shape by named group (e.g. Belly, Arm) or raw parameter index. action=list shows groups, action=get reads values, action=set changes them. Value range: -1.0 to 1.0. | ||
| 21 | appearance.set_face_shapeExperimental | entity_idactiongroupindexvalue | Adjust face shape by named group (e.g. Nose, Jaw, Eye) or raw parameter index. action=list shows groups, action=get reads values, action=set changes them. Value range: -1.0 to 1.0. | ||
| 22 | appearance.set_garment_colorExperimental | entity_idgarment_type*color*parts_button_indexskip_commit | Change a garment's custom color (same path as Character Studio's color picker). garment_type: top, bottom, full, shoes, jacket, hat, socks, stockings, gloves, scarf. color: #RRGGBB / #RRGGBBAA or a named color (red, blue, white, ...). parts_button_index selects between multiple color zones on the same garment (default: 0). | ||
| 23 | appearance.set_garment_textureExperimental | entity_idgarment_type*file_pathpath_keychannelintensity | Apply a user-provided PNG/JPG image as a garment's AI texture (same pipeline as Character Studio > MyTexture on clothing). If file_path is given, that file is used; otherwise the Windows clipboard image is tried first (CF_PNG / CF_DIBV5 / CF_DIB), and if none is present a file picker is shown. garment_type: top, bottom, full, shoes, jacket, hat, socks, stockings, gloves, scarf. channel: AI texture slot (0, 1, or 2; default 0). intensity: application strength in [0.0, 1.0] (default 1.0). | ||
| 24 | appearance.set_gender | entity_idgender* | Transforms the character's visual appearance to the target gender. | ||
| 25 | appearance.set_growth_step | entity_idgrowth_step* | Changes the character's growth step by setting their age to the start of that step. | ||
| 26 | appearance.set_household_name | entity_idname* | Set the active household name. | ||
| 27 | appearance.set_muscleExperimental | entity_idactionvalue | Get or set muscle mass. 0.0 = no muscle, 1.0 = max muscle. Use action=get to read current value. | ||
| 28 | appearance.set_name | entity_idfirst_name*last_name* | Set first and last name for a Zoi. | ||
| 29 | appearance.set_outfit_category | entity_idcategory* | Changes the character's outfit to a specific category (e.g. Swimwear, Formal, Sleep). The character must have an outfit saved in that category from the customize screen. | ||
| 30 | appearance.set_skin_colorExperimental | entity_idactioncolor_id | Get, list, or set skin color. action=get: show current. action=list: show available color IDs. action=set: apply color_id. | ||
| 31 | appearance.set_trait | entity_idpersonality*char1*char2* | Set personality and two characteristic traits for a Zoi. | ||
| 32 | appearance.shoesExperimental | entity_idactionid | Manage shoes. action=get (default): show current info. add: equip random. change: switch to different. remove: take off. | ||
| 33 | appearance.socksExperimental | entity_idactionid | Manage socks. action=get (default): show current info. add: equip random. change: switch to different. remove: take off. | ||
| 34 | autonomy.diagnose_interactionExperimental | bag_id*entity_idtarget_entity_id | Diagnose why an interaction bag is or is not an autonomy candidate. | ||
| 35 | autonomy.set_enable | entity_idenable | Get or set the autonomy (free will) enabled state for a character. | ||
| 36 | bag.add_item | object_id*count* | Adds stacked items to the bag by object data table ID. | ||
| 37 | bag.feather_bag | enable* | Toggles weightless inventory cheat. | ||
| 38 | bio.set_gender | entity_idgender* | Updates the simulation-side gender in FB2BioComponent. | ||
| 39 | buff.add | entity_idbuff_id*duration_minutes | Adds a buff to the target character. Optionally overrides its lifetime with duration_minutes (finite-duration buffs only; omit to use the table default). | ||
| 40 | buff.remove | entity_idbuff_id* | Removes a buff from the target character. | ||
| 41 | build.get_customize_infoExperimental | entity_id* | Returns customizable parts and current material parameters of a game object (furniture, decoration, etc). | ||
| 42 | build.remove_objectExperimental | entity_id* | Remove a placed game object from the current site. In build mode the removal goes through the undo/redo command stack with automatic price refund. In play mode the object is destroyed directly and the object's price is refunded to the household wallet. Use build.scan_objects to discover entity IDs. | ||
| 43 | build.reset_materialExperimental | entity_id*part_index | Reset material parameters to default. If part_index is specified, resets only that part. Otherwise resets all parts. | ||
| 44 | build.scan_floorsExperimental | floor_level | List all floors and rooms in the current site with room indices and positions. Works in both play mode (character must be inside a building) and build mode. Use room_index with build.set_floor_color / build.set_floor_material. | ||
| 45 | build.scan_objectsExperimental | floor_leveldeletable_onlylimit | List game objects placed in the current site with their entity IDs, table IDs, floor levels, and locations. Works in both play mode (character must be inside a building) and build mode. Use the entity_id with build.remove_object or any build.* customization command. | ||
| 46 | build.scan_wallsExperimental | floor_level | List all walls in the current site with edge keys and positions. Works in both play mode (character must be inside a building) and build mode. Use the edge_key with build.set_wall_color. | ||
| 47 | build.set_colorExperimental | entity_id*color*part_index | Change the color of a game object. Supports hex (#FF0000) or named colors (red, blue, green, white, black, yellow, cyan, magenta, orange, pink, brown, gray). If part_index is omitted, applies to all parts. | ||
| 48 | build.set_floor_colorExperimental | color*floor_levelroom_indextarget | Change floor (or ceiling) color. Works in both play mode (character must be inside a building) and build mode. Specify floor_level and/or room_index to narrow the target; omit both to apply to every room. target: floor (default) or ceiling. | ||
| 49 | build.set_floor_materialExperimental | material_groupmaterial_indexcolorfloor_levelroom_indextarget | Change floor (or ceiling) material preset. If material_group/material_index are omitted, a random valid preset is chosen. Specify floor_level/room_index to narrow the target; omit both to apply to every room. target: floor (default) or ceiling. | ||
| 50 | build.set_materialExperimental | entity_id*part_indexcolorroughnessmetallicspecularopacitypattern_colorpattern_scaleemissive_coloremissive_multimaterial_groupmaterial_index | Set individual material parameters on a game object part. Specify only the parameters you want to change. Use build.get_customize_info to see available parts. | ||
| 51 | build.set_object_materialExperimental | entity_id*material_groupmaterial_indexcolorpart_index | Change a game object's material preset (texture set). If material_group/material_index are omitted, a random valid preset is chosen per part. Omit part_index to apply to every part. color is optional and applied on top. Use build.get_customize_info to see available parts. | ||
| 52 | build.set_wall_colorExperimental | color*edge_keyfloor_levelside | Change wall color. Works in both play mode (character must be inside a building) and build mode. Specify edge_key for a single wall (from build.scan_walls), or omit to apply to all walls. Use floor_level to filter. side: front, back, or both (default). | ||
| 53 | build.set_wall_materialExperimental | material_groupmaterial_indexcoloredge_keyfloor_levelside | Change wall material preset. If material_group/material_index are omitted, a random valid preset is chosen. Specify edge_key for a single wall (from build.scan_walls), or omit to apply to all walls. color is optional and applied on top. | ||
| 54 | building.edit_all_site | enable* | Toggles cheat that allows editing all site areas. | ||
| 55 | building.get_object_transform | entity_identity_ids | [Build Mode Only] [Object Selection] Returns the current location, rotation, and scale of selected game object(s). Supports multi-selection. | ||
| 56 | building.get_options | — | [Build Mode Only] Returns all build mode option states as JSON. | ||
| 57 | building.set_object_location | xyzentity_identity_ids | [Build Mode Only] [Object Selection] Sets the location of selected game object(s) relative to the parent site. Omitted axes keep their current value. Supports multi-selection. | ||
| 58 | building.set_object_rotation | pitchyawrollentity_identity_ids | [Build Mode Only] [Object Selection] Sets the rotation of selected game object(s). Omitted axes keep their current value. Supports multi-selection. | ||
| 59 | building.set_object_scale | scalexyzentity_identity_ids | [Build Mode Only] [Object Selection] Sets the scale of selected game object(s). Use 'scale' for uniform scaling, or 'x','y','z' for per-axis. Supports multi-selection. | ||
| 60 | building.set_object_transform | loc_xloc_yloc_zpitchyawrollscalescale_xscale_yscale_zentity_identity_ids | [Build Mode Only] [Object Selection] Sets location, rotation, and/or scale of selected game object(s) relative to the parent site in one call. All parameters are optional; omitted values keep their current state. Supports multi-selection. | ||
| 61 | building.set_option | free_locationgrid_snapobject_snapuniform_scalingsmart_guidedelete_modecontinuous_placement | [Build Mode Only] Sets one or more build mode options at once. All parameters are optional; only specified options are changed. | ||
| 62 | building.show_studio_category | enable* | Toggles studio build category visibility in the UI. | ||
| 63 | building.show_user_dev_category | enable* | Toggles user dev build category visibility in the UI. | ||
| 64 | building.unlock_site_area | — | Unlocks site area restrictions for building. | ||
| 65 | camera.get_settings | — | Returns camera/input settings: FOV, mouse sensitivity, scroll wheel speeds, edge scroll state. | ||
| 66 | camera.set_fov | value* | Set the camera field of view angle. Typical range: 60-120. | ||
| 67 | camera.set_sensitivity | value* | Set the follow-view camera mouse sensitivity. Range: 0-100. | ||
| 68 | career.add_attendance | entity_iddays | Adds attendance days to a character's career record for retirement eligibility testing | ||
| 69 | career.can_promote | entity_id | Returns whether the character has a Business career and is eligible for promotion (rank below max). Non-mutating; safe to poll. | ||
| 70 | career.get_work_status | entity_identity_ids | Returns work schedule status for a character (has_job, is_working_time, is_working_day, is_at_work, simulated, work_site_id, home_site_id). Supports batch via comma-separated entity_ids. | ||
| 71 | career.join | entity_idcareer_entity_id*job_id* | Assigns the character to a specific career/job (use career.list_openings to get valid career_entity_id/job_id). | ||
| 72 | career.list_openings | — | Lists joinable Business careers/jobs in the world with vacancy counts. The mod picks one and calls career.join. | ||
| 73 | career.promotion | entity_id | Promotes the current Zoi in their job. | ||
| 74 | career.school_migration_scan | verbose | [BL-47322] Scans loaded world memory for deprecated *_Middle school JobIds in MemberInfo / CareerSlots / GraduationRecords. Hit count should be 0 after save migration runs correctly. | ||
| 75 | career.set_business_level | entity_idlevel* | Sets the business level for the household biz. | ||
| 76 | career.set_exam_preparation | entity_idvalue* | Sets a school student's exam preparation score (0-100) to test exam results/grades without studying. Reset to 0 on the weekly school reset (Monday). | ||
| 77 | career.set_skill_level | entity_idskill_name*level* | Sets a skill to the given level by skill name. | ||
| 78 | character.possess | character_id*household_id | Switches play to the specified character. Same household -> avatar swap; different household -> household switch. Handles camera, spawn, and UI transition. | ||
| 79 | cleaning.freeze_cleanliness | enable* | Freezes cleanliness values so they no longer change. | ||
| 80 | cleaning.instant_clean | — | Instantly cleans the current site. | ||
| 81 | cleaning.unlock_door | enable* | Toggles cheat access to open locked doors. | ||
| 82 | cli.help | command* | Shows detailed info, params, and aliases for a specific CLI command. | ||
| 83 | cli.list | category | Lists registered CLI commands. Optionally filter by category. | ||
| 84 | clipboard.copy | text* | Copies the given text to the system clipboard. | ||
| 85 | contacts.get_all | — | Returns all contacts of the possessed character with blocked status and cached portraits. | ||
| 86 | currency.add_meow_coin | amount* | Adds the given amount of meow coins. | ||
| 87 | currency.add_money | amount* | Adds the given amount of money to the current household. | ||
| 88 | currency.add_resort_coin | amount* | Adds the given amount of resort coins. | ||
| 89 | curseforge.auth_status | — | Return whether the current cfcore session holds a valid CurseForge auth token. Synchronous; no toast. | ||
| 90 | curseforge.logout | — | Log out from CurseForge by invalidating the current cfcore auth token. Mainly used to reset state before running login-flow tests. Async; result via toast. | ||
| 91 | curseforge.send_code | email* | Send a 6-digit passwordless login code to the given email. Async; the result (success or error description) is reported via a system toast. | ||
| 92 | curseforge.upload_mod_file | plugin_dir*changelogthumbnailclass_idcategory_idclass_namecategory_name | Upload a mod folder to CurseForge. Reads the .uplugin to find CfUgcId; if absent, this command first creates the mod entry on CurseForge (requires --thumbnail, --class_id, --category_id), updates the .uplugin with the returned id/url, then proceeds. The plugin folder is zipped via cfcore Compression and uploaded chunked. All progress is reported via toasts. | ||
| 93 | curseforge.verify_code | email*code* | Verify the 6-digit security code received by email and obtain an auth token. Async; the result is reported via toast. cfcore persists the token internally on success. | ||
| 94 | data.asset_get | alias* | Returns a DataAsset's full content as JSON. alias: asset alias (e.g. GameConfig). | ||
| 95 | data.list_rows | alias* | Returns all row names of a specific DataTable alias. | ||
| 96 | data.list_tables | — | Returns all registered DataTable aliases with row counts. | ||
| 97 | data.patch | method*query*value*refresh | Apply an in-place data patch at runtime. Reverted on unmodding. | ||
| 98 | data.table_get | alias*row* | Returns a single DataTable row as JSON. alias: table alias (e.g. Aging), row: row name. | ||
| 99 | data.table_get_all | alias* | Returns all rows of a DataTable as a JSON array. alias: table alias. | ||
| 100 | disaster.list | — | Returns all available disaster IDs with localized names. |
/ 4