productivity
Plane CLI for Coding Agents
Use the Plane CLI for coding agents with headless JSON commands, schema discovery, credentials, and permission controls.
33 functions 19 read 14 write API key auth
Plane CLI for Coding Agents
Let coding agents discover schemas and execute integration functions through CLI commands or MCP.
Use this pattern when another coding agent needs exact commands and schema discovery. The Plane CLI uses the same integration registry as the TUI, Lua runtime, and MCP gateway, but returns predictable command output for automation.
Command Shape
# Plane CLI for Coding Agents
kosmokrator integrations:configure plane --set api_key="$PLANE_API_KEY" --enable --read allow --write ask --json
kosmo integrations:call plane.plane_list_workspaces '{}' --json Discovery Before Execution
Agents and scripts can inspect Plane docs and schemas before choosing a function.
kosmo integrations:docs plane --json
kosmo integrations:docs plane.plane_list_workspaces --json
kosmo integrations:schema plane.plane_list_workspaces --json
kosmo integrations:search "Plane" --json
kosmo integrations:list --json Useful Plane CLI Functions
| Function | Type | Parameters | Description |
|---|---|---|---|
plane.plane_list_workspaces | Read | none | List all Plane.so workspaces the authenticated user belongs to. Returns workspace slug, name, and owner info. Use the slug to reference workspaces in other tools. |
plane.plane_list_projects | Read | workspace_slug | List all projects in a Plane.so workspace. Returns project ID, name, identifier, description, and status. Use the project ID to reference projects in other tools. |
plane.plane_get_project | Read | workspace_slug, project_id | Get detailed information about a Plane.so project, including name, identifier, description, status, dates, and settings. |
plane.plane_create_project | Write | workspace_slug, name, identifier, description, cover_image, project_lead, default_assignee | Create a new project in a Plane.so workspace. Requires a name and identifier (short code, e.g., "PROJ"). Optionally set description, cover image, project lead, and default assignee. |
plane.plane_archive_project | Write | workspace_slug, project_id | Archive a Plane.so project. Archived projects are hidden from active views but retain all data. |
plane.plane_list_issues | Read | workspace_slug, project_id, state, priority, assignee, labels, search, parent, cycle, module | List issues in a Plane.so project. Supports filtering by state, priority, assignee, labels, and more. Returns issue ID, name, sequence ID, state, priority, assignees, labels, start/target dates, and created date. |
plane.plane_search_issues | Read | workspace_slug, search, project, state, priority, assignee | Search issues across all projects in a Plane.so workspace. Provide a search query to find issues by name or description. Optionally filter by project, state, priority, or assignee. |
plane.plane_get_issue | Read | workspace_slug, project_id, issue_id | Get detailed information about a single Plane.so issue, including description, state, priority, assignees, labels, dates, and relations. The issue_id may be a UUID or an issue reference like KOS-55 on Plane deployments that support it. |
plane.plane_create_issue | Write | workspace_slug, project_id, name, description_html, state, priority, assignees, labels, start_date, target_date, parent | Create a new issue in a Plane.so project. Requires a title. Optionally set description (HTML), state, priority, assignees, labels, start/target dates, and parent issue. |
plane.plane_update_issue | Write | workspace_slug, project_id, issue_id, name, description_html, state, priority, assignees, labels, start_date, target_date, parent | Update an existing Plane.so issue. Provide only the fields you want to change — name, description, state, priority, assignees, labels, dates, or parent. |
plane.plane_delete_issue | Write | workspace_slug, project_id, issue_id | Delete an issue from a Plane.so project. This action is permanent and cannot be undone. |
plane.plane_create_comment | Write | workspace_slug, project_id, issue_id, comment_html | Add a comment to a Plane.so issue. The comment body should be provided in HTML format. |
plane.plane_list_comments | Read | workspace_slug, project_id, issue_id | List all comments on a Plane.so issue. Returns comment ID, content, author, and timestamps. |
plane.plane_list_cycles | Read | workspace_slug, project_id | List all cycles in a Plane.so project. Returns cycle ID, name, start/end dates, and progress info. |
plane.plane_get_cycle | Read | workspace_slug, project_id, cycle_id | Get detailed information about a Plane.so cycle, including name, description, start/end dates, and status. |
plane.plane_create_cycle | Write | workspace_slug, project_id, name, description, start_date, end_date | Create a new cycle (sprint) in a Plane.so project. Optionally set name, description, and date range. |
plane.plane_add_issue_to_cycle | Write | workspace_slug, project_id, cycle_id, issue_id | Add an existing issue to a Plane.so cycle. The issue will be tracked within the cycle's sprint/iteration. |
plane.plane_list_modules | Read | workspace_slug, project_id | List all modules in a Plane.so project. Modules group related issues together (e.g., "Auth System", "Payment Integration"). Returns module ID, name, description, status, and dates. |
plane.plane_get_module | Read | workspace_slug, project_id, module_id | Get detailed information about a Plane.so module, including name, description, status, dates, and team. |
plane.plane_create_module | Write | workspace_slug, project_id, name, description, status, start_date, target_date | Create a new module in a Plane.so project. Modules group related issues together (e.g., "Auth System", "Payment Integration"). Optionally set description, status, and date range. |
plane.plane_add_issue_to_module | Write | workspace_slug, project_id, module_id, issue_id | Add an existing issue to a Plane.so module. Modules group related issues for feature-based organization. |
plane.plane_list_states | Read | workspace_slug, project_id | List all workflow states in a Plane.so project. Returns state UUID, name, group (backlog/unstarted/started/completed/cancelled), and color. Use state UUIDs when creating or updating issues. |
plane.plane_create_state | Write | workspace_slug, project_id, name, group, color, description, slug | Create a new workflow state in a Plane.so project. States represent issue statuses (e.g., "In Review", "Ready for QA"). Requires a name and group (backlog, unstarted, started, completed, cancelled). Optionally set color and description. |
plane.plane_list_labels | Read | workspace_slug, project_id | List all labels in a Plane.so project. Returns label UUID, name, color, and parent label. Use label UUIDs when creating or updating issues. |
plane.plane_create_label | Write | workspace_slug, project_id, name, color, description, parent | Create a new label in a Plane.so project. Labels categorize issues (e.g., "bug", "feature", "urgent"). Requires a name. Optionally set color (hex) and description. Supports hierarchical labels via parent UUID. |
plane.plane_list_pages | Read | workspace_slug, project_id | List all pages in a Plane.so project. Pages are Notion-like documents for notes, specs, and documentation. Returns page ID, name, description, and ownership info. |
plane.plane_get_page | Read | workspace_slug, project_id, page_id | Get detailed content of a Plane.so page, including the full HTML description. |
plane.plane_create_page | Write | workspace_slug, project_id, name, description_html | Create a new page in a Plane.so project. Pages are Notion-like documents for notes, specs, and documentation. Requires a name. Optionally set HTML content. |
plane.plane_list_issue_activities | Read | workspace_slug, project_id, issue_id | List activity/audit events on a Plane.so issue. Returns changes made to the issue (state changes, assignments, updates, comments) with who made them and when. |
plane.plane_create_issue_link | Write | workspace_slug, project_id, issue_id, title, url | Attach an external link to a Plane.so issue. Provide a title and a valid URL. |
plane.plane_list_issue_relations | Read | workspace_slug, project_id, issue_id | List all relations on a Plane.so issue. Relations describe how issues connect: blocking, blocked_by, duplicate, relates_to, start_before, start_after, finish_before, finish_after. |
plane.plane_list_members | Read | workspace_slug, project_id | List members of a Plane.so workspace or project. If project_id is provided, returns project members only; otherwise returns all workspace members. Returns member ID, display name, email, and role. |
plane.plane_get_current_user | Read | none | Get the currently authenticated Plane.so user. Returns user ID, display name, email, and avatar. Useful for verifying API credentials and identifying the current user context. On some self-hosted Plane deployments where the user endpoint is unavailable, this falls back to verifying workspace-scoped access. |
Automation Notes
- Use
--jsonfor machine-readable output. - Keep credentials out of argv by using environment variables or stored KosmoKrator configuration.
- Configure read/write policy before unattended runs; use
--forceonly for trusted automation. - Use the MCP gateway instead when the agent needs dynamic tool discovery inside a conversation.