A semiconductor manufacturing factory is a very complicated production system. Typical characteristics of a semiconductor manufacturing factory include: fluctuating demand, jobs with various product types and priorities, un-balanced capacity, jobs' reentrance to the bottleneck machines, hundreds of processing steps, alternative machines with unequal capacity, etc. Scheduling in a semiconductor manufacturing factory becomes a very difficult task owing to these characteristics. To enhance the performance of dynamic scheduling in a semiconductor manufacturing factory, a self-adaptive agent-based approach is proposed in this study. Firstly, a self-adaptive agent-based scheduling model, which integrates release control, dispatching and machine maintenance scheduling, is presented. Secondly, the negotiation protocol between agents is given. Thirdly, scheduling algorithms for decision making of agents are offered. Unlike in the past studies a single pre-determined scheduling algorithm is used for all agents, in this study every agent develops and modifies its own scheduling algorithm to adapt it to the outside conditions. Finally, production simulation is also applied in this study to generate some test data to evaluate the effectiveness of the proposed methodology.