chore: keep widget sources only
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
---
|
||||
name: shd-task-workflow
|
||||
description: Use when the user asks to find, inspect, create, update, reschedule, archive, or delete SHD tasks or task-project data.
|
||||
---
|
||||
|
||||
# SHD task workflow
|
||||
|
||||
See `references/task-contract.md` for identifier resolution, conflict handling
|
||||
and mutation readback requirements.
|
||||
|
||||
## Read and resolve
|
||||
|
||||
- Use `shd_list_task_projects` when the request concerns a task project or its
|
||||
status.
|
||||
- Use `shd_list_tasks` with `project_code`, `project_id`, `q`, `archived`,
|
||||
`limit` or `offset` to find tasks.
|
||||
- Use `shd_get_task` for one resolved task and
|
||||
`shd_get_task_project_meta` for statuses, tags, sprints, views and custom
|
||||
fields.
|
||||
- Read comments or attachments only when they are relevant to the request.
|
||||
- After `shd_list_tasks` returns, always pass normalized task records to
|
||||
`shd_render_tasks_widget` before the final response when the host supports
|
||||
MCP Apps UI. Use the structured task list or plain text only when the render
|
||||
tool is unavailable or returns an error.
|
||||
|
||||
Do not create a task from an ambiguous project name or duplicate a task that
|
||||
already matches the request.
|
||||
|
||||
## Mutations
|
||||
|
||||
Only mutate when the user explicitly asks for the exact operation:
|
||||
|
||||
- create with `shd_create_task`;
|
||||
- update fields with `shd_update_task`;
|
||||
- change status with `shd_update_task_status`;
|
||||
- archive with `shd_archive_task`;
|
||||
- delete with `shd_delete_task` and the server's explicit confirmation contract.
|
||||
|
||||
Before updating, pass the latest `updated_at` when the tool accepts it. Use an
|
||||
idempotency key when the tool schema accepts one. If the server reports a
|
||||
conflict, stop and show the current state; do not overwrite it by guessing.
|
||||
|
||||
Report the task ID, changed fields, server validation, conflict state and final
|
||||
status. Never treat a suggested change as authorization to execute it.
|
||||
@@ -0,0 +1,5 @@
|
||||
interface:
|
||||
display_name: SHD task workflow
|
||||
short_description: Read and safely update tasks
|
||||
policy:
|
||||
allow_implicit_invocation: false
|
||||
@@ -0,0 +1,20 @@
|
||||
# Task workflow contract
|
||||
|
||||
Resolve task context before acting:
|
||||
|
||||
- use a canonical task-project identifier when the server returns one;
|
||||
- search by explicit project, task ID or bounded query rather than guessing
|
||||
from a display name;
|
||||
- read task-project metadata before changing status, sprint, tags or custom
|
||||
fields;
|
||||
- retain `updated_at`, version or equivalent conflict data from the latest
|
||||
read whenever the mutation schema supports it.
|
||||
|
||||
For a write, report the exact operation, task ID, changed fields, idempotency
|
||||
key when used, server validation, conflict result and readback state. A
|
||||
conflict or ambiguous match is a stop condition: show the current state and
|
||||
ask for a narrower target instead of overwriting it.
|
||||
|
||||
Delete and archive operations require their server-side confirmation contract.
|
||||
Never treat a proposed task change or a natural-language suggestion as write
|
||||
authorization.
|
||||
Reference in New Issue
Block a user