--- id: claude-office-skills/skills/monday-automation version: "f7fd98b0" license: MIT install: manual updated: 2026-01-31 --- # Monday.com Automation — This skill connects Claude to Monday.com for intelligent workflow automation. Build custom automations that create items, update statuses, sync across boards, and trigger notifications—all without manual intervention. Includes templates for project tracking and CRM workflows. Publisher: claude-office-skills · Stars: 338 · Updated: 2026-01-31 Install (manual): `git clone https://github.com/claude-office-skills/skills` ## SKILL.md # 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 [View on SkillFed](https://skillfed.io/claude-office-skills/skills/monday-automation) · [View on GitHub](https://github.com/claude-office-skills/skills)