CS2 Console Commands
176 Counter-Strike 2 console commands in 10 categories, each checked against the current game files so no outdated CS:GO command slips in. Build a practice config in one click, search the list and copy any command.
Practice config generator
Tick the options you want and copy or download a ready-made practice.cfg for smokes, flashes and aim practice on a local server.
// practice.cfg - generated at metabot.gg/cs2/commands
sv_cheats 1
mp_warmup_end
sv_infinite_ammo 1
ammo_grenade_limit_total 5
sv_showimpacts 1
sv_showimpacts_time 10
sv_grenade_trajectory_prac_pipreview 1
sv_grenade_trajectory_prac_trailtime 10
mp_roundtime 60
mp_roundtime_defuse 60
mp_roundtime_hostage 60
mp_ignore_round_win_conditions 1
mp_freezetime 0
mp_buy_anywhere 1
mp_buytime 9999
mp_maxmoney 60000
mp_startmoney 60000
mp_afterroundmoney 60000
mp_respawn_on_death_ct 1
mp_respawn_on_death_t 1
bot_kick
bot_quota 0
bind "n" "noclip"
bind "mouse5" "sv_rethrow_last_grenade"
mp_restartgame 1
echo "MetaBot practice config loaded"
How to use your practice config
- Copy the config, or download practice.cfg.
- Save it as practice.cfg in Steam\steamapps\common\Counter-Strike Global Offensive\game\csgo\cfg.
- Start a map with Play > Practice > Competitive maps, or type map de_mirage in the console.
- Open the console (~) and type exec practice. The settings apply after the quick restart.
All 176 CS2 console commands
Search by name or what a command does, filter by category and copy the example. Commands marked "cheat" need sv_cheats 1 on a server you host.
176 commands
Practice & server
Server and match settings for practising on your own server: rounds, money, warmup, ammo and grenade practice tools.
sv_cheatsDefault0Enables cheat-protected commands (noclip, god, impact markers and more) on a server you host. Only works offline or on your own server.
Examplesv_cheats 1mp_restartgameRestarts the match after the given number of seconds, resetting scores, money and rounds.
Examplemp_restartgame 1mp_warmup_endEnds the warmup period immediately and starts the match.
Examplemp_warmup_endmp_warmup_startStarts (or restarts) a warmup period.
Examplemp_warmup_startmp_warmup_pausetimerDefault0Set to 1 to stay in warmup indefinitely; 0 resumes the warmup timer.
Examplemp_warmup_pausetimer 1mp_roundtimeHow many minutes each round lasts (game modes without a bomb objective).
Examplemp_roundtime 60mp_roundtime_defuseHow many minutes each round of Bomb Defuse lasts. If 0, mp_roundtime is used instead.
Examplemp_roundtime_defuse 60mp_freezetimeSeconds players stay frozen at the start of each round.
Examplemp_freezetime 0mp_buytimeSeconds after round start that players can still buy.
Examplemp_buytime 9999mp_buy_anywhereDefault0Lets players buy outside the buy zone. 1 = both teams, 2 = Terrorists only, 3 = Counter-Terrorists only.
Examplemp_buy_anywhere 1mp_maxmoneyMaximum money a player can hold.
Examplemp_maxmoney 60000mp_startmoneyMoney each player starts with.
Examplemp_startmoney 60000mp_afterroundmoneyMoney given to every player after each round.
Examplemp_afterroundmoney 60000mp_respawn_on_death_ctDefault0When 1, Counter-Terrorists respawn after dying.
Examplemp_respawn_on_death_ct 1mp_respawn_on_death_tDefault0When 1, Terrorists respawn after dying.
Examplemp_respawn_on_death_t 1mp_ignore_round_win_conditionsDefault0Ignores the conditions that would normally end the round (team wiped, bomb exploded and so on).
Examplemp_ignore_round_win_conditions 1mp_limitteamsMaximum player difference one team can have over the other; 0 disables the check.
Examplemp_limitteams 0mp_autoteambalanceAutomatically balances teams between rounds; set to 0 to keep teams as they are.
Examplemp_autoteambalance 0mp_friendlyfireLets teammates damage each other.
Examplemp_friendlyfire 1mp_solid_teammatesHow solid teammates are: 0 = pass through, 1 = fully solid, 2 = solid and you can stand on heads.
Examplemp_solid_teammates 1mp_free_armorDefault0Gives armour automatically each round: 1 = kevlar, 2 = kevlar + helmet.
Examplemp_free_armor 2mp_drop_knife_enableDefault0Allows players to drop their knife.
Examplemp_drop_knife_enable 1mp_c4timerDefault40Seconds from bomb plant until the C4 explodes.
Examplemp_c4timer 40mp_maxroundsMaximum number of rounds played in the match.
Examplemp_maxrounds 24mp_halftimeWhether teams switch sides at halftime.
Examplemp_halftime 1mp_overtime_enablePlays overtime when a match ends in a tie.
Examplemp_overtime_enable 1mp_teammates_are_enemiesDefault0Treats teammates as enemies so every player is a valid target (deathmatch-style free-for-all).
Examplemp_teammates_are_enemies 1sv_infinite_ammoCheatDefault0Infinite ammo. 1 = never runs out and never reloads; 2 = infinite reserve ammo but you still reload.
Examplesv_infinite_ammo 1ammo_grenade_limit_totalMaximum number of grenades a player can carry in total.
Exampleammo_grenade_limit_total 5sv_showimpactsCheatDefault0Shows where bullets land: red boxes = client impacts, blue = server impacts (1 = both, 2 = client only, 3 = server only).
Examplesv_showimpacts 1sv_showimpacts_timeCheatSeconds bullet-impact markers stay visible.
Examplesv_showimpacts_time 10sv_showbullethitsCheatDefault0Draws the hitboxes your shots hit. 1 = hits and near misses, 2 = hits only.
Examplesv_showbullethits 1sv_grenade_trajectory_prac_pipreviewCheatDefault0Shows a picture-in-picture preview of where your grenade will land while you aim it.
Examplesv_grenade_trajectory_prac_pipreview 1sv_grenade_trajectory_prac_trailtimeCheatSeconds the practice grenade trajectory line stays visible after a throw.
Examplesv_grenade_trajectory_prac_trailtime 10sv_rethrow_last_grenadeCheatThrows your last grenade again from exactly the same position and angle - ideal for checking a lineup.
Examplesv_rethrow_last_grenadesv_regeneration_force_onCheatDefault0Regenerates health over time.
Examplesv_regeneration_force_on 1godCheatToggles god mode - you take no damage.
ExamplegodnoclipCheatToggles noclip - fly through walls and the map freely.
ExamplenoclipgiveCheatGives you an item or weapon by its entity name, e.g. weapon_awp or weapon_smokegrenade.
Examplegive weapon_ak47host_timescaleCheatDefault1Speeds up or slows down the whole game (0.5 = half speed).
Examplehost_timescale 0.5sv_falldamage_scaleMultiplier for fall damage; 0 disables it.
Examplesv_falldamage_scale 0sv_gravityDefault800World gravity.
Examplesv_gravity 800sv_airaccelerateDefault12How quickly players can change speed and direction in the air (affects air-strafing).
Examplesv_airaccelerate 12sv_autobunnyhoppingDefault0Players automatically jump again while holding the jump key.
Examplesv_autobunnyhopping 1sv_enablebunnyhoppingDefault0Removes the speed cap on consecutive jumps.
Examplesv_enablebunnyhopping 1weapon_accuracy_nospreadCheatDefault0Disables weapon spread so every bullet goes to the crosshair (recoil still applies).
Exampleweapon_accuracy_nospread 1cl_showposDefault0Shows your map position, angles and velocity at the top of the screen.
Examplecl_showpos 1
Bots
Add, remove, freeze and control bots for aim practice and checking angles.
bot_addAdds a bot. Optional arguments: team (t/ct), type, difficulty and name.
Examplebot_add ctbot_add_tAdds a bot to the Terrorist team.
Examplebot_add_tbot_add_ctAdds a bot to the Counter-Terrorist team.
Examplebot_add_ctbot_kickKicks all bots, or the bots matching a name, team or difficulty.
Examplebot_kickbot_killKills all bots, or the bots matching the given criteria.
Examplebot_killbot_quotaTotal number of bots kept in the game.
Examplebot_quota 10bot_quota_modeHow bot_quota is applied: 'normal', 'fill' (fill up to the quota with bots) or 'match'.
Examplebot_quota_mode fillbot_difficultySkill of bots that join: 0 = easy, 1 = normal, 2 = hard, 3 = expert.
Examplebot_difficulty 3bot_stopCheatDefault0Freezes bot AI completely - bots stand still and do nothing.
Examplebot_stop 1bot_freezeCheatDefault0Stops bots from moving, while they can still aim and shoot.
Examplebot_freeze 1bot_mimicCheatDefault0Bots copy your inputs (movement, crouch, shooting) - handy for checking angles and peeks.
Examplebot_mimic 1bot_crouchCheatDefault0Forces bots to crouch.
Examplebot_crouch 1bot_dont_shootCheatDefault0Bots never fire their weapons.
Examplebot_dont_shoot 1bot_placeCheatMoves a bot to the spot you are aiming at.
Examplebot_placebot_zombieCheatDefault0Bots stay idle and do not attack.
Examplebot_zombie 1bot_knives_onlyRestricts bots to knives.
Examplebot_knives_onlybot_pistols_onlyRestricts bots to pistols.
Examplebot_pistols_onlybot_snipers_onlyRestricts bots to sniper rifles.
Examplebot_snipers_onlybot_all_weaponsLets bots use every weapon again.
Examplebot_all_weaponsbot_join_after_playerIf nonzero, bots wait until a human joins before entering the game.
Examplebot_join_after_player 0bot_chatterControls bot radio chatter: 'off', 'radio', 'minimal' or 'normal'.
Examplebot_chatter offbot_ignore_playersDefault0Bots do not see human players.
Examplebot_ignore_players 1
Network & performance
FPS limits and the CS2 telemetry HUD that replaced net_graph.
fps_maxFrame-rate cap in game; 0 = uncapped.
Examplefps_max 0fps_max_uiFrame-rate cap while in the main menu.
Examplefps_max_ui 120cl_showfpsDefault0Draws an FPS counter at the top of the screen (1 = fps, 2 = smoothed fps, 3 = server ms, 4 = fps and log to file).
Examplecl_showfps 1cl_hud_telemetry_frametime_showShows your FPS / frame time in the HUD. 0 = never, 1 = only when poor, 2 = always.
Examplecl_hud_telemetry_frametime_show 2cl_hud_telemetry_ping_showShows ping in the HUD. 0 = never, 1 = only when poor, 2 = always.
Examplecl_hud_telemetry_ping_show 2cl_hud_telemetry_net_misdelivery_showShows the percentage of commands and server snapshots lost to network conditions. 0 = never, 1 = only when poor, 2 = always.
Examplecl_hud_telemetry_net_misdelivery_show 2cl_hud_telemetry_net_quality_graph_showShows a graph of packet jitter and loss/reordering in the HUD. 0 = never, 1 = only when poor, 2 = always.
Examplecl_hud_telemetry_net_quality_graph_show 2cl_hud_telemetry_net_detailedShows a breakdown of network misdelivery (loss, late delivery, peak jitter). 0 = never, 1 = only when poor, 2 = always.
Examplecl_hud_telemetry_net_detailed 2cl_hud_telemetry_serverrecvmargin_graph_showGraphs how early or late your commands arrive at the server. 0 = never, 1 = only on command-queue problems, 2 = always.
Examplecl_hud_telemetry_serverrecvmargin_graph_show 2mm_dedicated_search_maxpingHighest ping to Valve servers you prefer when matchmaking.
Examplemm_dedicated_search_maxping 80r_show_build_infoShows the build information text in the corner of the screen.
Exampler_show_build_info 0statusPrints server info and the player list (including Steam IDs) to the console.
Examplestatus
HUD & radar
HUD colour, size and radar settings.
cl_hud_colorDefault0HUD colour: 0 = team colour, 1 = white, 2 = bright white, 3 = light blue, 4 = blue, 5 = purple, 6 = red, 7 = orange, 8 = yellow, 9 = green, 10 = aqua, 11 = pink, 12 = teammate colour.
Examplecl_hud_color 9hud_scalingScales the size of the HUD.
Examplehud_scaling 0.9cl_hud_radar_scaleSize of the radar on screen.
Examplecl_hud_radar_scale 1.15cl_radar_scaleRadar zoom - lower values show more of the map.
Examplecl_radar_scale 0.4cl_radar_always_centeredIf 0, the radar uses its full area instead of always keeping you in the centre.
Examplecl_radar_always_centered 0cl_radar_rotateRotates the radar with your view direction.
Examplecl_radar_rotate 1cl_radar_icon_scale_minMinimum size of player icons on the radar (0.4 to 1.25).
Examplecl_radar_icon_scale_min 0.6cl_radar_square_with_scoreboardSwitches the radar to a full square map while the scoreboard is open.
Examplecl_radar_square_with_scoreboard 1safezonexDefault1Share of the screen width the HUD can use - lower values pull the HUD towards the centre.
Examplesafezonex 0.9safezoneyDefault1Share of the screen height the HUD can use.
Examplesafezoney 0.9cl_drawhudDefault1Hides (0) or shows (1) the whole HUD.
Examplecl_drawhud 0cl_draw_only_deathnoticesDefault0Hides everything except the crosshair and kill feed - used for clean recordings.
Examplecl_draw_only_deathnotices 1cl_teamid_overhead_modeTeammate markers above heads: 0 = off, 1 = pips, 2 = pips + name, 3 = pips + name + equipment.
Examplecl_teamid_overhead_mode 2cl_showloadoutKeeps your current loadout visible in the HUD.
Examplecl_showloadout 1cl_show_clan_in_death_noticeShows clan tags next to names in the kill feed.
Examplecl_show_clan_in_death_notice 0hud_showtargetidDefault1Shows the name of the player under your crosshair.
Examplehud_showtargetid 1cl_teammate_colors_showIn competitive, gives teammates separate colours on the radar and scoreboard (2 = colours plus letters).
Examplecl_teammate_colors_show 1
Viewmodel
Position and field of view of your weapon model.
viewmodel_fovDefault60Field of view of your weapon model; higher pushes the gun further away (54 to 68).
Exampleviewmodel_fov 68viewmodel_offset_xDefault1Moves the weapon model left/right (-2.5 to 2.5).
Exampleviewmodel_offset_x 2.5viewmodel_offset_yDefault1Moves the weapon model forwards/backwards (-2 to 2).
Exampleviewmodel_offset_y 0viewmodel_offset_zDefault-1Moves the weapon model up/down (-2 to 2).
Exampleviewmodel_offset_z -1.5viewmodel_presetposApplies a viewmodel preset: 1 = Desktop, 2 = Classic.
Exampleviewmodel_presetpos 2cl_prefer_lefthandedDefault0Holds weapons in your left hand.
Examplecl_prefer_lefthanded 1
Crosshair
Every crosshair setting - or build one visually with the crosshair generator.
cl_crosshairstyleCrosshair style: 0 = Dynamic Cross, 1 = Dynamic Circle, 2 = Dynamic Cross (Classic), 3 = Static Circle, 4 = Static Cross, 5 = Static Cross (Shot Feedback), 6 = Dot Only, 7 = Dynamic Quadrant, 8 = Static Square, 9 = Static Quadrant.
Examplecl_crosshairstyle 4cl_crosshair_lengthLength of each crosshair line in whole pixels (at cl_crosshair_screen_height).
Examplecl_crosshair_length 7cl_crosshair_thicknessThickness of the crosshair lines in whole pixels.
Examplecl_crosshair_thickness 2cl_crosshair_gapGap between the centre and the crosshair lines in pixels; the settings menu only offers negative values for the Dynamic Cross (Classic) style.
Examplecl_crosshair_gap 4cl_crosshairdotAdds a centre dot.
Examplecl_crosshairdot 0cl_crosshair_tT-shaped crosshair (removes the top line).
Examplecl_crosshair_t 0cl_crosshair_recoilCrosshair follows the weapon's recoil (aim punch).
Examplecl_crosshair_recoil 0cl_crosshaircolor_rRed channel (0-255) of the crosshair colour.
Examplecl_crosshaircolor_r 0cl_crosshaircolor_gGreen channel (0-255) of the crosshair colour.
Examplecl_crosshaircolor_g 255cl_crosshaircolor_bBlue channel (0-255) of the crosshair colour.
Examplecl_crosshaircolor_b 255cl_crosshaircolor_aCrosshair opacity (0-255).
Examplecl_crosshaircolor_a 255cl_crosshair_drawoutlineCrosshair outline: 0 = none, 1 = full, 2 = half. Its colour comes from cl_crosshairoutline_r/g/b/a.
Examplecl_crosshair_drawoutline 1cl_crosshairoutline_rRed channel (0-255) of the crosshair outline colour.
Examplecl_crosshairoutline_r 0cl_crosshairoutline_gGreen channel (0-255) of the crosshair outline colour.
Examplecl_crosshairoutline_g 0cl_crosshairoutline_bBlue channel (0-255) of the crosshair outline colour.
Examplecl_crosshairoutline_b 0cl_crosshairoutline_aOpacity of the crosshair outline (0-255).
Examplecl_crosshairoutline_a 255cl_crosshair_dynamic_spread_limitHow far dynamic crosshair styles can spread while you move or shoot (0-255); lower values keep them tighter.
Examplecl_crosshair_dynamic_spread_limit 255cl_crosshair_screen_heightScreen height the pixel sizes are set for; CS2 scales the crosshair to your actual resolution.
Examplecl_crosshair_screen_height 1080cl_ironsight_dot_scaleSize of the scope dot in the AUG and SG 553 sights (0.1-2).
Examplecl_ironsight_dot_scale 1cl_crosshair_sniper_widthWidth of the sniper scope lines (1 = single-pixel hairline).
Examplecl_crosshair_sniper_width 1cl_crosshair_friendly_warningShows a warning icon on the crosshair when aiming at a teammate.
Examplecl_crosshair_friendly_warning 1
Audio
Master volume, music and voice chat.
volumeMaster game volume (0-1).
Examplevolume 0.5snd_mute_losefocusDefault1Mutes the game while it is not the focused window.
Examplesnd_mute_losefocus 0snd_roundstart_volumeVolume of round start music.
Examplesnd_roundstart_volume 0snd_roundend_volumeVolume of round win/loss music.
Examplesnd_roundend_volume 0snd_mvp_volumeVolume of MVP music.
Examplesnd_mvp_volume 0snd_tensecondwarning_volumeVolume of the ten-second (bomb/round) warning.
Examplesnd_tensecondwarning_volume 0.2snd_deathcamera_volumeVolume of the death camera music.
Examplesnd_deathcamera_volume 0snd_mapobjective_volumeVolume of map objective music.
Examplesnd_mapobjective_volume 0snd_headphone_eqSelects the headphone EQ profile (Natural, Crisp or Smooth in the audio settings).
Examplesnd_headphone_eq 1snd_voipvolumeVolume of player voice chat.
Examplesnd_voipvolume 0.5cl_mute_enemy_teamMutes voice and text chat from the enemy team.
Examplecl_mute_enemy_team 1cl_mute_all_but_friends_and_partyOnly hears voice chat from Steam friends and your party.
Examplecl_mute_all_but_friends_and_party 1
Binds & mouse
Key binds, aliases, configs and mouse sensitivity.
bindBinds a key to a command, e.g. bind "f" "+lookatweapon".
Examplebind "mouse5" "noclip"unbindRemoves the binding from a key.
Exampleunbind "mouse5"unbindallRemoves every key binding - you will need to rebind movement afterwards.
ExampleunbindallaliasCreates a named shortcut that runs one or more commands.
Examplealias "+jt" "+jump;-attack"execRuns a .cfg file from game/csgo/cfg (the .cfg extension is optional).
Exampleexec practiceechoPrints text to the console - useful for confirming a config ran.
Exampleecho practice config loadedtoggleSwitches a setting between the listed values each time it runs.
Exampletoggle cl_radar_scale 0.3 0.7incrementvarSteps a setting between a min and max by a set amount each time it runs.
Exampleincrementvar cl_crosshair_length 3 9 1host_writeconfigSaves your current settings and binds to your config.
Examplehost_writeconfigsensitivityDefault1.25Mouse sensitivity.
Examplesensitivity 1.6zoom_sensitivity_ratioDefault1Extra sensitivity multiplier while scoped in.
Examplezoom_sensitivity_ratio 1m_yawDefault0.022Horizontal mouse multiplier (degrees per count). Changing it stretches your sensitivity horizontally.
Examplem_yaw 0.022cl_sniper_delay_unscopeKeeps a sniper scoped for a moment after firing instead of unscoping instantly.
Examplecl_sniper_delay_unscope 0cl_sniper_auto_rezoomRe-zooms snipers automatically after a shot.
Examplecl_sniper_auto_rezoom 1gameinstructor_enableShows (1) or hides (0) in-game lessons for new players.
Examplegameinstructor_enable 0
Demos & replays
Recording and watching demos.
recordStarts recording a POV demo with the given name.
Examplerecord mymatchstopStops recording the demo.
ExamplestopplaydemoPlays a demo file from the csgo folder.
Exampleplaydemo mymatchdemouiShows or hides the demo playback controls (Shift+F2 by default).
Exampledemouidemo_gototickJumps to a specific tick in the demo.
Exampledemo_gototick 12000demo_timescaleDefault1Demo playback speed (0.5 = half speed, 4 = four times as fast).
Exampledemo_timescale 4demo_pausePauses demo playback.
Exampledemo_pausedemo_resumeResumes demo playback.
Exampledemo_resumedemo_togglepauseToggles pause during demo playback.
Exampledemo_togglepausedemo_infoPrints information about the demo being played.
Exampledemo_infospec_show_xrayWhile spectating or watching demos, shows player outlines and names through walls.
Examplespec_show_xray 1
Misc
Connecting, maps and console utilities.
disconnectLeaves the current server or match.
ExampledisconnectretryReconnects to the last server you were on.
ExampleretryconnectConnects to a server by IP address and port.
Exampleconnect 127.0.0.1:27015mapLoads a map on your own local server (e.g. de_dust2, de_inferno).
Examplemap de_miragechangelevelChanges the map on the current server without kicking players.
Examplechangelevel de_nukequitCloses the game.
ExamplequitclearClears the console output.
ExampleclearfindLists every command and setting whose name or help text contains the search term.
Examplefind crosshaircvarlistLists every console variable and command.
Examplecvarlistcl_hide_avatar_imagesHides other players' avatar images.
Examplecl_hide_avatar_images 1cl_sanitize_player_namesDefault0Replaces other players' names with neutral placeholders.
Examplecl_sanitize_player_names 1
This list holds 176 commands that exist in the current Counter-Strike 2 client - each name was checked against the game's own files, so commands that only worked in CS:GO (net_graph, cl_righthand, cl_bob and others) are left out. 20 of them are cheat-protected and only work after sv_cheats 1 on a server you host, which is exactly what the practice config generator sets up for you.
Get the Winning Edge
Real-time overlays, automatic match tracking, and exclusive tools — everything you need to climb, free on your PC.
- In-game overlays
- Automatic match tracking
- Desktop-exclusive tools
Help us maintain accuracy! If you notice incorrect stats, missing data, or any issues, your feedback directly improves the quality of our data for the entire community.
CS2 console commands FAQ
How do I open the console in CS2?
Go to Settings > Game and set Enable Developer Console (~) to Yes, then press the ~ key (the key under Esc) in game.
What does sv_cheats 1 do in CS2?
It unlocks cheat-protected commands such as noclip, god, sv_showimpacts and sv_rethrow_last_grenade. It only works on a server you host (a local practice match or a private server), never in matchmaking.
What are the best CS2 practice commands?
sv_cheats 1, sv_infinite_ammo 1, sv_grenade_trajectory_prac_pipreview 1, sv_showimpacts 1, mp_roundtime_defuse 60, mp_buy_anywhere 1, mp_maxmoney 60000 and bot_kick, plus binds for noclip and sv_rethrow_last_grenade. The practice config generator on this page combines all of them.
Where do I put an autoexec or practice config in CS2?
Put .cfg files in Steam\steamapps\common\Counter-Strike Global Offensive\game\csgo\cfg. Run one with exec <name>; to load autoexec.cfg on every launch, add +exec autoexec to the CS2 launch options in Steam.
How do I show FPS in CS2?
Use cl_showfps 1 for a simple counter, or cl_hud_telemetry_frametime_show 2 to show FPS in the HUD all the time. fps_max 0 removes the frame-rate cap.
Does net_graph work in CS2?
No - net_graph was removed. CS2 uses telemetry instead: cl_hud_telemetry_ping_show 2, cl_hud_telemetry_net_misdelivery_show 2 and cl_hud_telemetry_net_quality_graph_show 2 show ping, packet loss and jitter in the HUD.
How do I add or remove bots in CS2?
Use bot_add_t or bot_add_ct to add a bot to a team, bot_kick to remove all bots and bot_quota to set how many there are. bot_stop 1 freezes them (needs sv_cheats 1).
What are the viewmodel commands in CS2?
viewmodel_fov (54-68), viewmodel_offset_x, viewmodel_offset_y and viewmodel_offset_z move the weapon model; viewmodel_presetpos switches between the Desktop and Classic presets, and cl_prefer_lefthanded 1 moves the gun to your left hand.