src.integrations.providers.planka module
Planka implementation using KanbanClient.
Direct integration without the mcp_function_caller abstraction.
-
class src.integrations.providers.planka.Planka[source]
Bases: KanbanInterface
Planka kanban board implementation using direct MCP client.
-
__init__(config)[source]
Initialize Planka connection.
- Parameters:
config (Dict[str, Any])
-
property board_id: str | None
Get board ID from the client.
-
property project_id: str | None
Get project ID from the client.
-
async connect()[source]
Connect to Planka via MCP.
- Return type:
bool
-
async disconnect()[source]
Disconnect from Planka.
- Return type:
None
-
async get_available_tasks()[source]
Get unassigned tasks from backlog.
- Return type:
List[Task]
-
async get_all_tasks()[source]
Get all tasks from the board regardless of status or assignment.
- Return type:
List[Task]
-
async get_task_by_id(task_id)[source]
Get specific task by ID.
- Return type:
Optional[Task]
- Parameters:
task_id (str)
-
async create_task(task_data)[source]
Create new task in Planka.
- Return type:
Task
- Parameters:
task_data (Dict[str, Any])
-
async update_task(task_id, updates)[source]
Update task status or properties.
- Return type:
Optional[Task]
- Parameters:
-
Add comment to task.
- Return type:
bool
- Parameters:
-
-
async get_agent_tasks(agent_id)[source]
Get all tasks assigned to a specific agent.
- Return type:
List[Task]
- Parameters:
agent_id (str)
-
async get_board_summary()[source]
Get overall board statistics and summary.
- Return type:
Dict[str, Any]
-
async assign_task(task_id, assignee_id)[source]
Assign a task to a worker.
- Return type:
bool
- Parameters:
task_id (str)
assignee_id (str)
-
async move_task_to_column(task_id, column_name)[source]
Move task to a specific column/status.
- Return type:
bool
- Parameters:
task_id (str)
column_name (str)
-
async get_project_metrics()[source]
Get project metrics and statistics.
- Return type:
Dict[str, Any]
-
async report_blocker(task_id, blocker_description, severity='medium')[source]
Report a blocker on a task.
- Return type:
bool
- Parameters:
-
-
async update_task_progress(task_id, progress_data)[source]
Update task progress.
- Return type:
bool
- Parameters:
-
-
async upload_attachment(task_id, filename, content, content_type=None)[source]
Upload an attachment to a task.
Note: Attachment functionality not yet implemented for Planka integration.
This is a placeholder to satisfy the abstract interface.
- Parameters:
-
- Return type:
Dict[str, Any]
- Returns:
Dict with success=False indicating not implemented.
-
async get_attachments(task_id)[source]
Get all attachments for a task.
Note: Attachment functionality not yet implemented for Planka integration.
This is a placeholder to satisfy the abstract interface.
- Parameters:
task_id (str)
- Return type:
Dict[str, Any]
- Returns:
Dict with empty attachments list.
-
async download_attachment(attachment_id, filename, task_id=None)[source]
Download an attachment.
Note: Attachment functionality not yet implemented for Planka integration.
This is a placeholder to satisfy the abstract interface.
- Parameters:
-
- Return type:
Dict[str, Any]
- Returns:
Dict with success=False indicating not implemented.