ccid-utils is a USB smartcard driver and development platform. The driver follows a simple synchronous design that supports multiple slots but only one transaction at a time and includes a Python interface. It also includes a command line smartcard shell with a searchable history. The shell, written in Python, offers many useful features for developing with smart-cards and for reverse engineering APDU formats. It includes tools for reading data from GSM SIM cards and EMV credit/debit cards. The SIM tool is very basic, but allows reading SMS messages from the SIM. An example EMV (credit/debit) card tool is included that is boilerplate code for utilizing the EMV C API. There is also a Python interface for the EMV API. A graphical interface for reading EMV cards is provided.