{"id":"customise-workflow","name":"customise-workflow","summary":"prd-taskmasterプラグインのワークフローを、厳選したブレインストーミング質問でカスタマイズしましょう。","body":"# customise-workflow\n\nAI-driven workflow customisation for the `prd-taskmaster` plugin.\nReplaces manual JSON editing. Part of the plugin's companion-skills family.\n\n**Script**: `skills/customise-workflow/script.py` (all commands output JSON)\n**Plugin config root**: `.atlas-ai/` (per-project, lives alongside TaskMaster's\n`.taskmaster/`)\n\n## When to Use\n\nActivate when the user says: \"customise workflow\", \"customize workflow\",\n\"adjust PRD settings\", \"tune the skill\", \"change my defaults\", or\n\"personalise prd-taskmaster\".\n\nSkip: generating a new PRD (use `/prd:go`), executing tasks (use\nHANDOFF modes), or running research expansion (use `/expand-tasks`).\n\n## The One Rule\n\n**The AI asks the questions and writes the config. The user never manually\nedits JSON. The config file is the output, not the input.** If the user wants\ntweaks beyond the curated questions, point them at `.atlas-ai/customizations/`\n(see \"Customizations directory\" below) — do not hand them raw JSON.\n\n## Flow\n\n```\nLOAD → ASK → VALIDATE → WRITE → VERIFY\n```\n\n### Phase 1: LOAD current config\n\nRun the script to load existing preferences (or defaults if first run):\n\n```bash\npython3 skills/customise-workflow/script.py load-config\n```\n\nReturns JSON with current preferences across 6 categories: provider,\nvalidation, execution, template, autonomous, gates. Writes to\n`.atlas-ai/config/atlas.json` if missing, seeding defaults.\n\n### Phase 2: ASK curated questions\n\nRead `questions/curated-questions.md` and ask each one via `AskUserQuestion`.\nThe questions are curated so plain-English answers map cleanly to config keys.\nExample:\n\n```\nQ1: Which AI provider do you prefer for task generation?\n  Options: Gemini (free, token-efficient), Claude Code (free, Max only),\n           OpenAI GPT-4, Anthropic Direct API, OpenRouter, Ollama (local)\n\nQ2: How strict should PRD validation be?\n  Options: Strict (block on NEEDS_WORK), Normal (warn but allow GOOD+),\n           Lenient (accept ACCEPTABLE+)\n\nQ3: Which execution mode should prd-taskmaster default to?\n  Options: A (Plan Mode), B (Ralph loop), C (Atlas Fleet), ...\n\n...\n```\n\nDo NOT ask all questions at once. Ask one curated question at a time and\nadapt follow-ups based on answers. (Same pattern as\n`superpowers:brainstorming`.)\n\n### Phase 3: VALIDATE answers\n\nRun the script with each user answer as it arrives. The script validates the\nanswer against allowed values and returns either `ok: true` or a hint about\nwhat's wrong.\n\n```bash\npython3 skills/customise-workflow/script.py validate-answer \\\n  --key provider_main --value gemini-cli\n```\n\nIf validation fails, re-ask the question with the hint. Never write an invalid\nvalue.\n\n### Phase 4: WRITE config\n\nAfter all curated questions are answered, commit the config:\n\n```bash\npython3 skills/customise-workflow/script.py write-config --input /tmp/answers.json\n```\n\nThis writes to `.atlas-ai/config/atlas.json` in the current project.\nIdempotent — re-running customise-workflow reads and updates the existing\nfile. The script creates the `.atlas-ai/config/` directory if missing.\n\n### Phase 5: VERIFY\n\nShow the user their final config and confirm it matches their intent:\n\n```bash\npython3 skills/customise-workflow/script.py show-config\n```\n\nIf the user says \"that's not what I meant\" for any key, re-enter Phase 2 for\njust that key, re-validate, and re-write.\n\n## Script Commands Reference\n\n| Command | Purpose |\n|---|---|\n| `load-config` | Load current `.atlas-ai/config/atlas.json` (or defaults) |\n| `list-questions` | Return the curated question set as JSON |\n| `validate-answer --key K --value V` | Validate a single answer |\n| `write-config --input <file>` | Write validated answers to `.atlas-ai/config/atlas.json` |\n| `show-config` | Display current config |\n| `reset-config` | Delete `.atlas-ai/config/atlas.json` (back to defaults) |\n\n## Config Schema\n\n`.atlas-ai/config/atlas.json` has 7 top-level keys:\n\n```json\n{\n  \"token_economy\": \"conservative|balanced|performance\",\n  \"provider\": {\n    \"main\": \"gemini-cli|claude-code|anthropic|openai|openrouter|ollama|...\",\n    \"model_main\": \"gemini-3-pro-preview|sonnet|gpt-4o|...\",\n    \"research\": \"gemini-cli|perplexity|...\",\n    \"model_research\": \"sonar-pro|gemini-3-pro-preview|...\",\n    \"fallback\": \"gemini-cli|claude-code|...\",\n    \"model_fallback\": \"gemini-3-flash-preview|haiku|...\"\n  },\n  \"validation\": {\n    \"strictness\": \"strict|normal|lenient\",\n    \"ai_review_default\": true,\n    \"min_passing_grade\": \"EXCELLENT|GOOD|ACCEPTABLE|NEEDS_WORK\"\n  },\n  \"execution\": {\n    \"preferred_mode\": \"A|B|C|D|E|F|G|H|I|J\",\n    \"auto_handoff\": true,\n    \"external_tool\": \"cursor|codex-cli|gemini-cli|...\"\n  },\n  \"template\": {\n    \"default\": \"comprehensive|minimal\",\n    \"custom_template_path\": null\n  },\n  \"autonomous\": {\n    \"allow_self_brainstorm\": true,\n    \"ralph_loop_auto_approve\": true\n  },\n  \"gates\": {\n    \"skip_phase_0_if_validated\": false,\n    \"skip_user_approval_in_discovery\": false,\n    \"require_research_expansion\": true\n  }\n}\n```\n\nPhase files (`skills/setup`, `skills/discover`, `skills/generate`,\n`skills/handoff`, `skills/execute-task`) read this config at runtime and apply\nuser preferences before falling back to documented defaults.\n\n`token_economy` here is honored by the engine itself: `load_fleet_config` reads it\nfrom this file when `.atlas-ai/fleet.json` does not set one (fleet.json wins if it\ndoes), so the economy you pick via this skill actually drives model-tier routing.\n\n## Customizations directory\n\nFor tweaks that go beyond the curated questions — custom template overrides,\nprovider-model mapping tables, gate hooks, per-phase overrides — users can\ndrop files into `.atlas-ai/customizations/`. This is the escape hatch for\npower users. The curated questions cover the 80% case; the customization\ndirectory covers everything else.\n\nExpected layout:\n\n```\n.atlas-ai/\n  config/\n    atlas.json              # written by this skill\n  customizations/           # user-editable, never overwritten by this skill\n    templates/              # custom PRD templates\n    prompts/                # provider prompt overrides\n    gates/                  # custom gate predicates\n    README.md               # user-authored notes\n```\n\nRules:\n\n1. This skill NEVER writes into `.atlas-ai/customizations/` — that's user\n   territory.\n2. Phase skills read `.atlas-ai/customizations/` as a fallback *after* the\n   curated `atlas.json` but *before* documented defaults.\n3. When a user asks for a setting not covered by curated questions, the AI\n   proposes a customization file shape, the user edits, and the AI verifies\n   the file parses.\n\n## Critical Rules\n\n1. Never ask the user to edit JSON directly — the skill asks curated questions\n   and writes the file.\n2. Questions are curated and AI-adapted, not a fixed form — adapt follow-ups\n   to earlier answers.\n3. Every answer is validated before being written (`validate-answer`).\n4. Config is idempotent — re-running updates cleanly.\n5. Config is per-project (lives in `.atlas-ai/config/`), not global.\n6. Customization files live in `.atlas-ai/customizations/` and are\n   user-authored — this skill never overwrites them.\n7. Phase skills must GRACEFULLY FALL BACK to documented defaults when config\n   keys are missing.","author":"@anombyte93","ownerProfile":null,"authorContacts":null,"sourceUrl":"https://github.com/anombyte93/prd-taskmaster/tree/main/skills/customise-workflow","license":"MIT","category":"writing","lang":"en","tokens":1798,"stars":0,"calls30d":2,"claimed":false,"visibility":"public","origin":"crawler","version":"0.1.0","createdAt":"2026-08-22","updatedAt":"2026-08-22","files":[],"requires":{"mcp":[],"tools":["Read","Write","Edit","Bash","AskUserQuestion","ToolSearch","mcp__atlas-engine","mcp__plugin_prd_go","mcp__plugin_prd-taskmaster_go","mcp__plugin_atlas-go_go"]},"safety":{"flags":[],"scannedAt":"2026-08-22","hasScripts":false,"networkEndpoints":[]}}