manage-schemas
$
npx mdskill add jpicklyk/task-orchestrator/manage-schemasManage note templates and validate workflow configurations.
- Handles schema creation, editing, deletion, and validation requests.
- Operates on .taskorchestrator/config.yaml files directly.
- Uses signal words to classify user intent and actions.
- Returns updated configuration or error messages to the user.
SKILL.md
.github/skills/manage-schemasView on GitHub ↗
--- name: manage-schemas description: "Create, view, edit, delete, and validate note schemas for the MCP Task Orchestrator in .taskorchestrator/config.yaml — the templates that define which notes agents must fill at each workflow phase. Use when user says \"create schema\", \"show schemas\", \"edit schema\", \"delete schema\", \"validate config\", \"what schemas exist\", \"add a note to schema\", \"remove note from schema\", or \"configure gates\"." argument-hint: "[optional: action + schema name, e.g. 'view bug-fix', 'create research-spike', 'validate']" --- # Manage Schemas — Note Schema Lifecycle Create, view, edit, delete, and validate note schemas in `.taskorchestrator/config.yaml`. Schemas define which notes agents must fill at each workflow phase before advancing items. --- ## Step 1 — Determine Intent Classify from `$ARGUMENTS` and conversation context before making any tool calls. | Signal words | Action | |---|---| | "create", "build", "new", "add schema", "define", "set up" | CREATE | | "show", "view", "list", "what schemas", "display" | VIEW | | "edit", "modify", "change", "update", "add note to", "remove note from" | EDIT | | "delete", "remove schema", "drop" | DELETE | | "validate", "check", "verify", "lint" | VALIDATE | If `$ARGUMENTS` contains both an action and a schema name (e.g., "view bug-fix"), extract both. If intent cannot be determined, ask via `AskUserQuestion` with options: Create, View / Validate, Edit, Delete. > Validate is grouped with View — both are read-only operations on the config file. --- ## Step 2 — Config Bootstrap Check if `.taskorchestrator/config.yaml` exists by reading it. **If the file does not exist:** - For **VIEW** or **VALIDATE**: report "No schemas configured — `.taskorchestrator/config.yaml` does not exist." and stop. - For **CREATE**, **EDIT**, or **DELETE**: create the `.taskorchestrator/` directory if missing, then create `config.yaml` with an empty `work_item_schemas:` key: ```yaml work_item_schemas: ``` **If the file exists:** Read and parse it. Proceed to Step 3. --- ## Step 3 — Route to Operation ### CREATE — Build a New Schema Interactive Q&A flow that gathers schema requirements, generates YAML, merges into config, and optionally creates a companion lifecycle skill. For detailed workflow, see `references/create-workflow.md` in this skill folder. ### VIEW — Display Existing Schemas Read `.taskorchestrator/config.yaml` and display schemas in a summary table: ``` ◆ Note Schemas — .taskorchestrator/config.yaml | Schema Type | Lifecycle | Queue Notes | Work Notes | Review Notes | Total | |---|---|---|---|---|---| | feature-implementation | auto | 1 (1 req) | 2 (2 req) | 1 (1 req) | 4 | | bug-fix | auto | 1 (1 req) | 2 (2 req) | 1 (1 req) | 4 | ``` If the user specified a schema name, show that schema's full detail: each note with key, role, required, description, guidance, and skill (if set). Also show the schema's lifecycle mode and default_traits (if any). If the config has a `traits:` section, show a separate traits summary table: ``` ◆ Traits | Trait | Notes | Skills | |---|---|---| | needs-security-review | security-assessment (review, req) | security-review | | needs-migration-review | migration-assessment (queue, req) | migration-review | ``` ### EDIT — Modify an Existing Schema Read current config, display the target schema, ask what to change (add note, remove note, toggle required, change description/guidance/skill, change lifecycle mode, add/remove default_traits, rename key), apply changes, write back. When adding or editing a note, offer the `skill` field: "Should this note have a skill framework? If so, provide the skill name (e.g., `review-quality`). The skill will be invoked before the agent fills the note." If the target schema is not found in config.yaml, inform the user and offer to CREATE instead. For detailed workflow, see `references/edit-workflow.md` in this skill folder. ### DELETE — Remove a Schema Read current config, confirm the schema name, warn about orphaned notes on existing items, remove the key, write back. If the target schema is not found in config.yaml, inform the user and offer to CREATE instead. For detailed workflow, see `references/delete-workflow.md` in this skill folder. ### VALIDATE — Check Config Integrity Run structural and semantic checks on the config file and report issues with fix suggestions. For detailed workflow, see `references/validate-workflow.md` in this skill folder. --- ## Step 4 — Report **For write operations (CREATE, EDIT, DELETE):** - Show what changed in the config file - Remind: **MCP reconnect required** (`/mcp`) for schema changes to take effect — the server caches schemas on first access **For VIEW and VALIDATE:** The output from Step 3 is the deliverable — no additional report needed. --- ## Troubleshooting **`expectedNotes` is empty after creating an item with the schema tag** - Cause: MCP server hasn't loaded the updated config file - Solution: Run `/mcp` in Claude Code to reconnect the server, then retry **Schema not applied — item has no schema** - Cause: The item's `type` field doesn't match any key in `work_item_schemas`, and its tags don't match any `note_schemas` key (legacy fallback) - Resolution order: `type` field → direct lookup in `work_item_schemas`; if no type or no match, first tag match in `note_schemas`; if no match, falls back to `default` schema if one exists - Solution: Verify the item's type and tags with `query_items(operation="get", id="<uuid>")`. Set `type` to a key that exists in `work_item_schemas` for reliable schema selection. **Duplicate schema key in config file** - Cause: YAML allows duplicate keys but only the last one is used - Solution: Check for duplicate entries under `work_item_schemas:` (or `note_schemas:`) and merge them **Changes not taking effect after editing config** - Cause: The server caches schemas on first access — changes are not hot-reloaded - Solution: Run `/mcp` to reconnect the MCP server subprocess --- ## Examples **Example 1: View all schemas** User says: "What schemas do I have?" 1. Read `.taskorchestrator/config.yaml` 2. Display summary table with note counts per phase 3. Offer to show detail for any specific schema **Example 2: Add a required note to an existing schema** User says: "Add a test-plan note to the bug-fix schema" 1. Read config, find `bug-fix` schema 2. Ask: which phase (queue/work/review), required?, description, guidance 3. Append the new note entry, write config back 4. Remind: `/mcp` reconnect needed **Example 3: Validate config after manual editing** User says: "I edited the config by hand — check it" 1. Read and parse config 2. Run validation checks (syntax, structure, field rules, duplicates) 3. Report issues or confirm "Config is valid — N schemas, M total notes"
More from jpicklyk/task-orchestrator
- batch-completeComplete or cancel multiple items at once — close out features, clean up old work, archive completed workstreams. Use when a user says "close out this feature", "complete everything under X", "cancel this workstream", "clean up old items", "bulk complete", "finish this feature", or "archive completed work".
- create-itemCreate an MCP work item from conversation context. Scans existing containers to anchor the item in the right place (Bugs, Features, Tech Debt, Observations, etc.), infers type and priority, creates single items or work trees, and pre-fills required notes. Use this whenever the conversation surfaces a bug, feature idea, tech debt item, or observation worth tracking persistently. Also use when user says "track this", "log this bug", "create a task for", or "add this to the backlog".
- dependency-managerVisualize, create, and diagnose dependencies between MCP work items. Use when a user says "what blocks this", "add a dependency", "show dependency graph", "why can't this start", "link these items", "unblock this", "remove dependency", or "show blockers".
- post-plan-workflowInternal workflow for post-plan materialization — creates MCP items from the approved plan and dispatches implementation. Triggered automatically after plan approval when MCP tracking is active.
- pre-plan-workflowInternal workflow for plan mode — checks MCP for existing work, note schemas, and gate requirements to set the definition floor before planning begins. Triggered automatically when entering plan mode for any non-trivial implementation task.
- quick-startInteractive onboarding for the MCP Task Orchestrator. Detects empty or populated workspaces and walks through how plan mode, persistent tracking, and the MCP work together. Use when a user says "get started", "how do I use this", "quick start", "first time setup", "onboard me", "what can this MCP do", or "help me learn task orchestrator".
- review-qualityReview quality framework for the work-to-review transition gate. Guides verification of plan alignment, test quality, and code simplification before marking implementation complete. Referenced by schema guidance fields during review-phase note filling. Read this skill when filling review-checklist notes or when asked to review completed implementation work.
- schema-workflow>
- session-retrospectiveAnalyze the current implementation run — evaluate schema effectiveness, delegation alignment, note quality, plan-to-execution fit. Captures cross-session trends and proposes improvements when patterns repeat. Use after implementation runs, or when user says 'retrospective', 'session review', 'what did we learn', 'analyze this run', 'how did that go', 'evaluate our process', 'wrap up', 'end of session review'. Also use when the output style's retrospective nudge fires after complete_tree.
- spec-qualitySpecification quality framework for planning. Defines the minimum bar for what a plan must address — alternatives, non-goals, blast radius, risk flags, and test strategy. Referenced by schema guidance fields during queue-phase note filling. Read this skill whenever filling requirements or design notes for any MCP work item.