Monday.com Automation
Claude Office SkillsAutomate Monday.com boards, items, and workflow automations.
mondayproject-managementautomation
# Monday.com Automation
Comprehensive skill for automating Monday.com work management and team workflows.
## Core Concepts
### Board Structure
```
BOARD ANATOMY:
βββββββββββββββββββββββββββββββββββββββββββββββββββ
β π Project Board β
βββββββββββββββββββββββββββββββββββββββββββββββββββ€
β Group: Sprint 1 β
β βββββββββββ¬βββββββββ¬βββββββββ¬βββββββββ¬ββββββββββ
β β Item β Status β Person β Date β Budget ββ
β βββββββββββΌβββββββββΌβββββββββΌβββββββββΌβββββββββ€β
β β Task 1 β π’ Doneβ Sarah β Jan 15 β $500 ββ
β β Task 2 β π‘ WIP β Mike β Jan 20 β $800 ββ
β β Task 3 β π΄ Stuckβ Lisa β Jan 18 β $300 ββ
β βββββββββββ΄βββββββββ΄βββββββββ΄βββββββββ΄ββββββββββ
β β
β Group: Sprint 2 β
β βββββββββββ¬βββββββββ¬βββββββββ¬βββββββββ¬ββββββββββ
β β Task 4 β βͺ New β β Jan 25 β $600 ββ
β β Task 5 β βͺ New β β Jan 28 β $400 ββ
β βββββββββββ΄βββββββββ΄βββββββββ΄βββββββββ΄ββββββββββ
βββββββββββββββββββββββββββββββββββββββββββββββββββ
```
### Column Types
```yaml
column_types:
status:
labels:
- label: "Done"
color: green
- label: "Working on it"
color: yellow
- label: "Stuck"
color: red
- label: "Not Started"
color: grey
person:
allow_multiple: true
date:
include_time: false
timeline:
show_weeks: true
numbers:
unit: "$"
text:
multiline: false
dropdown:
options: ["Option A", "Option B", "Option C"]
formula:
expression: "{Numbers} * 1.1"
```
## Automation Recipes
### Built-in Automations
```yaml
automations:
- name: "Status Change Notification"
trigger:
type: status_change
column: "Status"
to: "Done"
action:
type: notify
target: item_subscribers
message: "β
{{item.name}} has been completed!"
- name: "Due Date Assignment"
trigger:
type: date_arrived
column: "Due Date"
action:
type: change_status
column: "Status"
to: "Overdue"
- name: "Auto-Assign New Items"
trigger:
type: item_created
group: "Incoming"
action:
type: assign_person
column: "Owner"
value: "team_lead"
- name: "Move When Status Changes"
trigger:
type: status_change
column: "Status"
to: "Done"
action:
type: move_to_group
target: "Completed"
- name: "Create Dependent Task"
trigger:
type: status_change
column: "Status"
to: "Ready for Review"
action:
type: create_item
board: "Review Board"
values:
Name: "Review: {{item.name}}"
Link: "{{item.link}}"
```
### Custom Automations
```yaml
custom_recipes:
- name: "SLA Warning"
trigger:
type: every_time_period
interval: "1 hour"
condition:
- column: "Status"
not_equals: "Done"
- column: "Due Date"
within: "24 hours"
action:
- type: change_status
column: "Priority"
to: "Urgent"
- type: notify
channel: "#alerts"
message: "β οΈ SLA at risk: {{item.name}}"
- name: "Budget Rollup"
trigger:
type: column_change
column: "Budget"
action:
type: update_parent
column: "Total Budget"
formula: "SUM(subitems.Budget)"
```
## Board Templates
### CRM Board
```yaml
crm_board:
name: "Sales CRM"
groups:
- "New Leads"
- "Contacted"
- "Qualified"
- "Proposal"
- "Negotiation"
- "Won"
- "Lost"
columns:
- name: "Company"
type: text
- name: "Contact"
type: text
- name: "Email"
type: email
- name: "Phone"
type: phone
- name: "Deal Value"
type: numbers
unit: "$"
- name: "Stage"
type: status
- name: "Owner"
type: person
- name: "Next Action"
type: date
- name: "Lead Source"
type: dropdown
- name: "Notes"
type: long_text
```
### Project Tracker
```yaml
project_board:
name: "Project Tracker"
groups:
- "Backlog"
- "This Sprint"
- "In Progress"
- "In Review"
- "Done"
columns:
- name: "Task"
type: text
- name: "Status"
type: status
- name: "Assignee"
type: person
- name: "Priority"
type: status
labels: ["Critical", "High", "Medium", "Low"]
- name: "Timeline"
type: timeline
- name: "Estimated Hours"
type: numbers
- name: "Actual Hours"
type: numbers
- name: "Tags"
type: tags
- name: "Dependencies"
type: dependency
```
## Views & Dashboards
### View Types
```yaml
views:
main_table:
type: table
default: true
columns: all
kanban:
type: kanban
group_by: "Status"
card_fields:
- "Assignee"
- "Due Date"
- "Priority"
timeline:
type: timeline
date_column: "Timeline"
color_by: "Status"
calendar:
type: calendar
date_column: "Due Date"
color_by: "Priority"
chart:
type: chart
chart_type: bar
x_axis: "Status"
y_axis: count
workload:
type: workload
person_column: "Assignee"
effort_column: "Estimated Hours"
```
### Dashboard Widgets
```yaml
dashboard:
name: "Project Overview"
widgets:
- type: numbers
title: "Total Tasks"
board: "Project Board"
column: count
- type: chart
title: "Tasks by Status"
board: "Project Board"
chart_type: pie
group_by: "Status"
- type: battery
title: "Sprint Progress"
board: "Project Board"
group: "This Sprint"
- type: timeline
title: "Project Timeline"
boards: ["Project Board"]
- type: workload
title: "Team Workload"
board: "Project Board"
person_column: "Assignee"
```
## Integration Workflows
### Slack Integration
```yaml
slack_automations:
- trigger: status_change_to_done
action:
post_to_channel: "#wins"
message: "π {{person}} completed {{item}}!"
- trigger: item_stuck
action:
post_to_channel: "#blockers"
message: "π§ {{item}} is stuck. Owner: {{person}}"
- trigger: new_item_created
action:
post_to_channel: "#tasks"
message: "π New task: {{item}} ({{board}})"
```
### Email Integration
```yaml
email_automations:
- trigger: due_date_approaching
days_before: 3
action:
send_email:
to: "{{item.person.email}}"
subject: "Task Due Soon: {{item.name}}"
body: |
Hi {{item.person.name}},
Your task "{{item.name}}" is due on {{item.due_date}}.
Please update the status or reach out if you need help.
```
### API Workflows
```javascript
// Monday.com GraphQL API Examples
// Create Item
const createItem = `
mutation {
create_item (
board_id: 123456789,
group_id: "new_group",
item_name: "New Task",
column_values: "{\"status\":\"Working on it\",\"person\":\"12345\"}"
) {
id
}
}
`;
// Update Status
const updateStatus = `
mutation {
change_column_value (
board_id: 123456789,
item_id: 987654321,
column_id: "status",
value: "{\"label\":\"Done\"}"
) {
id
}
}
`;
// Query Items
const queryItems = `
query {
boards (ids: 123456789) {
items_page (limit: 50) {
items {
id
name
column_values {
id
value
}
}
}
}
}
`;
```
## Best Practices
1. **Group Organization**: Use groups for workflow stages
2. **Consistent Columns**: Standardize across boards
3. **Automation Rules**: Reduce manual updates
4. **Mirror Columns**: Connect related boards
5. **Dashboard Views**: Provide executive visibility
6. **Templates**: Reuse board structures
7. **Subitems**: Break down complex tasks
8. **Dependencies**: Show task relationshipsπ§ͺ Found this useful?
The $SKILL experiment is building the agent skill distribution layer. Every skill you discover through this directory is part of the experiment.