@konductro/cursor-plugin
v1.3.0
Published
Cursor IDE plugin for the Konductro platform: technical analysis, delivery tasks, repository profiling, and prototype workflows.
Maintainers
Readme
@konductro/cursor-plugin
Cursor IDE plugin for the Konductro delivery platform. Enables technical analysis, story decomposition, ticket management, prototype delivery, and ticket-to-PR workflows directly from Cursor.
Prerequisites
- Node.js 18+
- Cursor IDE (any plan — MCP works on free tier)
- Konductro CLI token (generated in Konductro → Settings → CLI Access)
Install
npm install -g @konductro/cursor-pluginSetup
konductro-cursor-setup --url https://platform.konductro.com --token YOUR_CLI_TOKENThis will:
- Configure the Konductro MCP server in
~/.cursor/mcp.json - Install Cursor Rules to
~/.cursor/rules/
After setup, reload Cursor (Cmd+Shift+P → "Developer: Reload Window").
Options
| Flag | Description | Default |
|------|-------------|---------|
| --url | Konductro platform URL | Required |
| --token | Your personal CLI token | Required |
| --project | Install to .cursor/ in current directory instead of global | false |
| --env-refs | Use ${env:...} references instead of inline values (for git-committed configs) | false |
Rules (Workflows)
Rules are guided workflows that Cursor invokes based on context:
| Rule | Description |
|------|-------------|
| start-ticket | Pick up a Konductro ticket, create branch, and start work |
| decompose | Decompose a story into technical implementation tasks |
| technical-analysis | Perform a technical analysis for a project phase |
| profile-repository | Scan repository and submit its tech profile |
| prototype | Build a UX prototype and publish to S3 |
| find-prototype | Find and download approved prototypes |
| bug-enrich | Enrich a bug report with codebase context |
MCP Tools
Tools are called automatically by Cursor's agent based on your requests:
| Tool | What it does |
|------|-------------|
| list_my_tickets | List all tickets assigned to you |
| get_ticket_context | Load full context for a ticket |
| start_work | Create branch and start a ticket |
| create_pr | Create a pull request for a ticket |
| create_work_item | Create a story, task or bug in the project this repo belongs to |
| update_work_item | Change the title, description or acceptance criteria of a work item you own |
| delete_work_item | Delete a task or bug that has not been started |
| list_tech_analysis_tasks | List tech analysis assignments |
| get_task_context | Load tech analysis context, plus the requester's message when a refresh was asked for |
| submit_tech_analysis | Submit analysis document |
| list_decomposition_tasks | List story decomposition assignments |
| get_decomposition_context | Load story context |
| submit_decomposition_task | Submit a decomposed task |
| complete_decomposition | Mark decomposition complete |
| list_prototype_tasks | List prototype assignments |
| get_prototype_context | Load prototype context |
| start_prototype_work | Mark prototype in progress |
| request_upload_credentials | Get S3 upload credentials |
| submit_prototype | Submit completed prototype |
| profile_repository | Submit repository profile |
| find_project_prototypes | Find UX prototypes for a project |
Work items
The project is resolved from the repository's git remote, so you are never asked for a project identifier.
Everything created lands in Draft and still needs an SDM's approval before it can be worked on.
update_work_item can change three fields and no others. Status, sprint, assignee and
everything else are deliberately not on the schema — change those in Konductro. Sending
acceptanceCriteria replaces the whole list rather than appending to it. The changed
list it reports back is the fields that were written, not the ones that turned out to
differ, so re-sending a value unchanged still shows up in it.
A task is created in the repository you are standing in. Its parent story is the only
thing you need to name. Set repositoryId yourself only for a task that will be built in a
different repository on the same project.
Only a task may have a parent. A story or a bug sent with a parentKey is refused and
nothing is created, rather than being filed top-level as though it had worked. A bug is
always standalone here — Konductro parents one to a story only when QA files it against a
failed test criterion — so name the story in the description instead. A story is top-level
by definition: the hierarchy is story → task, and work that belongs under a story is a task.
create_work_item returns the new item's id. Use it for the follow-up call. Ticket
keys are prefix plus number and the prefix is not returned, so a guessed key resolves to a
different project's item of the same number instead of failing.
Who can create and change stories
Each project has a story access setting, which an SDM controls under Settings → General:
| Setting | What a developer can do | |---|---| | Planning roles only | Cannot create or change stories. Filing bugs and editing tasks are unaffected. | | Developers can, with review | Changes apply straight away, then wait for an SDM to approve or reject. | | Developers can, no review | Creates and changes apply with nothing held for approval. |
A new project starts on planning roles only.
Under with review, a change to a story is applied and then held: the story will not move to Ready for QA until an SDM resolves it, even once every task is done. If it is rejected, the previous values are restored and you are notified.
What a refusal means
These are answers, not errors — none of them is worth retrying as-is.
| You will see | What to do |
|---|---|
| The project's story access is set to planning roles only | A project setting. Ask an SDM to make the change, or to open story access for developers. |
| You can only change work items assigned to you, that you are the developer on, or that you created | Ask whoever owns it, or ask an SDM. |
| Stories cannot be deleted from the CLI | Deleting a story removes its tasks with it. Archive it in Konductro instead. |
| QA filed this bug against a failed test criterion | It is QA's record of a failure, not yours to remove. |
| Only a task can be created under a parent | Nothing was created. For a bug, re-run without parentKey and name the story in the description. For a story, you probably wanted kind: "task". |
| Work has already started on this item | It has a branch, or has moved past sprint planning. Only items still in draft, approved or in_sprint can be deleted. |
| Your seat is a viewer seat | Read-only across the whole platform, not a project setting. Ask an admin for a contributor seat. |
| Your role on this project is read-only | Ask an SDM for a writing role on the project. |
| You are not a member of this project | Ask an SDM to add you to the project team. |
| Konductro is not configured | A setup problem rather than a permissions one — re-run konductro-cursor-setup with your URL and token. |
Updating Your Token
Run the setup command again with the new token:
konductro-cursor-setup --url https://platform.konductro.com --token NEW_TOKENTroubleshooting
- MCP server not connecting: Reload Cursor after config changes (Cmd+Shift+P → "Developer: Reload Window")
- Tools not showing: Check Cursor Settings → MCP tab for connection status and errors
- Rules not activating: Ensure rules are in
~/.cursor/rules/or.cursor/rules/and mention Konductro in your prompt
