Flexibility and distribution are major challenges of an advanced workflow management system, but have been addressed mostly separated from each other. In this paper, we present an agent-based workflow enactment serivce which combines flexible and decentralized workflow execution. Every task is coordinated by its own task (coordination) agent which interact with related task agents by event passing. Realized as reactive agents, the task agents know how to react on state changes as well as on structural workflow changes so that workflow changes can be handled also in a decentralized enactment architecture. Instead of generating different task or workflow objects for the different task types of a workflow schema, the execution behavior of a task agent is extracted from the worklow schema, explicitly represented within the task agent and updated when the workflow schema is changed. In contrast to autonomous or intelligent agents, the task agents behave as defined in the workflow schema. Finally, on schema level, the behavior definition can be customized in order to express an adequate behavior for heterogeneous and flexible processes. This is not only the basis for defining less restrictive workflows in advance, but also for supporting dynamic workflow changes in every possible situation.