This proposal is a three-year RUI project to implement "AgentTeamwork", a mobile agent-based middleware system for coordinating distributed jobs in a computational community of computer owners. Each mobile agent represents a client user by carrying client job requests, searching for resources available for a given request, executing the job at suitable computers, and migrating it to other resources when needed. All the features of job migration will be encapsulated in a user program wrapper implemented on a Java layer between a mobile agent and the corresponding user program. The wrapper captures all execution state of the user program, and is carried by the agent upon a job migration. A user program is preprocessed with JavaCC and ANTLR to interact with its corresponding wrapper at run time. Previous work has implemented a mobile-agent execution platform, mobile agents running on top of this platform, a user program wrapper, and a inter-process communication library. The main objective of this proposed project is to complete the implementation, tie-in a language preprocessor, evaluate system performance, and disseminate the system and its design techniques to the public.