1 | # Handler Concepts
|
2 |
|
3 | The two core automations Atomist provides are:
|
4 |
|
5 | - **[Command handlers](CommandHandlers.md)**: Automations that are typically invoked by a human, and may gather parameters before execution
|
6 | - **[Event handlers](EventHandlers.md)**: Automations that are invoked as a result of an event in the Cortex data model
|
7 |
|
8 | Both types of automation have the following in common:
|
9 |
|
10 | - Configuration via [decorators](Decorators.md)
|
11 | - Lifecycle where a fresh instance is used for each invocation, after being populated with the appropriate instance data
|
12 | - Access to a handler context
|
13 | - Ability to work with [secrets](Secrets.md) managed by Atomist
|
14 | - Ability to query the Atomist Cortex, in the context of the current team
|
15 | - Ability to work with project contents, using [project operations](ProjectOperations.md).
|
16 | - Returning a Promise of a `HandlerResult`.
|