A smart power tool, comprising: an output shaft for outputting torsion; an electric motor for driving the output shaft to rotate; a housing for accommodating the electric motor; a transmission assembly for connecting the electric motor to the output shaft; an adjustment assembly for adjusting a working mode of the smart power tool and outputting a mode signal, wherein the working mode comprises at least a drill gear mode; a detection unit for detecting a current value of the smart power tool in operation; and a controller configured to: receive the mode signal; and determine a set of current variables according to the working mode and the current value of the smart power tool in operation, wherein the set of current variables comprises a current difference and a filtered current difference; characterized in that the controller is further configured to: determine, according to the set of current variables, whether startup of the smart power tool is completed; determine a set of feature quantities according to the set of current variables after the startup is completed; and determine a type of a drill bit of the smart power tool according to the set of feature quantities; and determine a working state of the smart power tool according to the set of current variables and/or the set of feature quantities and the type of the drill bit of the smart power tool; and control the electric motor to stop rotating so as to control the smart power tool to shut down when determining that the smart power tool is in a drill-through state. an output shaft for outputting torsion; an electric motor for driving the output shaft to rotate; a housing for accommodating the electric motor; a transmission assembly for connecting the electric motor to the output shaft; an adjustment assembly for adjusting a working mode of the smart power tool and outputting a mode signal, wherein the working mode comprises at least a drill gear mode; a detection unit for detecting a current value of the smart power tool in operation; and a controller configured to: receive the mode signal; and determine a set of current variables according to the working mode and the current value of the smart power tool in operation, wherein the set of current variables comprises a current difference and a filtered current difference; characterized in that the controller is further configured to: determine, according to the set of current variables, whether startup of the smart power tool is completed; determine a set of feature quantities according to the set of current variables after the startup is completed; and determine a type of a drill bit of the smart power tool according to the set of feature quantities; and determine a working state of the smart power tool according to the set of current variables and/or the set of feature quantities and the type of the drill bit of the smart power tool; and control the electric motor to stop rotating so as to control the smart power tool to shut down when determining that the smart power tool is in a drill-through state. receive the mode signal; and determine a set of current variables according to the working mode and the current value of the smart power tool in operation, wherein the set of current variables comprises a current difference and a filtered current difference; characterized in that the controller is further configured to: determine, according to the set of current variables, whether startup of the smart power tool is completed; determine a set of feature quantities according to the set of current variables after the startup is completed; and determine a type of a drill bit of the smart power tool according to the set of feature quantities; and determine a working state of the smart power tool according to the set of current variables and/or the set of feature quantities and the type of the drill bit of the smart power tool; and control the electric motor to stop rotating so as to control the smart power tool to shut down when determining that the smart power tool is in a drill-through state. determine, according to the set of current variables, whether startup of the smart power tool is completed; determine a set of feature quantities according to the set of current variables after the startup is completed; and determine a type of a drill bit of the smart power tool according to the set of feature quantities; and determine a working state of the smart power tool according to the set of current variables and/or the set of feature quantities and the type of the drill bit of the smart power tool; and control the electric motor to stop rotating so as to control the smart power tool to shut down when determining that the smart power tool is in a drill-through state.