boardId in plugin configcolumns in plugin config (with sensible defaults)ColumnConfig KeyTypePurposeStatuscolumns.statusstatusActive / Done / BlockedCheck Frequencycolumns.checkFrequencytextHow often to check: 1h, 2h, 4h, 8h, dailyLast Checkedcolumns.lastCheckeddateWhen the agent last reviewed this itemDetailscolumns.detailslong_textFull definition of what "done" means, context, blockersAssigned Bycolumns.assignedBystatusWho created/assigned this task: {owner} or {agent}
mondayApiToken in plugin confighttps://api.monday.com/v2 (GraphQL)Authorization: <token>This is the core loop. Every hour, a cron job fires and the agent runs a real work session — not just a status check.
Execute the plan:
Write an update on the main accountability item in Monday (Updates section) with what was done and results
If stuck, blocked, or unsure what to do next:
accountability_create_itemEvery day at the configured time, review all active items and write a consolidated update to the owner.
Sub-items are used as subtasks under each accountability item. They represent specific work units.
graphql
mutation { create_subitem(parent_item_id: PARENT_ID, item_name: "SUBTASK_NAME", column_values: "{\"DETAILS_COL_ID\":{\"text\":\"PLAN\"}}") { id } }
graphql
{ items(ids: [PARENT_ID]) { subitems { id name column_values { id text value } } } }
graphql
{ boards(ids: BOARD_ID) { items_page(limit: 50) { items { id name column_values { id text value } updates(limit: 3) { body created_at } subitems { id name column_values { id text value } } } } } }
graphql
mutation { create_item(board_id: BOARD_ID, item_name: "TITLE", column_values: "{\"DETAILS_COL\":{\"text\":\"DETAILS\"},\"FREQ_COL\":\"FREQ\",\"ASSIGNED_COL\":{\"label\":\"ASSIGNEE\"}}") { id } }
graphql
mutation { create_update(item_id: ITEM_ID, body: "<p>UPDATE_HTML</p>") { id } }
graphql
mutation { change_column_value(board_id: BOARD_ID, item_id: ITEM_ID, column_id: "LAST_CHECKED_COL", value: "{\"date\":\"YYYY-MM-DD\"}") { id } }
Status labels: Working on it (1/orange), Done (2/green), Stuck (0/red)
graphql
mutation { change_column_value(board_id: BOARD_ID, item_id: ITEM_ID, column_id: "STATUS_COL", value: "{\"label\":\"Working on it\"}") { id } }
Run scripts/monday-api.sh for common operations:
bash
# List items
bash scripts/monday-api.sh list
# Add update to item
bash scripts/monday-api.sh update <item_id> "<html body>"
# Set last checked
bash scripts/monday-api.sh checked <item_id>
Before doing ANY work on an accountability item, you MUST read the full Document/Details column on that item first. This contains important context, constraints, and explicit instructions about what to do and what NOT to do. Skipping this step has caused the agent to undo previous decisions. No exceptions.
When spawning any sub-agent for work on an accountability item, you MUST include the full text from the item's Details/Doc column in the sub-agent's task prompt. This includes constraints, warnings, history, and explicit "DO NOT" instructions. The sub-agent has no memory of previous sessions — if it doesn't get the context in its prompt, it will make decisions that contradict prior decisions.