diff --git a/code/modules/mob/living/silicon/ai/ai_mob.dm b/code/modules/mob/living/silicon/ai/ai_mob.dm
index 135ba4645b4..000abc76c2e 100644
--- a/code/modules/mob/living/silicon/ai/ai_mob.dm
+++ b/code/modules/mob/living/silicon/ai/ai_mob.dm
@@ -1394,6 +1394,8 @@ GLOBAL_LIST_INIT(ai_verbs_default, list(
aiRadio.disabledAi = TRUE //No talking on the built-in radio for you either!
if(GetComponent(/datum/component/ducttape))
QDEL_NULL(builtInCamera)
+ if(program_picker)
+ program_picker.reset_programs()
forceMove(card) //Throw AI into the card.
to_chat(src, "You have been downloaded to a mobile storage device. Remote device connection severed.")
to_chat(user, "Transfer successful: [name] ([rand(1000,9999)].exe) removed from host terminal and stored within local memory.")
diff --git a/code/modules/mob/living/silicon/ai/ai_programs.dm b/code/modules/mob/living/silicon/ai/ai_programs.dm
index 42f20af4998..48b01a83e8f 100644
--- a/code/modules/mob/living/silicon/ai/ai_programs.dm
+++ b/code/modules/mob/living/silicon/ai/ai_programs.dm
@@ -254,6 +254,9 @@
if(istype(user.loc, /obj/machinery/power/apc))
to_chat(user, "Error: APCs do not have enough processing power to handle programs!")
return
+ if(istype(user.loc, /obj/item/aicard))
+ to_chat(user, "Error: InteliCards do not have enough processing power to handle programs!")
+ return
user.program_picker.ui_interact(user)
/// RGB Lighting - Recolors Lights