[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71M1FSZAXPB7XZD9SBMW53P":3,"skill-same:01M71M1FSZAXPB7XZD9SBMW53P":68},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":22,"publishedAt":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":45,"commitSha":46,"skillDirectory":47,"forksCount":48,"repositoryHtmlUrl":49,"repositoryHomepageUrl":50,"ownerHtmlUrl":51,"ownerBlogUrl":52,"ownerDescription":6,"updatedAt":53,"install":54,"resources":67},"01M71M1FSZAXPB7XZD9SBMW53P","mastermind-monotask",null,"Monotask CLI reference for mastermind agents: boards, columns, cards (filters, subtasks, prerequisites, scoring, attachments), spaces and GitHub\u002FLinear sync.","monoes\u002Fmonomind","monoes","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F276744696?v=4","01M71KWF37AJ2NJBP3KWBVSDGT","01M71KWF4CSF8ADH0M6HA09VD2",23,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fmonoes\u002Fmonomind\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fmastermind-monotask\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"mastermind monotask","cli reference","filters","scoring","linear sync","cli","sync","cards","columns","linear","mastermind agents","for","attachments","github","spaces","reference","2026-11-10 10:56:23",false,"---\nname: mastermind-monotask\ndescription: \"Monotask CLI reference for mastermind agents: boards, columns, cards (filters, subtasks, prerequisites, scoring, attachments), spaces and GitHub\u002FLinear sync.\"\ntype: reference-skill\n---\n\n# Monotask CLI — Agent Reference (v1.1.4)\n\nMonotask is a P2P local-first task manager. All data is stored in SQLite (`~\u002F.local\u002Fshare\u002Fmonotask\u002Fmonotask.db`). Always use `--json` for machine-readable output.\n\n---\n\n## Global Flags\n\n```\n--data-dir \u003CPATH>   Override storage directory (must be consistent per instance)\n```\n\n---\n\n## Board\n\n```bash\n# Create — returns {id, title, deep_link}\nmonotask board create \"Sprint 42\" --json\n\n# List — returns [{id, title}] (search by title with jq .title)\nmonotask board list --json\n\n# Rename\nmonotask board rename \u003CBOARD_ID> \"New Title\" --json\n```\n\n---\n\n## Column\n\n```bash\n# Create — returns {id, board_id}\nmonotask column create \u003CBOARD_ID> \"Todo\" --json\n\n# List — returns [{id, title, card_ids:[]}]  ← field is \"title\", NOT \"name\"\nmonotask column list \u003CBOARD_ID> --json\n\n# Rename\nmonotask column rename \u003CBOARD_ID> \u003CCOL_ID> \"New Title\" --json\n\n# Delete (soft-deletes all cards in it)\nmonotask column delete \u003CBOARD_ID> \u003CCOL_ID> --json\n```\n\n---\n\n## Card\n\n### Listing\n\n```bash\n# All cards in board (flat, includes col_id + col_title per card)\nmonotask card list \u003CBOARD_ID> --json\n\n# Filter by column (server-side, fast)\nmonotask card list \u003CBOARD_ID> --col \u003CCOL_ID> --json\n\n# Filter by label (server-side, exact match)\nmonotask card list \u003CBOARD_ID> --label \"role:writer\" --json\n\n# Combine filters\nmonotask card list \u003CBOARD_ID> --col \u003CTODO_COL> --label \"role:reviewer\" --json\n```\n\nJSON schema per item from `card list`:\n```json\n{ \"id\":\"\u003Cuuid>\", \"title\":\"\u003Cstr>\", \"col_id\":\"\u003Cuuid>\", \"col_title\":\"\u003Cstr>\",\n  \"labels\":[], \"due_date\":null, \"impact\":null, \"effort\":null, \"direct_priority\":null }\n```\n\n### Create \u002F View \u002F Move\n\n```bash\n# Create — returns {id, title, board_id, number}\nCARD=$(monotask card create \u003CBOARD_ID> \u003CCOL_ID> \"Task title\" --json | jq -r .id)\n\n# View full card (includes parent + subtasks)\nmonotask card view \u003CBOARD_ID> \u003CCARD_ID> --json\n\n# Move to different column (auto-detects current column)\nmonotask card move \u003CBOARD_ID> \u003CCARD_ID> \u003CTO_COL_ID> --json\n\n# Copy to another column (same board)\nmonotask card copy \u003CBOARD_ID> \u003CCARD_ID> \u003CTARGET_COL_ID> --json\n\n# Rename\nmonotask card rename \u003CBOARD_ID> \u003CCARD_ID> \"New title\" --json\n\n# Soft-delete (hidden from all views)\nmonotask card delete \u003CBOARD_ID> \u003CCARD_ID> --json\n\n# Soft-archive (hidden from normal views)\nmonotask card archive \u003CBOARD_ID> \u003CCARD_ID> --json\n```\n\n### Metadata\n\n```bash\nmonotask card set-description \u003CBOARD_ID> \u003CCARD_ID> \"Markdown text\" --json\nmonotask card set-due-date    \u003CBOARD_ID> \u003CCARD_ID> \"2026-06-01\" --json  # \"none\" to clear\nmonotask card set-cover       \u003CBOARD_ID> \u003CCARD_ID> \"#e74c3c\" --json     # \"none\" to clear\n```\n\n### Priority \u002F Scoring\n\n```bash\n# ICE scoring: priority = floor((impact + 10 - effort) \u002F 2), range 0–10\nmonotask card set-impact  \u003CBOARD_ID> \u003CCARD_ID> 8 --json\nmonotask card set-effort  \u003CBOARD_ID> \u003CCARD_ID> 3 --json\n\n# Direct priority (bypasses impact\u002Feffort)\nmonotask card set-direct-priority \u003CBOARD_ID> \u003CCARD_ID> 9 --json\nmonotask card set-direct-priority \u003CBOARD_ID> \u003CCARD_ID> --clear --json\n\n# Clear all scoring\nmonotask card clear-priority \u003CBOARD_ID> \u003CCARD_ID> --json\n```\n\n### Labels\n\n```bash\nmonotask card label add    \u003CBOARD_ID> \u003CCARD_ID> \"role:writer\" --json\nmonotask card label remove \u003CBOARD_ID> \u003CCARD_ID> \"role:writer\" --json\nmonotask card label list   \u003CBOARD_ID> \u003CCARD_ID> --json  # → [\"str\",...]\n```\n\n**Convention for org agents:**\n- `role:\u003Crole_id>` — which role should handle this card\n- `claimed` — card has been picked up by an agent (in Doing column)\n\n### Assignee\n\n```bash\n# PUBKEY = 64-char hex (get via: monotask profile show)\nmonotask card set-assignee \u003CBOARD_ID> \u003CCARD_ID> \u003CPUBKEY> --json\nmonotask card set-assignee \u003CBOARD_ID> \u003CCARD_ID> none --json  # clear\n```\n\n### Comments\n\n```bash\nmonotask card comment add    \u003CBOARD_ID> \u003CCARD_ID> \"text\" --json\nmonotask card comment list   \u003CBOARD_ID> \u003CCARD_ID> --json\nmonotask card comment delete \u003CBOARD_ID> \u003CCARD_ID> \u003CCOMMENT_ID> --json\n```\n\n### Subtasks (parent\u002Fchild hierarchy)\n\n```bash\n# Create a subtask (new card linked as child of PARENT_CARD)\nmonotask card subtask add \u003CPARENT_BOARD> \u003CPARENT_CARD> \u003CCHILD_BOARD> \u003CCOL_ID> \"Subtask title\" --json\n# → returns {id, title, board_id}\n\n# List subtasks of a card\nmonotask card subtask list \u003CBOARD_ID> \u003CCARD_ID> --json\n# → [{board_id, card_id},...]\n\n# card view includes \"subtasks\" and \"parent\" fields automatically\n```\n\n### Prerequisites (dependency ordering)\n\n```bash\n# PREREQ_CARD must be Done before CARD can be claimed\nmonotask card prerequisite add    \u003CBOARD_ID> \u003CCARD_ID> \u003CPREREQ_BOARD> \u003CPREREQ_CARD_ID> --json\nmonotask card prerequisite list   \u003CBOARD_ID> \u003CCARD_ID> --json  # → [{board_id, card_id},...]\nmonotask card prerequisite remove \u003CBOARD_ID> \u003CCARD_ID> \u003CPREREQ_BOARD> \u003CPREREQ_CARD_ID> --json\n```\n\n### Attachments\n\n```bash\n# Attach image (stored as base64; returns img:\u003C6char-id> token for markdown)\nATT=$(monotask card attach-image \u003CBOARD_ID> \u003CCARD_ID> screenshot.png --json | jq -r .token)\nmonotask card set-description \u003CBOARD_ID> \u003CCARD_ID> \"See: ![$ATT]($ATT)\"\n\nmonotask card list-attachments \u003CBOARD_ID> \u003CCARD_ID> --json\nmonotask card save-attachment  \u003CBOARD_ID> \u003CCARD_ID> \u003CATTACHMENT_ID> --output .\u002Fout.png\n```\n\n### Checklists\n\n```bash\nCL=$(monotask checklist add      \u003CBOARD_ID> \u003CCARD_ID> \"Definition of Done\" --json | jq -r .id)\nITEM=$(monotask checklist item-add   \u003CBOARD_ID> \u003CCARD_ID> $CL \"Write tests\" --json | jq -r .id)\nmonotask checklist item-check   \u003CBOARD_ID> \u003CCARD_ID> $CL $ITEM\nmonotask checklist item-uncheck \u003CBOARD_ID> \u003CCARD_ID> $CL $ITEM\n```\n\n---\n\n## Space (Collaboration)\n\n```bash\n# Create \u002F list\nmonotask space create \"Team Name\"\nmonotask space list   # → \"\u003Cid> | \u003Cname> | \u003CN> members\"\nmonotask space info \u003CSPACE_ID>\n\n# Associate boards\nmonotask space boards add    \u003CSPACE_ID> \u003CBOARD_ID>\nmonotask space boards remove \u003CSPACE_ID> \u003CBOARD_ID>\nmonotask space boards list   \u003CSPACE_ID>\n\n# Invite \u002F join\nmonotask space invite export  \u003CSPACE_ID> invite.space  # preferred (includes space doc)\nmonotask space invite generate \u003CSPACE_ID>               # token only\nmonotask space invite revoke   \u003CSPACE_ID>\nmonotask space join invite.space                        # or raw token\n\n# Members\nmonotask space members list \u003CSPACE_ID>\nmonotask space members kick \u003CSPACE_ID> \u003CPUBKEY>\n```\n\n---\n\n## GitHub Integration\n\n```bash\nmonotask github connect ghp_yourtoken           # save token\nmonotask github repos                           # list accessible repos\nmonotask github link \u003CBOARD_ID> \u003CORG> \u003CREPO> --done-col \u003CCOL_ID>  # link repo\nmonotask github unlink \u003CBOARD_ID>\nmonotask github sync \u003CBOARD_ID>                 # bidirectional sync\n```\n\n---\n\n## Linear Integration\n\n```bash\nmonotask linear connect lin_api_yourkey         # save key\nmonotask linear status\nmonotask linear teams                           # list teams\nmonotask linear projects \u003CTEAM_ID>\nmonotask linear link \u003CBOARD_ID> --team \u003CTEAM_ID> --project \u003CPROJECT_ID> [--done-col \u003CCOL_ID>]\nmonotask linear unlink \u003CBOARD_ID>\nmonotask linear sync \u003CBOARD_ID>                 # bidirectional sync\n```\n\n---\n\n## P2P Sync Daemon\n\n```bash\nmonotask sync --detach --port 7272              # start background daemon\nmonotask sync --status\nmonotask sync --stop\nmonotask sync --peer \u002Fip4\u002F192.168.1.10\u002Ftcp\u002F7272 # connect to known peer\n```\n\n---\n\n## Profile\n\n```bash\nmonotask profile show\nmonotask profile set-name \"Alice\"\nmonotask profile set-avatar ~\u002Favatar.png\nmonotask profile import-ssh-key ~\u002F.ssh\u002Fid_ed25519  # changes pubkey — run before joining spaces\n```\n\n---\n\n## Common Agent Workflows\n\n### Set up an org task board\n```bash\nBOARD=$(monotask board create \"org-tasks\" --json | jq -r .id)\nTODO=$(monotask column create $BOARD \"Todo\"  --json | jq -r .id)\nDOING=$(monotask column create $BOARD \"Doing\" --json | jq -r .id)\nDONE=$(monotask column create $BOARD \"Done\"  --json | jq -r .id)\n```\n\n### Task assignment loop (boss agent pattern)\n```bash\n# List unclaimed Todo cards\nmonotask card list $BOARD --col $TODO --json | jq '[.[] | select(.labels | index(\"claimed\") | not)]'\n\n# Claim a card for a role agent\nmonotask card move $BOARD $CARD_ID $DOING\nmonotask card label add $BOARD $CARD_ID \"claimed\"\n\n# Complete a card\nmonotask card move $BOARD $CARD_ID $DONE\n\n# Find all cards for a specific role across all columns\nmonotask card list $BOARD --label \"role:writer\" --json\n```\n\n### Check prerequisites before claiming\n```bash\n# Get prereqs of a card\nPREREQS=$(monotask card prerequisite list $BOARD $CARD_ID --json)\n# Check all prereqs are in Done column\necho \"$PREREQS\" | jq -r '.[].card_id' | while read PREREQ_ID; do\n  COL=$(monotask card list $BOARD --json | jq -r --arg id \"$PREREQ_ID\" '.[] | select(.id==$id) | .col_id')\n  [ \"$COL\" != \"$DONE\" ] && echo \"BLOCKED: $PREREQ_ID not done\" && exit 1\ndone\n```\n\n### Find board by title\n```bash\nBOARD_ID=$(monotask board list --json | jq -r '.[] | select(.title==\"org-tasks\") | .id')\n```\n\n### Find column by title  (field is \"title\", NOT \"name\")\n```bash\nCOLS=$(monotask column list $BOARD --json)\nTODO=$(echo \"$COLS\" | jq -r '.[] | select(.title==\"Todo\") | .id')\nDONE=$(echo \"$COLS\" | jq -r '.[] | select(.title==\"Done\") | .id')\n```\n\n---\n\n## ID Formats\n\n| Type | Format |\n|---|---|\n| Board \u002F Column \u002F Card \u002F Space \u002F Comment \u002F Checklist | UUID v4 |\n| Attachment | 6-char hex (reference as `img:\u003Cid>` in markdown) |\n| Card number | `\u003Cprefix>-\u003Cseq>` — human display only; CLI requires full UUID |\n\n## HLC Timestamps\n\nAll `created_at` fields use Hybrid Logical Clock format `\u003Cwall_ms_hex>-\u003Clogical_hex>`.\n\n```js\nms = parseInt(hlc.split('-')[0], 16)     \u002F\u002F → Unix ms\nnew Date(ms).toISOString()               \u002F\u002F → ISO date\n```\n\n## Error Handling\n\nAll commands exit 0 on success, non-zero on error. Errors go to stderr (never mixed into `--json` stdout). Common causes: ID not found, invalid UUID, corrupted board file, invalid invite token.\n\n## Key Limitations\n\n- CLI operates on **local data only** — P2P sync requires the desktop app or `sync --detach`\n- `card create` uses placeholder prefix `\"aaaa\"` for card numbers (full identity wiring planned)\n- No `board delete` command — orphaned boards must be removed via SQLite directly\n- `card move` auto-detects current column — no need to specify source column\n","# Monotask CLI — Agent Reference (v1.1.4)\n\nMonotask is a P2P local-first task manager. All data is stored in SQLite (`~\u002F.local\u002Fshare\u002Fmonotask\u002Fmonotask.db`). Always use `--json` for machine-readable output.\n\n---\n\n## Global Flags\n\n```\n--data-dir \u003CPATH>   Override storage directory (must be consistent per instance)\n```\n\n---\n\n## Board\n\n```bash\n# Create — returns {id, title, deep_link}\nmonotask board create \"Sprint 42\" --json\n\n# List — returns [{id, title}] (search by title with jq .title)\nmonotask board list --json\n\n# Rename\nmonotask board rename \u003CBOARD_ID> \"New Title\" --json\n```\n\n---\n\n## Column\n\n```bash\n# Create — returns {id, board_id}\nmonotask column create \u003CBOARD_ID> \"Todo\" --json\n\n# List — returns [{id, title, card_ids:[]}]  ← field is \"title\", NOT \"name\"\nmonotask column list \u003CBOARD_ID> --json\n\n# Rename\nmonotask column rename \u003CBOARD_ID> \u003CCOL_ID> \"New Title\" --json\n\n# Delete (soft-deletes all cards in it)\nmonotask column delete \u003CBOARD_ID> \u003CCOL_ID> --json\n```\n\n---\n\n## Card\n\n### Listing\n\n```bash\n# All cards in board (flat, includes col_id + col_title per card)\nmonotask card list \u003CBOARD_ID> --json\n\n# Filter by column (server-side, fast)\nmonotask card list \u003CBOARD_ID> --col \u003CCOL_ID> --json\n\n# Filter by label (server-side, exact match)\nmonotask card list \u003CBOARD_ID> --label \"role:writer\" --json\n\n# Combine filters\nmonotask card list \u003CBOARD_ID> --col \u003CTODO_COL> --label \"role:reviewer\" --json\n```\n\nJSON schema per item from `card list`:\n```json\n{ \"id\":\"\u003Cuuid>\", \"title\":\"\u003Cstr>\", \"col_id\":\"\u003Cuuid>\", \"col_title\":\"\u003Cstr>\",\n  \"labels\":[], \"due_date\":null, \"impact\":null, \"effort\":null, \"direct_priority\":null }\n```\n\n### Create \u002F View \u002F Move\n\n```bash\n# Create — returns {id, title, board_id, number}\nCARD=$(monotask card create \u003CBOARD_ID> \u003CCOL_ID> \"Task title\" --json | jq -r .id)\n\n# View full card (includes parent + subtasks)\nmonotask card view \u003CBOARD_ID> \u003CCARD_ID> --json\n\n# Move to different column (auto-detects current column)\nmonotask card move \u003CBOARD_ID> \u003CCARD_ID> \u003CTO_COL_ID> --json\n\n# Copy to another column (same board)\nmonotask card copy \u003CBOARD_ID> \u003CCARD_ID> \u003CTARGET_COL_ID> --json\n\n# Rename\nmonotask card rename \u003CBOARD_ID> \u003CCARD_ID> \"New title\" --json\n\n# Soft-delete (hidden from all views)\nmonotask card delete \u003CBOARD_ID> \u003CCARD_ID> --json\n\n# Soft-archive (hidden from normal views)\nmonotask card archive \u003CBOARD_ID> \u003CCARD_ID> --json\n```\n\n### Metadata\n\n```bash\nmonotask card set-description \u003CBOARD_ID> \u003CCARD_ID> \"Markdown text\" --json\nmonotask card set-due-date    \u003CBOARD_ID> \u003CCARD_ID> \"2026-06-01\" --json  # \"none\" to clear\nmonotask card set-cover       \u003CBOARD_ID> \u003CCARD_ID> \"#e74c3c\" --json     # \"none\" to clear\n```\n\n### Priority \u002F Scoring\n\n```bash\n# ICE scoring: priority = floor((impact + 10 - effort) \u002F 2), range 0–10\nmonotask card set-impact  \u003CBOARD_ID> \u003CCARD_ID> 8 --json\nmonotask card set-effort  \u003CBOARD_ID> \u003CCARD_ID> 3 --json\n\n# Direct priority (bypasses impact\u002Feffort)\nmonotask card set-direct-priority \u003CBOARD_ID> \u003CCARD_ID> 9 --json\nmonotask card set-direct-priority \u003CBOARD_ID> \u003CCARD_ID> --clear --json\n\n# Clear all scoring\nmonotask card clear-priority \u003CBOARD_ID> \u003CCARD_ID> --json\n```\n\n### Labels\n\n```bash\nmonotask card label add    \u003CBOARD_ID> \u003CCARD_ID> \"role:writer\" --json\nmonotask card label remove \u003CBOARD_ID> \u003CCARD_ID> \"role:writer\" --json\nmonotask card label list   \u003CBOARD_ID> \u003CCARD_ID> --json  # → [\"str\",...]\n```\n\n**Convention for org agents:**\n- `role:\u003Crole_id>` — which role should handle this card\n- `claimed` — card has been picked up by an agent (in Doing column)\n\n### Assignee\n\n```bash\n# PUBKEY = 64-char hex (get via: monotask profile show)\nmonotask card set-assignee \u003CBOARD_ID> \u003CCARD_ID> \u003CPUBKEY> --json\nmonotask card set-assignee \u003CBOARD_ID> \u003CCARD_ID> none --json  # clear\n```\n\n### Comments\n\n```bash\nmonotask card comment add    \u003CBOARD_ID> \u003CCARD_ID> \"text\" --json\nmonotask card comment list   \u003CBOARD_ID> \u003CCARD_ID> --json\nmonotask card comment delete \u003CBOARD_ID> \u003CCARD_ID> \u003CCOMMENT_ID> --json\n```\n\n### Subtasks (parent\u002Fchild hierarchy)\n\n```bash\n# Create a subtask (new card linked as child of PARENT_CARD)\nmonotask card subtask add \u003CPARENT_BOARD> \u003CPARENT_CARD> \u003CCHILD_BOARD> \u003CCOL_ID> \"Subtask title\" --json\n# → returns {id, title, board_id}\n\n# List subtasks of a card\nmonotask card subtask list \u003CBOARD_ID> \u003CCARD_ID> --json\n# → [{board_id, card_id},...]\n\n# card view includes \"subtasks\" and \"parent\" fields automatically\n```\n\n### Prerequisites (dependency ordering)\n\n```bash\n# PREREQ_CARD must be Done before CARD can be claimed\nmonotask card prerequisite add    \u003CBOARD_ID> \u003CCARD_ID> \u003CPREREQ_BOARD> \u003CPREREQ_CARD_ID> --json\nmonotask card prerequisite list   \u003CBOARD_ID> \u003CCARD_ID> --json  # → [{board_id, card_id},...]\nmonotask card prerequisite remove \u003CBOARD_ID> \u003CCARD_ID> \u003CPREREQ_BOARD> \u003CPREREQ_CARD_ID> --json\n```\n\n### Attachments\n\n```bash\n# Attach image (stored as base64; returns img:\u003C6char-id> token for markdown)\nATT=$(monotask card attach-image \u003CBOARD_ID> \u003CCARD_ID> screenshot.png --json | jq -r .token)\nmonotask card set-description \u003CBOARD_ID> \u003CCARD_ID> \"See: ![$ATT]($ATT)\"\n\nmonotask card list-attachments \u003CBOARD_ID> \u003CCARD_ID> --json\nmonotask card save-attachment  \u003CBOARD_ID> \u003CCARD_ID> \u003CATTACHMENT_ID> --output .\u002Fout.png\n```\n\n### Checklists\n\n```bash\nCL=$(monotask checklist add      \u003CBOARD_ID> \u003CCARD_ID> \"Definition of Done\" --json | jq -r .id)\nITEM=$(monotask checklist item-add   \u003CBOARD_ID> \u003CCARD_ID> $CL \"Write tests\" --json | jq -r .id)\nmonotask checklist item-check   \u003CBOARD_ID> \u003CCARD_ID> $CL $ITEM\nmonotask checklist item-uncheck \u003CBOARD_ID> \u003CCARD_ID> $CL $ITEM\n```\n\n---\n\n## Space (Collaboration)\n\n```bash\n# Create \u002F list\nmonotask space create \"Team Name\"\nmonotask space list   # → \"\u003Cid> | \u003Cname> | \u003CN> members\"\nmonotask space info \u003CSPACE_ID>\n\n# Associate boards\nmonotask space boards add    \u003CSPACE_ID> \u003CBOARD_ID>\nmonotask space boards remove \u003CSPACE_ID> \u003CBOARD_ID>\nmonotask space boards list   \u003CSPACE_ID>\n\n# Invite \u002F join\nmonotask space invite export  \u003CSPACE_ID> invite.space  # preferred (includes space doc)\nmonotask space invite generate \u003CSPACE_ID>               # token only\nmonotask space invite revoke   \u003CSPACE_ID>\nmonotask space join invite.space                        # or raw token\n\n# Members\nmonotask space members list \u003CSPACE_ID>\nmonotask space members kick \u003CSPACE_ID> \u003CPUBKEY>\n```\n\n---\n\n## GitHub Integration\n\n```bash\nmonotask github connect ghp_yourtoken           # save token\nmonotask github repos                           # list accessible repos\nmonotask github link \u003CBOARD_ID> \u003CORG> \u003CREPO> --done-col \u003CCOL_ID>  # link repo\nmonotask github unlink \u003CBOARD_ID>\nmonotask github sync \u003CBOARD_ID>                 # bidirectional sync\n```\n\n---\n\n## Linear Integration\n\n```bash\nmonotask linear connect lin_api_yourkey         # save key\nmonotask linear status\nmonotask linear teams                           # list teams\nmonotask linear projects \u003CTEAM_ID>\nmonotask linear link \u003CBOARD_ID> --team \u003CTEAM_ID> --project \u003CPROJECT_ID> [--done-col \u003CCOL_ID>]\nmonotask linear unlink \u003CBOARD_ID>\nmonotask linear sync \u003CBOARD_ID>                 # bidirectional sync\n```\n\n---\n\n## P2P Sync Daemon\n\n```bash\nmonotask sync --detach --port 7272              # start background daemon\nmonotask sync --status\nmonotask sync --stop\nmonotask sync --peer \u002Fip4\u002F192.168.1.10\u002Ftcp\u002F7272 # connect to known peer\n```\n\n---\n\n## Profile\n\n```bash\nmonotask profile show\nmonotask profile set-name \"Alice\"\nmonotask profile set-avatar ~\u002Favatar.png\nmonotask profile import-ssh-key ~\u002F.ssh\u002Fid_ed25519  # changes pubkey — run before joining spaces\n```\n\n---\n\n## Common Agent Workflows\n\n### Set up an org task board\n```bash\nBOARD=$(monotask board create \"org-tasks\" --json | jq -r .id)\nTODO=$(monotask column create $BOARD \"Todo\"  --json | jq -r .id)\nDOING=$(monotask column create $BOARD \"Doing\" --json | jq -r .id)\nDONE=$(monotask column create $BOARD \"Done\"  --json | jq -r .id)\n```\n\n### Task assignment loop (boss agent pattern)\n```bash\n# List unclaimed Todo cards\nmonotask card list $BOARD --col $TODO --json | jq '[.[] | select(.labels | index(\"claimed\") | not)]'\n\n# Claim a card for a role agent\nmonotask card move $BOARD $CARD_ID $DOING\nmonotask card label add $BOARD $CARD_ID \"claimed\"\n\n# Complete a card\nmonotask card move $BOARD $CARD_ID $DONE\n\n# Find all cards for a specific role across all columns\nmonotask card list $BOARD --label \"role:writer\" --json\n```\n\n### Check prerequisites before claiming\n```bash\n# Get prereqs of a card\nPREREQS=$(monotask card prerequisite list $BOARD $CARD_ID --json)\n# Check all prereqs are in Done column\necho \"$PREREQS\" | jq -r '.[].card_id' | while read PREREQ_ID; do\n  COL=$(monotask card list $BOARD --json | jq -r --arg id \"$PREREQ_ID\" '.[] | select(.id==$id) | .col_id')\n  [ \"$COL\" != \"$DONE\" ] && echo \"BLOCKED: $PREREQ_ID not done\" && exit 1\ndone\n```\n\n### Find board by title\n```bash\nBOARD_ID=$(monotask board list --json | jq -r '.[] | select(.title==\"org-tasks\") | .id')\n```\n\n### Find column by title  (field is \"title\", NOT \"name\")\n```bash\nCOLS=$(monotask column list $BOARD --json)\nTODO=$(echo \"$COLS\" | jq -r '.[] | select(.title==\"Todo\") | .id')\nDONE=$(echo \"$COLS\" | jq -r '.[] | select(.title==\"Done\") | .id')\n```\n\n---\n\n## ID Formats\n\n| Type | Format |\n|---|---|\n| Board \u002F Column \u002F Card \u002F Space \u002F Comment \u002F Checklist | UUID v4 |\n| Attachment | 6-char hex (reference as `img:\u003Cid>` in markdown) |\n| Card number | `\u003Cprefix>-\u003Cseq>` — human display only; CLI requires full UUID |\n\n## HLC Timestamps\n\nAll `created_at` fields use Hybrid Logical Clock format `\u003Cwall_ms_hex>-\u003Clogical_hex>`.\n\n```js\nms = parseInt(hlc.split('-')[0], 16)     \u002F\u002F → Unix ms\nnew Date(ms).toISOString()               \u002F\u002F → ISO date\n```\n\n## Error Handling\n\nAll commands exit 0 on success, non-zero on error. Errors go to stderr (never mixed into `--json` stdout). Common causes: ID not found, invalid UUID, corrupted board file, invalid invite token.\n\n## Key Limitations\n\n- CLI operates on **local data only** — P2P sync requires the desktop app or `sync --detach`\n- `card create` uses placeholder prefix `\"aaaa\"` for card numbers (full identity wiring planned)\n- No `board delete` command — orphaned boards must be removed via SQLite directly\n- `card move` auto-detects current column — no need to specify source column\n",{"name":5,"type":44,"description":7},"reference-skill","main","f7cd4595d0f8959822163e14f9787117765c931a",".claude\u002Fskills\u002Fmastermind-monotask",2,"https:\u002F\u002Fgithub.com\u002Fmonoes\u002Fmonomind","https:\u002F\u002Fmonoes.github.io\u002Fmonomind\u002F","https:\u002F\u002Fgithub.com\u002Fmonoes","https:\u002F\u002Fmonoes.me","2026-11-10 01:53:48",{"source":8,"skillName":5,"commands":55,"prompt":65,"zipAvailable":66},[56,59,62],{"tool":57,"command":58},"npx","npx skills add monoes\u002Fmonomind --skill mastermind-monotask",{"tool":60,"command":61},"bunx","bunx skills add monoes\u002Fmonomind --skill mastermind-monotask",{"tool":63,"command":64},"pnpm","pnpm dlx skills add monoes\u002Fmonomind --skill mastermind-monotask","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fmonoes\u002Fmonomind\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fmastermind-monotask\u002FSKILL.md",true,[],[69,97,132,159,182,206],{"skillNo":70,"name":71,"nameZh":6,"description":72,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":73,"categories":74,"keywords":75,"publishedAt":96},"01M71PB3SHWKMNJM6MD65VX8D6","zk-steward","Org role guidance for a ZK steward: engineer zero-knowledge proof systems with circuit design, SNARK vs STARK choice and security review. This is zero-knowledge cryptography, not Zettelkasten note-taking.","https:\u002F\u002Fgithub.com\u002Fmonoes\u002Fmonomind\u002Fblob\u002Fmain\u002Fpackages\u002F@monomind\u002Fcli\u002Forg-skills\u002Fzk-steward\u002FSKILL.md",[],[76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],"zk","zk steward","steward","zero-knowledge","engineer","choice","design","knowledge","impact","query","snark","review","monomind","security review","stark","zettelkasten","cryptography","security","org","blockchain","2026-11-10 13:02:02",{"skillNo":98,"name":99,"nameZh":6,"description":100,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":101,"licenseFileUrl":102,"sourceHtmlUrl":103,"categories":104,"keywords":113,"publishedAt":96},"01M71PB18SDG28WBKPKJNB814K","writing-plans","Use when you have a spec or requirements for a multi-step coding task and must write an implementation plan before touching code. Produces bite-sized TDD tasks with exact file paths, code and commands for an engineer with zero context.","MIT","https:\u002F\u002Fgithub.com\u002Fmonoes\u002Fmonomind\u002Fblob\u002Fmain\u002Fpackages\u002F@monomind\u002Fcli\u002Forg-skills\u002Fwriting-plans\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fmonoes\u002Fmonomind\u002Fblob\u002Fmain\u002Fpackages\u002F@monomind\u002Fcli\u002Forg-skills\u002Fwriting-plans\u002FSKILL.md",[105,108],{"categoryNo":106,"categoryName":107,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":109,"categoryName":110,"taxonomyType":111,"taxonomyTypeDesc":112},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[114,115,116,80,117,118,119,120,85,121,122,123,124,125,126,127,128,129,130,131],"writing","writing plans","plans","superpowers","implementation plan","when","you","code","tasks","plan","product","write","commands","paths","suggest","coding","context","ZeRO",{"skillNo":133,"name":134,"nameZh":6,"description":135,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":136,"sourceHtmlUrl":137,"categories":138,"keywords":142,"publishedAt":96},"01M71PAXFM488X9ARXK0T04TF5","write-spec","Write a feature spec or PRD from a problem statement or feature idea. Use when turning a vague idea or user request into a structured document, scoping a feature with goals and non-goals, defining success metrics and acceptance criteria, or breaking a big ask into a phased spec.","https:\u002F\u002Fgithub.com\u002Fmonoes\u002Fmonomind\u002Fblob\u002Fmain\u002Fpackages\u002F@monomind\u002Fcli\u002Forg-skills\u002Fwrite-spec\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fmonoes\u002Fmonomind\u002Fblob\u002Fmain\u002Fpackages\u002F@monomind\u002Fcli\u002Forg-skills\u002Fwrite-spec\u002FSKILL.md",[139],{"categoryNo":140,"categoryName":141,"taxonomyType":111,"taxonomyTypeDesc":112},"01JBSEEDCAT000000000000031","产品经理",[125,143,144,145,146,83,147,119,148,149,150,124,151,152,153,154,155,156,157,158],"write spec","spec","user request","problem","acceptance","ask","vague","work","request","scoping","idea","metrics","feature","problem statement","use","document",{"skillNo":160,"name":161,"nameZh":6,"description":162,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":163,"sourceHtmlUrl":164,"categories":165,"keywords":169,"publishedAt":96},"01M71PASSZY800C0RPEARBS918","write-query","Write optimized SQL for your dialect with best practices. Use when translating a natural-language data need into SQL, building a multi-CTE query with joins and aggregations, optimizing a query against a large partitioned table, or getting dialect-specific syntax for Snowflake, BigQuery, Postgres, etc.","https:\u002F\u002Fgithub.com\u002Fmonoes\u002Fmonomind\u002Fblob\u002Fmain\u002Fpackages\u002F@monomind\u002Fcli\u002Forg-skills\u002Fwrite-query\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fmonoes\u002Fmonomind\u002Fblob\u002Fmain\u002Fpackages\u002F@monomind\u002Fcli\u002Forg-skills\u002Fwrite-query\u002FSKILL.md",[166],{"categoryNo":167,"categoryName":168,"taxonomyType":111,"taxonomyTypeDesc":112},"01JBSEEDCAT000000000000033","数据分析师",[85,125,170,171,34,172,83,157,119,173,174,175,176,150,36,177,178,179,180,181],"write query","postgres","snowflake","best practices","natural-language","with","multi","sql","https","syntax","plugins","data",{"skillNo":183,"name":184,"nameZh":6,"description":185,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":186,"categories":187,"keywords":192,"publishedAt":96},"01M71PAPTX0T3PF6ETFVR96SJJ","workflow-automation","Org role guidance for workflow automation: build and maintain CI\u002FCD definitions in GitHub Actions or equivalent: triggers, jobs, matrices, caching. Covers path filters, dependency caching, parallel jobs, timeouts and fail-fast ordering.","https:\u002F\u002Fgithub.com\u002Fmonoes\u002Fmonomind\u002Fblob\u002Fmain\u002Fpackages\u002F@monomind\u002Fcli\u002Forg-skills\u002Fworkflow-automation\u002FSKILL.md",[188,191],{"categoryNo":189,"categoryName":190,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000011","运维与部署",{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[193,194,195,196,34,197,198,199,200,84,201,25,202,85,88,36,203,204,205,178],"Workflow Automation","automation","workflow","parallel","actions","ci","triggers","github actions","maintain","caching","build","dependency","devops",{"skillNo":207,"name":208,"nameZh":6,"description":209,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":210,"categories":211,"keywords":213,"publishedAt":96},"01M71PAM19Z1XTV9NPCFSE2MY8","workflow-architect","Org role guidance for a workflow architect: map full workflow trees for systems, user journeys and agents, covering every branch and failure. Covers discovering workflows from code, handoff contracts, timeouts, recovery paths and observable state.","https:\u002F\u002Fgithub.com\u002Fmonoes\u002Fmonomind\u002Fblob\u002Fmain\u002Fpackages\u002F@monomind\u002Fcli\u002Forg-skills\u002Fworkflow-architect\u002FSKILL.md",[212],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[195,214,215,216,217,218,219,34,220,221,121,222,223,224,88,36,225,226,178,227],"workflow architect","architect","trees","user journeys","branch","planning","map","workflows","architecture","state","leadership","recovery","operations","systems"]