Choose one useful job
A bot is software that performs an automated action in a workspace, if the service supports it. For example, an approved integration might post a build status to a project channel. Start with one concrete workflow and define when the bot should act.
Set boundaries
Identify the account or application identity, the conversations it can access, and the actions it can take. Ask for only the permissions required. A bot that can read private conversations or send messages widely needs more scrutiny than one posting to a designated test space.
Plan operations and retirement
Name an owner, document how credentials are stored and rotated, and make errors visible without logging secrets. Test duplicates, retries, and failure behavior. When the bot is no longer needed, disable its access and remove the credentials.
Example: a build-status bot
An approved bot might post a build result to a dedicated project space. Document the source of the event, the destination, the owner, and the information allowed in the message. Avoid including secrets or full logs. Test a successful event, a duplicate event, and a failed delivery before expanding access. If the bot posts incorrectly, the owner should know how to disable it and rotate its credentials.
Choose the next step
| Situation | What to check |
|---|---|
| The same event arrives twice | Use a stable event ID or supported deduplication method. |
| The destination changes | Recheck permissions and update the owner’s documentation. |
| A token is exposed | Disable or rotate it and investigate according to policy. |
A practical checklist
- Write down the bot’s job and owner.
- Confirm product support and workspace approval.
- Limit its access to the required data and actions.
- Test failure handling and document removal.